gpt4 book ai didi

mysql - 加载数据本地 Infile 问题

转载 作者:行者123 更新时间:2023-11-29 14:10:18 25 4
gpt4 key购买 nike

好的,我正在尝试将 txt 文件上传到我的表中。我的问题是场终结器。我尝试过使用几个角色,但没有任何效果。我的最后一次尝试是使用“.”

txt 文件:

John. B. Smith. 123456789. 1955-01-09. 731 Fondren, Cary, NC. M. 30000. 333445555. 5.   
Franklin. T. Wong. 333445555. 1945-12-08. 638 Voss, Cary, NC. M. 40000. 888665555. 5.
Alicia. J. Zelaya. 999887777. 1958-07-19. 3321 Castle, Apex, NC. F. 25000. 987654321. 4.
Jennifer. S. Wallace. 987654321. 1931-06-20. 291 Berry, Garner, NC. F. 43000. 888665555. 4.
Ramesh. K. Narayan. 666884444. 1952-09-15. 975 Fire Oak, Angier, NC. M. 38000. 333445555. 5.
Joyce. A. English. 453453453. 1962-07-31. 5631 Rice, Raleigh, NC. F. 25000. 333445555. 5.
Ahmad. V. Jabbar. 987987987. 1959-03-29. 980 Dallas, Cary, NC. M. 25000. 987654321. 4.
James. E. Borg. 888665555. 1927-11-10. 450 Stone, Cary, NC. M. 55000. NULL. 1.

MySQL 代码:

mysql> load data local infile 'c:/employee upload2.txt' into table employee
-> fields terminated by '.' lines terminated by '\n';
Query OK, 8 rows affected, 80 warnings (0.02 sec)
Records: 8 Deleted: 0 Skipped: 0 Warnings: 80

table 看起来所有内容都试图塞进第一个字段,但它只能容纳前 8 个字符。有什么想法吗?

最佳答案

您的数据格式不好。如果您希望此功能有效,您需要一个一致的字段分隔符。您无法使用空格分隔的值,除非转义地址字段(或名称字段,尽管示例数据中未显示)等其他字段中的空格。

此文件中也不会有列标题。

如果您只是使用制表符分隔值而不是空格分隔值,则这可以与字段分隔符、转义符和行分隔符的默认 LOAD DATA INFILE 设置配合使用(假设 \n 实际上是你的行分隔符)

默认的 MySQL 行为(如果没有指定分隔符、字段编码字符、转义序列或行开始和结束字符,则为:

FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\'
LINES TERMINATED BY '\n' STARTING BY ''

显然,只要您匹配查询以使用相同的设置,您就可以在数据集中使用您喜欢的任何字符。

如果你想坚持使用空格分隔符,你可以这样做

FIELDS TERMINATED BY ' ' ENCLOSED BY '"' ESCAPED BY '\\'
LINES TERMINATED BY '\n' STARTING BY ''

并将 " 放在可能包含空格的任何字段(或所有字段)周围,或使用 \\ 转义字段数据中的所有空格。您不会如果空格位于双引号括起来的字段内,则需要转义空格。

关于mysql - 加载数据本地 Infile 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13596177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com