Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.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工作表导入数据库表_Mysql_Sql_Excel_Phpmyadmin - Fatal编程技术网

Mysql 从excel工作表导入数据库表

Mysql 从excel工作表导入数据库表,mysql,sql,excel,phpmyadmin,Mysql,Sql,Excel,Phpmyadmin,我试图使用导入功能将MS Excel 2007工作表中的数据插入数据库表。这里的挑战是我的db表的主键自动递增。这基本上意味着,在excel工作表中,由于实际原因,无法存在作为主键数据的列,因为这将使编辑手工输入数据变得单调乏味[表格的excel工作表可以多次添加,因此在主键列中保留最后一个数字的选项卡并不是一个好主意] 这就是挑战所在。导入函数拒绝将信息插入到特定表中,而是在数据库中创建一个新表并在其中输入信息。要解决这一问题,第二种策略是使用触发器或存储过程来执行定期[我不关心何时/如何执行

我试图使用导入功能将MS Excel 2007工作表中的数据插入数据库表。这里的挑战是我的db表的主键自动递增。这基本上意味着,在excel工作表中,由于实际原因,无法存在作为主键数据的列,因为这将使编辑手工输入数据变得单调乏味[表格的excel工作表可以多次添加,因此在主键列中保留最后一个数字的选项卡并不是一个好主意]

这就是挑战所在。导入函数拒绝将信息插入到特定表中,而是在数据库中创建一个新表并在其中输入信息。要解决这一问题,第二种策略是使用触发器或存储过程来执行定期[我不关心何时/如何执行的语义]: 插入所需的B列 选择*
从表格中

但是,这不会真正起作用,因为excelSheetTable和requiredDbColumn的值/列不匹配,因为excelSheetTable仅具有从上载的excel工作表创建的(n-1)个列,而requiredDbColumn具有n个列,额外的列是主键列

我已将主键设置为自动递增,因此我不确定为什么INSERT INTO、SELECT会表示列计数/值计数不匹配

这是一个普遍的挑战,有人能解决这个问题吗


谢谢!

当我插入时,我通常会为新插入行的所有字段提供“值”。我的插入也会自动增加主键字段

下面是我的一个INSERT命令的摘录:

INSERT INTO Security.Memberships VALUES (185790, '1461459','asdf',NULL,NULL,1,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL)

也许您需要一个构造更完整的INSERT命令?

当我执行INSERT时,通常会为新插入行的所有字段指定“值”。我的INSERT也会自动递增主键字段

下面是我的一个INSERT命令的摘录:

INSERT INTO Security.Memberships VALUES (185790, '1461459','asdf',NULL,NULL,1,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL)

也许您需要一个构造更完整的INSERT命令?

谢谢Jerry,但这是一个INSERT,其中值是通过Select*from other_table命令提供的。谢谢Jerry,但这是一个INSERT,其中值是通过Select*from other_table命令提供的