2013-04-18 3 views
1

J'ai certaines colonnes dans ma table de base de données Oracle qui contient ��.Comment puis-je convertir ces caractères en leur format lisible

Comment puis-je le décoder sous sa forme lisible originale. Je sais que c'est lié au codage mais j'ai besoin de trouver une solution pour cela.

Dans mon application php, je reçois ces caractères comme '?? J'utilise le développeur SQL pour afficher les enregistrements.

+0

Utilisez la fonction 'convert' pour convertir la page de codes du texte en page de codes de votre base de données. –

+0

en cours d'exécution de la requête "SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER = 'NLS_CHARACTERSET';" donne moi ceci: "NLS_CHARACTERSET", "AL32UTF8". Puis j'ai couru cette requête mais elle a donné le même résultat (pas de conversions faites): "select convert (nom_colonne, 'AL32UTF8', 'utf8') de table_name;" –

+0

Je ne sais pas quelle est la langue et la page de code de votre texte. Juste un exemple: 'convertir (nom_colonne, 'AL32UTF8', 'WE8ISO8859P1')' –

Répondre

0

Vous devez les convertir de UTF8 à votre encodage actuel. Ou vice versa.

+0

Ces caractères sont des signes de copyright, signe de la marque. Je ne peux pas les changer directement avec un simple sql regexp. Je veux qu'ils soient convertis dans leur forme lisible dans la base de données. –

Questions connexes