Bonjour,
Voila je suis novice dans l'utilisation de Windows Server et de SQL Server, mon objectif est d'importer automatiquement et régulièrement des données présentes dans un fichier CSV dans une table.
J'ai réussi à automatiser et à importer des données à l'intérieur d'une table à l'aide d'un fichier SQL éxécuté en ligne de commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part sqlcmd -U utilisateur - P password -S nomDuServeur -d nomBDD -i import.sqlLe script permet l'importation de données via un fichier CSV, mon problème est que ce fichier CSV est actualisé assez souvent (ex: toutes les cinq minutes), donc au lancement de la commande j'ai une erreur qui apparaît me signalant que l'insertion est impossible car certaines données (clé primaire) existe déjà.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 BULK INSERT dbo.MACHINES FROM 'c:\MACHINES.csv' WITH ( FIELDTERMINATOR = ';', ROWTERMINATOR = '\n', FIRSTROW=2 );
Après quelques recherches à mon problème, j'ai pu voir que l'utilisation de Transaction pourrait être une solution, mais je ne comprend pas comment utiliser cette méthode car celle-ci devrait vider ma table puis la remplir avec le fichier CSV.
Pouvez-vous m'aider pour ce genre de méthode ou avec d'autres méthodes ?
Merci d'avance (en espérant avoir été le plus clair possible).
Partager