AUTO_INCREMENT 索引重复条目
AUTO_INCREMENT Indexing Duplicate Entry
我正在尝试使用 LOAD DATA 命令将数据从 csv 文件加载到 MySQL 数据库中。
我的 csv 结构如下:
索引
姓名
...
0
废话
1
blahbla
...
但是当尝试使用
读取我的数据时
CREATE TABLE data (
id INT NOT NULL AUTO_INCREMENT,
KernelName VARCHAR(255) NOT NULL,
...,
primary key (id)
);
USE myDatabase;
LOAD DATA INFILE '/filepath/myFile.csv'
INTO TABLE myTable
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
我收到错误 ERROR 1062 (23000): Duplicate entry '1' for key 'myTable.PRIMARY'
我怀疑这是因为 AUTO_INCREMENT 正在创建一个 MySQL table,其中 ID 从 1 而不是 0 开始我正在阅读。导致重复输入错误。
MySQL 的新手并且不关心索引是从 0 还是 1 开始,只是不确定最简单的修复是什么。我应该跳过索引行吗?将 auto_increment 更改为从 0?
开始
更新
我可以通过在初始 CREATE TABLE 命令中省略 AUTO_INCREMENT
来解决这个问题。然后导入数据后,我用ALTER TABLE table MODIFY id INTEGER NOT NULL AUTO_INCREMENT;
恢复自增功能
感谢在评论中对此提供帮助的所有人!
我正在尝试使用 LOAD DATA 命令将数据从 csv 文件加载到 MySQL 数据库中。
我的 csv 结构如下:
索引 | 姓名 | ... |
---|---|---|
0 | 废话 | |
1 | blahbla | |
... |
但是当尝试使用
读取我的数据时CREATE TABLE data (
id INT NOT NULL AUTO_INCREMENT,
KernelName VARCHAR(255) NOT NULL,
...,
primary key (id)
);
USE myDatabase;
LOAD DATA INFILE '/filepath/myFile.csv'
INTO TABLE myTable
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
我收到错误 ERROR 1062 (23000): Duplicate entry '1' for key 'myTable.PRIMARY'
我怀疑这是因为 AUTO_INCREMENT 正在创建一个 MySQL table,其中 ID 从 1 而不是 0 开始我正在阅读。导致重复输入错误。
MySQL 的新手并且不关心索引是从 0 还是 1 开始,只是不确定最简单的修复是什么。我应该跳过索引行吗?将 auto_increment 更改为从 0?
开始更新
我可以通过在初始 CREATE TABLE 命令中省略 AUTO_INCREMENT
来解决这个问题。然后导入数据后,我用ALTER TABLE table MODIFY id INTEGER NOT NULL AUTO_INCREMENT;
恢复自增功能
感谢在评论中对此提供帮助的所有人!