将 CSV 文件中的数据导入到 MySQL 表时,可能需要跳过 CSV 文件的第一行(通常包含列标题),并让 MySQL 自动生成主键列的值。
跳过第一行
要在导入过程中跳过 CSV 文件的第一行,请在 LOAD DATA 语句中使用 IGNORE 关键字:
LOAD DATA INFILE 'path/to/file.csv' INTO TABLE your_table IGNORE 1 LINES FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
自动递增主键
If您的表的主键列设置为自动增量,您可以将其保留在 CSV 文件之外,MySQL 将在导入过程中自动为其生成值。为此,请在 SET 子句中为主键列指定 NULL:
LOAD DATA INFILE 'path/to/file.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' SET>
示例
考虑问题中提供的 CSV 文件,该文件缺失第一行(列标题)和 id 列。要将这些数据导入到名为advertisement的MySQL表中,该表具有名为id的自动递增主键列,请使用以下SQL语句:
LOAD DATA INFILE 'path/to/file.csv' INTO TABLE advertisement FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' IGNORE 1 LINES SET>
以上是如何将CSV数据导入MySQL,跳过第一行并自动递增主键?的详细内容。更多信息请关注PHP中文网其他相关文章!