考虑以下示例,假设您有一个以';'分隔的CSV加载到数据库中。
1;max;male;manager;12-7-1985 2;jack;male;executive;21-8-1990 . . . 1000000;marta;female;accountant;15-6-1992
创建要插入的表。
CREATE TABLE `employee` ( `id` INT NOT NULL , `name` VARCHAR NOT NULL, `sex` VARCHAR NOT NULL , `designation` VARCHAR NOT NULL , `dob` VARCHAR NOT NULL );
使用以下查询将值插入该表。
LOAD DATA INFILE 'path of the file/file_name.txt' INTO TABLE employee FIELDS TERMINATED BY ';' //指定分隔值的定界符 LINES TERMINATED BY '\r\n' (id,name,sex,designation,dob)
考虑日期格式非标准的情况。
1;max;male;manager;17-Jan-1985 2;jack;male;executive;01-Feb-1992 . . . 1000000;marta;female;accountant;25-Apr-1993
在这种情况下,您可以dob在插入之前更改列的格式。
LOAD DATA INFILE 'path of the file/file_name.txt' INTO TABLE employee FIELDS TERMINATED BY ';' //指定分隔值的定界符 LINES TERMINATED BY '\r\n' (id,name,sex,designation,@dob) SET date = STR_TO_DATE(@date, '%d-%b-%Y');
LOAD DATA INFILE的此示例未指定所有可用功能。
您可以在此处查看有关LOAD DATA INFILE的更多参考。