这张桌子的图案看起来像:
field - type - index
id - INT - PRI
event_id - BIGINT(20) - UNI
co1 ... colN (no indexes)
LOAD 数据命令 :
LOAD Data LOCAL IFILE 我的档案 改成可图的 mydb.myable (event_id, col1.colN.)
并获取错误 :
EROR 1062(23000),第1行:2147483647号重复条目,键1
键 1 指事件_id 上的独特密钥。
More context: (1) The table is empty at the time of LOAD DATA. (2) When I grep for 2147483647 in my source file I get nothing (3) 2147483647 is the integer max value (4) I am not actually inserting any value in id -- its just auto incrementing (5) I am using the REPLACE keyword in the LOAD DATA so even there were dupes, it should know how to deal with them?
这表明有些内在溢出问题(即,我不认为源数据或表格中存在任何真正的哑巴),事实上,我文件中的事件_id 值都超过最大整数限制。但是,错误是奇特的,因为事件编号列是 BIGINT 。
作为临时修正, 我丢弃了事件编号上的独特索引, 并且 LOAD DATA 命令有效! 事件编号中的值都是正常的, 没有缺省 。 因此处理值的表格没有问题, 但是 LOAD DATA 正在检查其独特性, 但它是一个整数?
有人遇到过类似的事情吗?