Insertion partielle avec LOAD DATA INFILE (MySQL)

Insertion partielle avec LOAD DATA INFILE (MySQL) - SQL/NoSQL - Programmation

Marsh Posté le 13-06-2007 à 11:29:23    

Salut,
 
Je me sers de la fonction "LOAD DATA INFILE" pour effectuer une insertion d'un fichier texte dans ma base de données.
 
                        LOAD DATA INFILE 'chemin_du_fichier'  
                        INTO TABLE presta  
                        FIELDS  
                       TERMINATED BY ';'  
                        ESCAPED BY '\\'  
                        LINES STARTING BY ''  
                        TERMINATED BY '\n'  
                        (id_presta, numero, date, lib_presta, comm, lib_periode, total, fa)
 
Ce que j'aimerais, ce serait que si l'id_presta de la ligne du fichier existe déja dans la table presta, alors la ligne n'est pas insérée.  Quelqu'un aurait-il une solution ?


Message édité par groscul le 13-06-2007 à 11:30:39
Reply

Marsh Posté le 13-06-2007 à 11:29:23   

Reply

Marsh Posté le 13-06-2007 à 11:34:00    

Citation :

The REPLACE and IGNORE  keywords control handling of input rows that duplicate existing rows on unique key values:
 
    *
 
      If you specify REPLACE, input rows replace existing rows. In other words, rows that have the same value for a primary key or unique index as an existing row. See Section 13.2.6, “REPLACE Syntax”.
    *
 
      If you specify IGNORE, input rows that duplicate an existing row on a unique key value are skipped. If you do not specify either option, the behavior depends on whether the LOCAL keyword is specified. Without LOCAL, an error occurs when a duplicate key value is found, and the rest of the text file is ignored. With LOCAL, the default behavior is the same as if IGNORE is specified; this is because the server has no way to stop transmission of the file in the middle of the operation.


http://dev.mysql.com/doc/refman/5.0/en/load-data.html

Reply

Marsh Posté le 13-06-2007 à 13:46:42    

D'accord merci beaucoup.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed