J'utilise BULK INSERT pour charger un fichier texte dans SQL Server créé à partir d'une base de données SQL Anywhere. Le fichier texte que nous recevons contient des champs contenant des caractères de tabulation. Ils sont dans le fichier texte échappé comme "\ x09". Puis-je obtenir SQL Server pour reconnaître cette séquence d'échappement?BULK INSERT fichier délimité par des tabulations - unescape x09
Certaines lignes possèdent suffisamment de ces séquences d'échappement pour provoquer une erreur de troncature lorsque j'effectue le BULK INSERT. Je préférerais que SQL Server les rétablisse dans les caractères de tabulation.
Mise à jour (7/26): voici par exemple les données du fichier
ID Name Desc
1 Value 1 Some text:\x09with tabs
2 Value 2 More Text:\x09with more\x09tabs
Ainsi, dans cet exemple, il faut 31 caractères pour exprimer la valeur pour le champ Desc pour l'enregistrement avec ID 2. Cependant, il devrait être inséré dans la base de données de 25 caractères.
Pouvez-vous préciser si vous voulez que l'insertion en bloc pour diviser en colonnes par onglet, ou si vous voulez qu'il soit une longue colonne avec des onglets à l'intérieur. –
La séquence d'échappement (\ x09) doit être insérée dans une seule colonne db en tant que caractère de tabulation. J'ai mis à jour la question avec des données de fichier d'exemple – Dingels35