Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么MySQL工作台表数据导入向导要导入0条记录?_Mysql_Csv_Import_Mysql Workbench - Fatal编程技术网

为什么MySQL工作台表数据导入向导要导入0条记录?

为什么MySQL工作台表数据导入向导要导入0条记录?,mysql,csv,import,mysql-workbench,Mysql,Csv,Import,Mysql Workbench,我对MySQL非常缺乏经验,我遇到了很多问题。我正在Linux Mint 17.3上使用MySQL Workbench 6.3 我正在尝试使用表格数据导入向导将CSV文件导入表格。这对于简单的表很好,但对于更复杂的表则不行 我正在修改导入向导中的所有内容,以确保每一行和每一列都是完美的。一开始它似乎可以工作,导入我的~14000行需要时间,存在磁盘活动并且没有报告错误,但最后: “已导入0条记录” 而表格仍然像以前一样空白 令人沮丧的是,如果我导入到一个新表中,一切都会按预期工作。但我注意到数据

我对MySQL非常缺乏经验,我遇到了很多问题。我正在Linux Mint 17.3上使用MySQL Workbench 6.3

我正在尝试使用表格数据导入向导将CSV文件导入表格。这对于简单的表很好,但对于更复杂的表则不行

我正在修改导入向导中的所有内容,以确保每一行和每一列都是完美的。一开始它似乎可以工作,导入我的~14000行需要时间,存在磁盘活动并且没有报告错误,但最后:

“已导入0条记录”

而表格仍然像以前一样空白

令人沮丧的是,如果我导入到一个新表中,一切都会按预期工作。但我注意到数据类型有很大不同。我已尝试强制.CSV文件中的数据类型符合预期。我还确保“NULLABLE=NO”字段中确实包含一些内容。但是如果我违反了这些规则,会不会有错误?我甚至试着只导入一行,认为在这个较大的表中可能有一些坏数据,但我甚至无法导入一行

为什么会没有错误,但“0条记录已导入”到现有表中,而新表却可以正常工作

如果我没有提供足够的信息,我将提前道歉


谢谢。

解决方案是每次导入约2000条记录。我相信数据库有内存问题。我遇到了同样的情况,我上传了约9000条记录。包括数据类型在内的一切都是完美的。

数据类型完全不同是有意义的。有什么不同?为什么不将数据导入到这个新表中,然后从那里导入到您的实际表中,在这个过程中进行任何必要的数据类型转换?区别在于现有表使用“varchar”或“timestamp”数据类型,而新表使用“text”。另外,新表使用“int”和“bigint”,而现有表使用“double”,还有一个“bit”实例。我将学习如何在转换数据类型时尝试从一个表导入到另一个表,因为它们都是有效的MySQL表,所以可能会更容易。谢谢你,肯。结果发现数据有很多问题。仅仅转换它是不够的。我最终进入了“ALTERTABLE”,试图改变每一列的属性以使两个表匹配。这导致在设置“NOTNULL”时发现大量空值,然后在设置“UNIQUE”时发现大量重复值。在纠正这些错误之后,在其他表中仍然有一些对UUID的引用,然后我还发现有一列需要UUID,而不仅仅是唯一的数字。最后,当两个表匹配时,我将新数据导入到现有表中。