Update MySQL table from a local file

后端 未结 3 563
天命终不由人
天命终不由人 2020-12-31 14:28

I have a table in a database, and I\'d like to update a column which I have offline on a local file. The file itself has two columns

  1. an ID which corresponds to
3条回答
  •  自闭症患者
    2020-12-31 15:11

    I suggest you load your data into a temporary table, then use an INSERT ... SELECT ... ON DUPLICATE KEY UPDATE; for example:

    CREATE TEMPORARY TABLE temptable (
      id  INT UNSIGNED NOT NULL,
      val INT,
      PRIMARY KEY (id)
    ) ENGINE = MEMORY;
    
    LOAD DATA LOCAL INFILE '/path/to/file.txt' INTO temptable FIELDS TERMINATED BY ',';
    
    INSERT INTO my_table
    SELECT id, val FROM temptable
    ON DUPLICATE KEY UPDATE val = VALUES(val);
    
    DROP TEMPORARY TABLE temptable;
    

提交回复
热议问题