J'ai un fichier délimité par des tabulations que j'essaie d'importer dans SQL Server 2012; la terminaison de ligne est CRLF. Voici ma déclaration BCP dans PowerShell:Comment transmettre des caractères non imprimables aux paramètres de terminaison de ligne/champ de BCP?
bcp database.dbo.table IN C:\filePath.tsv -SserverName -UuserName -Ppassword -c -t\t -r\n
Ce qui fait état d'un
erreurinattendue EOF a rencontré
.
Je ne peux pas pour la vie de moi comprendre pourquoi cela ne fonctionne pas. Un oeil supplémentaire serait génial.
EDIT: Après examen, je pense que le problème est avec -r \ n ... Quel est le métacaractère pour CRLF?
Wow! Cela fonctionne beaucoup plus vite maintenant qu'avant. Va certainement référencer l'ASCII à partir de maintenant. Je ne sais pas si c'est hors sujet, mais, comment puis-je gérer les onglets voyous (certaines colonnes ont 1,2,3 onglets entre eux)? –
@JeffOrris Vous ne pouvez pas. Vous devriez choisir un terminateur de champ différent. Nous utilisons le caractère séparateur d'unité '0x1f'. Nous n'avons jamais rencontré de données contenant ce caractère. –
J'ai donc décidé d'écrire mes onglets sur les séparateurs d'unités. J'ai fait mes importations 10 fois plus vite ... Im BCPing 10,000 enregistrements/sec à peu près. –