|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 8 ![]() |
Bonjour,
Peut-être qq a déjà rencontré ce problème de conversion, du coup je me permet de soliciter votre aide. J'ai un fichier texte en entrée que je souhaite importer en BDD via un package DTSX. Ma Source (Flat File) Col5 (DT_STR) Col6(DT_STR) 00000001220.000; 00000000792.04 00000001200.000; 00000000094.77 00000002500.000; 00000002381.48 Le composant de conversion me retourne une erreur DT_STR to DT_R8 Le composant colonne derrivé me retourne une erreur (DT_R8) Col5 Ma solution de contournement est de faire une importation dans une table temporaire avec un type nvarchar puis d'effectuer un cast "select CAST([Col5] as float) from Temp_Table puis d'effectuer un insert dans ma table de destination. Cette solution fonctionne mais j'ai plus de 200 fichier à importe en base avec des types identiques donc la création de table temporaire ou bien de curseur n'est pas viable pour des soucis de performances et de maintenance. Si vous avez des idées ou des solutions à proposer, je suis preneur. Merci de m'éclairer si vous avez une idée. C'est quand même incroyable qu'on ne puisse pas faire une conversion de type string vers du float en dtsx ? Ou bien ai je zapper une étapes dans mon dataflow ? |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 725 ![]() |
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 8 ![]() |
Citation:
|
|
|
|
00
|
|
|
#4 |
![]() ![]() Alexandre ChemlaConsultant en Business Intelligence Inscription : février 2006 Messages : 1 773 ![]() |
Quelle est exacatement l'erreur lorsque vous utiliser le composant de conversion ?
Je viens de faire un test et j'ai bien une erreur lorsque ma décimale est avec un ".", par contre ça fonctionne avec une "," à voir donc du côté des infos régionales. Sinon un petit REPLACE pas beau.
__________________
Alexandre Chemla - Consultant MS BI chez Masao |
|
|
00
|
|
|
#5 |
![]() ![]() ![]() David BARBARINExpert SQL Server Inscription : août 2005 Messages : 3 725 ![]() |
Yep,
Je pencherai également pour un problème de séparateur. ++ |
|
00
|
|
|
#6 | |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 8 ![]() |
Citation:
Oui effectivement le "." et "," peuvent fonctionner avec un replace pas beau mais le hic c'est que je ne peux pas généraliser l'import sur tous mes fichiers étant donné que mon séparateur change. Je regrette simplement que le DTSX ne sois pas aussi souple que le DTS a la mode 2000. Merci pour vos responses. |
|
|
|
00
|
|
|
#7 |
![]() ![]() Administrateur de base de données Inscription : août 2007 Messages : 1 159 ![]() |
Comment avez vous configure votre composant de conversion ?
Avez vous essaye avec un composant de colonne derivee et une expression comme ceci ? |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : novembre 2011 Messages : 8 ![]() |
Sujet clot,
Cela vient bien des paramètres régionnaux et linguistiques côté server simplement pour les décimal lui indiquer "." au lieux de la "," SQL SERVER 2008 R2 n'acceptera pas la conversion alors que SQL SERVER 2000 s'en contre balance. Encore une incomprehension de plus chez microsoft. Merci a tous pour votre réactivité. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com