cedricperes
Messages postés38Date d'inscriptionjeudi 3 mai 2007StatutMembreDernière intervention18 décembre 2008
-
16 sept. 2008 à 12:30
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014
-
4 oct. 2008 à 19:32
Bonjour
Je suis en train de développer un site web multilingue en ASP.NET C#. Je stocke mes données dans une base SQL Server. <?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
Coté application, je récupère bien mes données en arabe (pas de problèmes d’encodage et d’affichage).
Si j’insert directement dans ma base de données (pas avec une requête SQL mais en ouvrant ma table), les données en arabe sont bien enregistrées (donc la config de ma base de données accepte l’arabe).
Par contre, quand j’insère mes données avec une requête SQL, mon texte en arabe est remplacé par des points d’interrogation.
exemple :
UPDATE
maTable SET MaColonne ='
ÇáãÒíÏ ãä ÇáãÚáæãÇÊ¡ íÑÌì
'
WHERE …
è
j’obtiens dans ma table : ?????? ?? ?????????? ????
Au niveau de mon application, j’utilise l’encodage utf-8 (
<
meta
cedricperes
Messages postés38Date d'inscriptionjeudi 3 mai 2007StatutMembreDernière intervention18 décembre 2008 29 sept. 2008 à 15:35
Bonjour
J'ai eu la solution a ce probleme qui vient en fait de mes requetes sql. Mon application et la base de données étaient bien configurées.
Il faut uniquement "forcer" la base de données a enregistrer les données en unicode. Cela se traduit dans la requete sql en mettant un N devant la valeur a insérer dans la table.
exemple : INSERT INTO 'MaTable' (data1,data2,....) VALUES (N'Val1', N'Val2', ... )
et de meme dans une requete UPDATE : UPDATE 'MaTable' SET data1=N'Val1'...