OVH Cloud OVH Cloud

OPENQUERY avec des données d'un fichier CSV

1 réponse
Avatar
Win2000
Bonjour tout le monde,
j'ai un sérieux problème avec la syntaxe de OPENQUERY pour récupérer des
données d'un fichier CSV, au fait quand j'exécute la requête suivante :
select * FROM OPENQUERY(TEST, 'SELECT [Code client] FROM
SGB_SHIPTO_20050509#csv')
j'ai comme résultat des code de ce style : 38, 26, 25, 103
alors que si j'aouvre mon fichier csv j'ai normalement : 0038, 00026, 00103
mon problème c que les zéros sont tronqués

si vous pouvez m'aider svp
Merci

1 réponse

Avatar
Michel PRIORI
Le mécanisme d'ouverture d'une source non structurée impose une "découverte"
du type de donnée.
Quand le moteur voit qqchose comme 001 il le transforme en numérique et donc
les zéros non significatifs sont supprimés.
Je ne sais pas comme forcer la lecture de la colonne en texte (char, varchar
...).

Par contre un truc comme :
Select
replicate('0', 5-len([Code client]) + [Code client] codeclt
FROM OPENQUERY(TEST, 'SELECT [Code client]
FROM B_SHIPTO_20050509#csv')

à vérifeir tout de même !!!

"Win2000" a écrit :

Bonjour tout le monde,
j'ai un sérieux problème avec la syntaxe de OPENQUERY pour récupérer des
données d'un fichier CSV, au fait quand j'exécute la requête suivante :
select * FROM OPENQUERY(TEST, 'SELECT [Code client] FROM
SGB_SHIPTO_20050509#csv')
j'ai comme résultat des code de ce style : 38, 26, 25, 103
alors que si j'aouvre mon fichier csv j'ai normalement : 0038, 00026, 00103
mon problème c que les zéros sont tronqués

si vous pouvez m'aider svp
Merci