我正在尝试读取一个文件并将其中的数据用于我的一个表。但是,我收到错误说明:ERROR 1265(01000):数据截断列' ERA'在第1行。
我理解错误意味着什么 - 数据对于数据类型来说是大的。但是,列' ERA'是.txt文件中第一行的最后一条信息。 (下面的.txt文件中有什么内容。)
所以我通过在第一行手动输入相同的信息来测试它。它接受了数据就好了。所以我删除了手动添加的行,然后尝试从.txt文件中仅加载1个单行。这很有用。
当我从文件中加载多行数据时,我才会收到错误。
我认为它与读取Enter Key值有关,但我不知道如何修复它是可读的。是否需要在文件的每一行末尾添加一些内容?如果是这样,是什么?
(请注意我:我只是暂时学习MySQL以超越我生命中的某一点。我只有初学者的知识,因为我不打算将来使用它。所以如果我需要在MySQL中做一些特殊的事情来解决这个问题,请给出一个明确的例子。至少有足够的信息可以让我向Google提供更多的例子)
.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
(关于文件的注意事项:在实际文件中,每行之间没有空格,因为它看起来不是双倍的。在每行的末尾,在文件中按下输入。每个数据都是一个标签(看起来很好)。如果文件也与它有关,那么该文件将从记事本中保存。)
表统计数据:
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 |
答案 0 :(得分:0)
最有可能发生的是,默认命令期望终止字符为真'\n'
时为'\r\n'
;试试这个命令:
LOAD DATA INFILE 'file_location' INTO TABLE table_name
FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\r\n';
答案 1 :(得分:-1)
检查数据中该特定列和行的值。可能存在数据类型不匹配,将其更改为其他数据类型。
答案 2 :(得分:-2)
检查数据库中的查询值。 表列字段和插入值中的数据类型可能不匹配。 例如,列字段的数据类型是double,然后如果您插入了成功插入的浮点值,但它给出了错误1265,其中描述了“第1行的列'XXXX'数据被截断”。