Bonjour,

Il y a quelques temps j'avais réussi en java à générer un script SQL avec encoding Unicode et à faire éxecuter ce dernier par osql.exe, tous les caractères spéciaux étant correctement insérés
(voir http://www.developpez.net/forums/sho...d.php?t=124417).

Problème aujourd'hui : je veux faire la même chose avec bcp.exe !
Je gère donc au niveau java la génération des fichiers .dat avec un encoding Unicode, puis j'execute une commande du style :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
BCP bd..table in DATA\table.dat -fFORMAT\table.fmt -Sserver -Uuser -Ppass -r "*|*"
J'ai essayé de jouer avec les options N n ou w, de modifier le datatype dans le fichier .fmt, mais à chaque fois :

- Soit j'ai l'une de ces deux erreurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Error = [Microsoft][ODBC SQL Server Driver]String data, right truncation
Error = [Microsoft][ODBC SQL Server Driver]Unexpected EOF encountered in BCP data-file
- Soit la commande s'éxecute correctement, mais les caractères sont mal insérés :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
äæéîöœüñçßÐýÞÁªÏÀÂÄÃÅÇÉÈ
devient
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SµTe÷£n±t¯-²¦-¬-+--++¦++


Merci d'avance pour toute réponse !

Jahz