Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Outils
Outils Forum d'entraide sur les outils gravitant autour de MS-SQL Server, tels que bcp, TDS, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/09/2005, 10h04   #1
Invité de passage
 
Inscription : novembre 2004
Messages : 17
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 17
Points : 4
Points : 4
Par défaut pb bcp : export de plusieurs enregistrements

Bonjour,

Côté client : Je travaille sous SQL Server 2000 SP4 et W2000 Server. J'utilise la fonction bcp pour extraire des données d'une table dans un fichier text.

Mon problème est que je n'arrive pas exporter les données de ma table si elle a plus de 1 enregistrement. Mon fichier est vide et je n'ai pas d'erreur.


En local chez moi: Par contre quand je fais la même chose sous SQL Server 2000 SP2 et WXP, j'arrive à tout exporter.

Avez-vous une idée?

Merci de votre aide.
doudou10000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2005, 10h15   #2
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
Peut-on voir votre commande bcp ?
Essayez en mode texte (-c) plutôt qu'en ode natif (binaire)
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2005, 10h29   #3
Invité de passage
 
Inscription : novembre 2004
Messages : 17
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 17
Points : 4
Points : 4
voici ma commande:
Code :
1
2
 
bcp QUELLE..T3 out C:\tmp\CL\T3.dta -f c:\tmp\CL\T3.fmt -SMonServeur -Usa -P -oc:\tmp\CL\T3.log -ec:\tmp\CL\T3.bad
doudou10000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2005, 10h53   #4
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
et l'output de la commande ?

Je ne connais pas le format de votre fichier en entrée, mais aurait-il une quelconque chance de passer sans le fichier de format, avec l'option -c ?
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2005, 11h37   #5
Invité de passage
 
Inscription : novembre 2004
Messages : 17
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 17
Points : 4
Points : 4
je suis finalement passée par l'option -c au lieu du fichier fmt.

Mais je ne comprends toujours pas pourquoi ça fonctionne sur un poste et par sur l'autre.

Merci pour votre aide
doudou10000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2005, 14h12   #6
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
Peut-être que les jeux de caractères sont. par exemple, différents, ce qui peut faire planter un format...
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2005, 17h20   #7
Membre éprouvé
 
Avatar de m-mas
 
Inscription : février 2003
Messages : 537
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 537
Points : 479
Points : 479
je me permet d'intervenir sur ce sujet en espérant avoir des réponses : pour la commande bcp il faut dire qu'il n'y a pas trop de ressources la concernant, en plus quans c'est simple elle marche trés bien, quand cela se complique un petit peu ...

j'ai un problème avec bcp : je fais des tests, j'ai une table region :

Code :
1
2
3
4
5
6
 
ID          Description        ID2
-----------------------------------
1             Paris                 6015
2             Lyon                 456
3             Marseille            1
ma commande bcp

Code :
bcp Mabase..TRegion out C:\region.txt -n -S MonServeur -U sa -P MotDePasse
dans le fichier de sortie :
Code :
    Paris       Lyonc     	 MarseilleÁ
bref il m'affiche des carcatère spéciaux à la place des chiffres et il ne met pas un retour chariot à la fin de ligne !!
__________________
MCP VB.NET (70-305) - (70-306) - (70-310)
m-mas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2005, 08h00   #8
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
C'est sans doute à cause du -n(ative). essayez de le remplacer par -c
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2005, 10h22   #9
Membre éprouvé
 
Avatar de m-mas
 
Inscription : février 2003
Messages : 537
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 537
Points : 479
Points : 479
Citation:
Envoyé par fadace
C'est sans doute à cause du -n(ative). essayez de le remplacer par -c
oui c'est bien ça, Merci fadace !

Citation:
bcp {[[database_name.][owner].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-m max_errors] [-f format_file] [-e err_file]
[-F first_row] [-L last_row] [-b batch_size]
[-n] [-c] [-w] [-N] [-V (60 | 65 | 70)] [-6]
[-q] [-C code_page] [-t field_term] [-r row_term]
[-i input_file] [-o output_file] [-a packet_size]
[-S server_name[\instance_name]] [-U login_id] [-P password]
[-T] [-v] [-R] [-k] [-E] [-h "hint [,...n]"]
__________________
MCP VB.NET (70-305) - (70-306) - (70-310)
m-mas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2005, 11h18   #10
Membre éprouvé
 
Avatar de m-mas
 
Inscription : février 2003
Messages : 537
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 537
Points : 479
Points : 479
Je remonte enocre ce post pour une petite question (je pense qu'à la fin, on doit écrire une ou 2 pages sur l'utilisation de bcp, par ce qu'il n'y a vraiment rien sur Internet) :

Je vais lancer bcp via un programme .NET à l'aide de commande Shell.
Est ce que c'est possible de récupérer le message de fin du traitement
Citation:
Démarrage de la copie...
SQLState=22005, Native Error=0
Error=...

20 lignes copiées.
Pour déja afficher les erreurs à l'utilisateur !!
__________________
MCP VB.NET (70-305) - (70-306) - (70-310)
m-mas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/09/2005, 11h23   #11
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
Je crois que non. La seule chose qui sera retournée et l'erreur au niveau OS : 0 si tout s'est bien passé... sinon pas.
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 14h15   #12
Membre habitué
 
Luis
Inscription : avril 2006
Messages : 436
Détails du profil
Informations personnelles :
Nom : Luis

Informations forums :
Inscription : avril 2006
Messages : 436
Points : 119
Points : 119
Par défaut login et password avec mssql et BCP

Bonjour, je sais que ma question va paraitre bete...mais
avec cette suite:

bcp Mabase..TRegion out C:\region.txt -n -S MonServeur -U sa -P MotDePasse

ma base est la base de donnees en question...ok
TRegion je supose que c'est la table

donc sur mon mssql j'ai ca:
@BA_OCLG
OCLG c'est la table, mais le @BA de devant c'est quoi c'est le schema?
ca marche comme avec Oracle?

et point de vue purement syntaxe, je dois faire:
bcp MaBase "SELECT * FROM @BA.OCLG" out c:\fichier.txt -n -S server(avec l'IP?) -U sa -P password
Ca marche comme ca?
D'avance merci
Luis
ldiaz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/03/2007, 15h06   #13
Membre du Club
 
Inscription : juin 2005
Messages : 136
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 136
Points : 46
Points : 46
Par défaut [ssis]

bonjour,

J'utilise la fonction bcp pour générer un fichier FMT à partir d'une table que j'ai crée.
ensuite je veux utiliser la fonction bulk insert de ssis pour inserer un fichier txt sans delimitateur mais uniquement avec des longueur fixes.
Mon fichier FMT me génére la bonne taille pour les champs de type caractere mais pour les champs numérique il me donne 41 comme longueur de champs.

Quelqu'un serait il pourquoi?

Merci.
alpachico est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h09.


 
 
 
 
Partenaires

Hébergement Web