我正在尝试将.txt文件中的数据加载到mysql中。该表如下所示:
+-------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------------+------+-----+---------+----------------+
| user_name | varchar(10) | NO | MUL | NULL | |
| user_id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| listings | int(10) unsigned | NO | | 0 | |
| connections | int(10) unsigned | NO | | 0 | |
| flags | int(10) unsigned | NO | | 0 | |
| days | int(10) unsigned | NO | | 0 | |
| email | varchar(30) | NO | | NULL | |
| suspend | tinyint(1) | YES | | 0 | |
+-------------+------------------+------+-----+---------+----------------+
当我使用LOAD DATA LOCAL INFILE
加载数据时如何处理user_id
列?所有其他项目都已有数据。我想数据库分配user_id。这可能吗?
user_id
下的列应该在文本文件中看起来像什么?
答案 0 :(得分:2)
我使用了以下内容:
name \N 2 4 2 100 emal@mail.com o
每个条目都会自动给出正确的ID代替\ N。
如果有更好的方法,请告诉我。
答案 1 :(得分:1)
“您还可以通过将输入值分配给用户变量而不将变量分配给表格列来放弃输入值”阅读here
示例:
LOAD DATA LOCAL INFILE 'file.txt' INTO TABLE tablename (user_name, @skip, listings, connections, flags, days, email, suspend);