2015-11-10 1 views
1

Exporter des données d'une procédure SQL vers un fichier plat. Mon problème est J'ai une colonne appelée Test avec des données 1e2, 1e1, 1e3 ...... Lorsque j'exporte vers un fichier plat, les données de cette colonne ressemble à 1.00E+02,1.00E+01,1.00E+03...... . Que dois-je faire pour obtenir des données exactes dans un fichier plat à partir de proc SQL. Toute aide est la bienvenue, merci.SSIS Fichier à plat Destination Exporter des données problème

+0

Comment obtenez-vous les données via une source OLE DB qui appelle une procédure stockée? Et quel est le type de colonne de la source? –

+0

Oui, j'obtiens les données via une source OLE DB qui appelle un proc stocké. Le type de colonne est varchar (10) – user28455

+0

Voulez-vous les données comme '1e2, 1e1, 1e3, etc.'? Ou les valeurs réelles comme '100, 10, 1000'? –

Répondre

1

Assurez-vous que la colonne de votre Flat File Connection Manager a DataType de string [DT_STR]. Cela évitera la conversion implicite effectuée sur votre colonne par SSIS. Voir l'image ci-dessous:

Setting flat file connection manager

+0

Colonne a déjà le type de données de la chaîne [DT_STR]. Mais le problème existe toujours. – user28455

+0

@ user28455 activer la visionneuse de données entre la «source OLE DB» et la «destination de fichier plat», les valeurs sont toujours «1e2, 1e3, etc.» ou ont-elles été converties avant d'atteindre la destination? –

+0

Ils sont toujours 1e2,1e3, etc. Ils n'ont pas converti avant d'atteindre la destination. – user28455

1

Ceci a résolu mon problème,

créé un modèle Excel avec une colonne de test sous forme de texte.

Dans SSIS, création de sources OLEDB, de conversion de données et de destination Excel. Lors de la conversion de données, j'ai converti la colonne de test en chaîne Unicode DT_WSTR. J'ai exécuté le package et il a rempli les données dans le modèle que j'ai créé avec 1e1,1e2 ... dans la colonne Test.