Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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从excel行导入错误1364_Mysql_Excel_Csv_Import Csv - Fatal编程技术网

MYSQL从excel行导入错误1364

MYSQL从excel行导入错误1364,mysql,excel,csv,import-csv,Mysql,Excel,Csv,Import Csv,大家好,请容忍我,我是一名学生,我还在学习 因此,我试图将数据从excel CSV文件导入到我的数据库中,这种方法适用于除orders表外的所有表,orders表有很多外键,当我像以前一样疲于导入数据时,我不断得到与列的默认值相关的错误,我通过逐列操作获得了一些数据,但当我尝试其他操作时,会出现错误。有什么想法吗?还有一些截图被剪掉了,但请放心,我的桌子是完整的 ,,,为空的varchar设置默认值 例-: 您的源不包含列OrderNumber的数据。所以导入向导在LOAD DATA/INSER

大家好,请容忍我,我是一名学生,我还在学习

因此,我试图将数据从excel CSV文件导入到我的数据库中,这种方法适用于除orders表外的所有表,orders表有很多外键,当我像以前一样疲于导入数据时,我不断得到与列的默认值相关的错误,我通过逐列操作获得了一些数据,但当我尝试其他操作时,会出现错误。有什么想法吗?还有一些截图被剪掉了,但请放心,我的桌子是完整的


,,,

为空的
varchar设置默认值

例-:


您的源不包含列
OrderNumber
的数据。所以导入向导在LOAD DATA/INSERT语句中没有提到此列。该列没有默认值。服务器不知道必须为此列分配什么值。将生成一个错误

你可以:

选项1。更改表结构并为此列添加默认值。比如说,

ALTER TABLE tablename
    CHANGE COLUMN OrderNumber OrderNumber INT NULL DEFAULT NULL;
将数据类型/长度替换为所需的数据类型/长度。如果需要,设置另一个默认值(例如,零)。如果需要,删除NULL(或替换为NOT NULL)


选项2。编辑您的源文件(Excel文件),并添加一列名为
OrderNumber
和一些您需要的值。然后将更改后的文件导出为CSV并导入到表中。

是否应设置表中所有内容的默认值?我在mysql告诉我没有默认值的文件中插入了一些值。我的excel文件已经有OrderNumber列,但是我先插入了OrderNumber列,这会影响什么吗?@R3cklessRay您可以使用一些(我不知道)导入工具。。。我不能回答。我更喜欢使用本机加载数据填充导入CSV数据。我使用mysql内置的数据导入向导。@R3cklessRay mysql是数据库服务器,没有任何向导。向导是一些客户端软件。内置-也许,你是说工作台?无论如何,我建议您使用导入查询,而不是向导-在这种情况下,您可以完全控制导入过程。哦,很抱歉,是的,我正在工作台工作,我将尝试导入查询
ALTER TABLE tablename
    CHANGE COLUMN OrderNumber OrderNumber INT NULL DEFAULT NULL;