-
Virgule dans Float
Bonjour,
actuellement, j'essaie avec bulk insert d'insérer les valeurs de fichiers csv qui me sont fournis. Le problème est que certaines valeurs Float ou Double sont générés en français avec la virgule à la place du point (exemple 15,6 au lieu de 15.6). Résultat, cela ne marche pas.
Je ne trouve pas le moyen d'importer ces valeurs dans un champ FLOAT à cause de cela. Comment faire pour changer cela sachant que je dois automatiser ce changement à chaque fois.
Si vous aviez une idée, j'en serai heureux.
merci
-
On insère jamais directement des données non typées dans une table SQL avec des colonnes qui sont typées.
- Soit il vous faut utiliser un ETL comme SSIS et faire des transformations à la volée ligne à ligne
- soit il vous faut importer dans une table temporaire déstructurée (toutes les colonnes en varchar) puis modifier et faire un insert final.
Le plus rapide étant généralement la 2e solution.
A +
-
Merci pour la réponse.
Ne pouvant pas employé la 1ére méthode, j'avais déjà essayé quelque chose de proche de la deuxième méthode.
Lorsque vous dite de modifier, est-ce qu'il s'agit de juste changer le type de la colonne avec un alter? car cela ne marche pas pour moi. Je ne connais pas grand chose à SQL Server alors les DTS ou SSIS, je crains d'avoir du mal.
-
je fais en c++ un replace
je créé un tableau et j'emploie la commande suivant en c++
replace(tab[i].begin(), tab[i].end(), ',', '.');