IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Exporter en UTF-8 (et non pas UTF-16) avec la commande BCP


Sujet :

Développement SQL Server

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 15
    Points
    15
    Par défaut Exporter en UTF-8 (et non pas UTF-16) avec la commande BCP
    Bonjour,
    Je fais un export de résultats SQL sous la forme d'un fichier texte à l'aide la commande BCP avec le paramètre -w qui fait une copie en bloc en utilisant les caractères Unicode mais UTF-16. Or je souhaiterais avoir un export en UTF-8.
    Auriez-vous une idée pour faire cela s'il vous plaît ?
    Je vous montre la commande que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bcp '+@MA_REQUETE+' queryout "CHEMIN/FICHER_DE_SORTIE.txt" -w -T
    Merci d'avance.

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Je crois que depuis SQL Server 2000 il n'est plus possible de stocker de l'UTF-8.
    Laissez vous le confirmer, mais si c'est le cas vous devrez faire un applicatif qui effectuera cette conversion

    @++

  3. #3
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Avec le paramètre -c -C65001 ca devrait fonctionner. J'ai eu à faire à ce problème il y a quelques temps....

    ++

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 15
    Points
    15
    Par défaut -c -C65001 pour OUT mais pas pour QUERYOUT ?
    Citation Envoyé par mikedavem Voir le message
    Avec le paramètre -c -C65001 ca devrait fonctionner. J'ai eu à faire à ce problème il y a quelques temps....
    ++
    Merci mikedavem, je viens de tester tes paramètres avec la commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bcp '+@MA_REQUETE+' queryout "CHEMIN/FICHER_DE_SORTIE.txt" -c -C65001 -T
    mais j'ai alors le message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    NULL
    Démarrage de la copie...
    SQLState = S1000, NativeError = 0
    Error = [Microsoft][ODBC SQL Server Driver][SQL Server]Page de code 65001 non prise en charge par SQL Server
    SQLState = S1000, NativeError = 0
    Error = [Microsoft][ODBC SQL Server Driver]Impossible de résoudre les classements de niveaux de colonne
    NULL
    Échec de la copie BCP out
    NULL
    J'ai l'impression que ces paramètres ne fonctionnent pas avec QUERYOUT mais avec OUT ; or je souhaite exporter les résultats d'une requête de sélection sur plusieurs tables.
    Une idée ?

  5. #5
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Après une petite recherche, effectivement elsuket a raison. A partir de sqlserver2000 plus possible stocker l'UTF-8. Le message d'erreur vous le dit bien d'ailleurs.

    Cependant un ptit lien qui pourra surement vous aider

  6. #6
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 27
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Après une petite recherche, effectivement elsuket a raison. A partir de sqlserver2000 plus possible stocker l'UTF-8. Le message d'erreur vous le dit bien d'ailleurs.

    Cependant un ptit lien qui pourra surement vous aider
    Merci pour le lien qui semble correspondre à mon problème mais il y a quelques soucis :
    - le problème avancé par le lien semble porter sur le stockage en UTF-8 dans la base de données (alors que je veux stocker sur un fichier) ET pour faire du web
    - et puis j'avoue ne pas avoir assez de connaissances techniques pour comprendre les manipulations à faire.

    Je suis donc bien embêté. Je vais voir s'il ne serait pas possible de faire une conversion à l'aide d'un fichier BATCH, mais d'après les recherches que j'ai déjà faites, cela ne semble pas possible (ou trop compliqué).

    Merci à vous deux en tout cas :-)

Discussions similaires

  1. Encodage UTF-8 ne fonctionne pas
    Par yodark dans le forum Langage
    Réponses: 4
    Dernier message: 16/03/2011, 16h43
  2. [VBA] Export en TXT en ISO et non en UTF-8
    Par BipBipBO dans le forum SDK
    Réponses: 3
    Dernier message: 01/10/2010, 09h45
  3. ' en utf-8 ne passe pas sous IE ?
    Par SpaceFrog dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 10/09/2009, 12h15
  4. Souci d'encodage UTF-8 (config non prise en compte)
    Par Assimil dans le forum Zend Studio
    Réponses: 6
    Dernier message: 03/07/2007, 12h38
  5. [SQL] exporter non pas en CSV mais en .TXT (INSERT INTO.)
    Par guillaumeIOB dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 22/01/2007, 20h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo