1

我正在尝试将 .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文本文件中的列应该是什么样的?

4

2 回答 2

2

我使用了以下内容:

name   \N    2    4    2    100    emal@mail.com    o

每个条目都被自动赋予了正确的 id 来代替 \N。

如果有更好的方法,请告诉我。

于 2013-03-05T22:23:58.800 回答
1

“您还可以通过将输入值分配给用户变量而不将变量分配给表列来丢弃输入值”阅读此处

例子:

LOAD DATA LOCAL INFILE 'file.txt' INTO TABLE tablename (user_name, @skip, listings, connections, flags, days, email, suspend);
于 2013-03-05T22:44:55.463 回答