我正在尝试读取一个文件并将其中的数据用于我的一个表。但是,我收到错误消息:ERROR 1265 (01000): Data truncated for column 'ERA' at row 1。
我明白错误意味着什么 - 数据对于数据类型来说太大了。但是,“ERA”列是 .txt 文件中第一行的最后一条信息。(下面的 .txt 文件中有什么)。
所以我通过在第一行手动输入相同的信息来测试它。它接受数据就好了。所以我删除了手动添加的行,然后尝试从 .txt 文件中只加载 1 行。这奏效了。
当我有超过 1 行数据要从文件加载时,我只会收到错误消息。
我认为它与读取 Enter Key 值或其他东西有关,但我不知道如何修复它以使其可读。是否需要在文件中每一行的末尾放置一些东西?如果是这样,是什么?
(关于我的注意事项:我只是暂时学习 MySQL 以度过我生命中的某个时刻。我只有初学者的知识,因为它不是我将来使用它的计划。所以如果有什么特别的我必须在 MySQL 中做来解决这个问题,请给出一个明确的例子。至少有足够的信息让我谷歌更多的例子)
.txt 文件的内容:
Arizona Diamondbacks 1998 1819 914 905 1 1 8379 62131 16137 1933 .260 8422 4.26
Atlanta Braves 1876 19764 9786 9825 17 3 88243 677310 176434 12203 .260 87693 3.65
Baltimore Orioles 1901 16861 7965 8786 7 26 72633 572146 148197 11335 .259 77029 3.99
Boston Red Sox 1901 16848 8657 8108 12 7 77981 575510 153781 11671 .267 75352 3.88
Chicago Cubs 1876 19796 10103 9537 16 2 91616 678492 178828 12479 .264 88269 3.66
Chicago White Sox 1901 16855 8476 8276 6 3 73603 570404 148833 9662 .261 72730 3.73
Cincinnati Reds 1882 19382 9766 9480 10 5 87300 661241 173334 11533 .262 86119 3.71
Cleveland Indians 1901 16863 8571 8201 5 2 76441 575356 153431 11338 .267 74685 3.82
Colorado Rockies 1993 2565 1203 1362 1 0 13426 88540 24687 2944 .279 14085 5.17
Detroit Tigers 1901 16885 8497 8295 10 4 78163 575699 152746 12050 .265 77194 3.96
Florida Marlins 1993 2561 1214 1347 2 2 11353 87282 22744 2392 .261 12150 4.39
Houston Astros 1962 7526 3754 3766 1 0 31521 255339 65127 5533 .255 31387 3.75
Run Code Online (Sandbox Code Playgroud)
(关于文件的注意事项:在实际文件中,每行之间没有空格,因为它看起来不是双倍行距。在每行的末尾,在文件中按回车键。每个数据之间的空格是一个制表符(这似乎没问题。如果这也与记事本有关,该文件将从记事本中保存。)
表统计:
Field | Type | Null | Default |
<------------------------------------------------->
Team | varchar(50) | YES | NULL |
FirstYear | int(11) | YES | NULL |
G | int(11) | YES | NULL |
W | int(11) | YES | NULL |
L | int(11) | YES | NULL |
Pennants | int(11) | YES | NULL |
WS | int(11) | YES | NULL |
R | int(11) | YES | NULL |
AB | int(11) | YES | NULL |
H | int(11) | YES | NULL |
HR | int(11) | YES | NULL |
AVG | float | YES | NULL |
RA | int(11) | YES | NULL |
ERA | float | YES | NULL |
Run Code Online (Sandbox Code Playgroud)
最有可能发生的是,默认命令期望终止字符'\n'是真正的'\r\n'; 试试这个命令:
LOAD DATA INFILE 'file_location' INTO TABLE table_name
FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16972 次 |
| 最近记录: |