Insert语句出现MySql错误1241

Insert语句出现MySql错误1241,mysql,sql,insert,Mysql,Sql,Insert,这是我的代码,它给了我:“错误代码1241。操作数应该包含1列”。我已经盯着它看了几个小时了,但我无法找出原因。如果有帮助的话,我也可以提供CREATETABLE语句。此外,我正在使用MySQL Workbench 56 很抱歉代码格式不好,这是我的第一篇文章,所以如果我违反了任何规则,请告诉我。我很高兴重新提交 旧代码: INSERT INTO sales (sales_id, sales, salesman, customer, date, region) VALUES ( (n

这是我的代码,它给了我:“错误代码1241。操作数应该包含1列”。我已经盯着它看了几个小时了,但我无法找出原因。如果有帮助的话,我也可以提供CREATETABLE语句。此外,我正在使用MySQL Workbench 56

很抱歉代码格式不好,这是我的第一篇文章,所以如果我违反了任何规则,请告诉我。我很高兴重新提交

旧代码:

    INSERT INTO sales (sales_id, sales, salesman, customer, date, region) 

VALUES
(
(null,null,null,...),
(...),

);
更正代码:

INSERT INTO sales (sales_id, sales, salesman, customer, date, region) 
VALUES
  (null, 2456.00, 'Barb', 'D-Square', '2014/06/10', 'N Reg'),
  (null, 3894.00, 'Barb', 'Lowes', '2014/05/08', 'N Reg'),
  ...(last row);
我认为有两件事有助于澄清我是如何解决这个问题的。首先,我按照所选答案中的建议重新排列了所有内容,但也意识到我的VALUES语句有太多的括号

它是:值((第一行),(第二行),…)

但正确的方法实际上是:值(第一行),(第二行)。。。(最后一排)

我没有意识到语句的输入“bookend”是值。。。而且<强>

此外,我的日期格式不正确,应该是YYYY/MM/DD而不是MM/DD/YYYY


谢谢你的帮助!我很惊讶这个社区是如此的活跃和快速。你们是救命恩人。

插入的问题在于您已经翻转了数据:插入需要按行组织的值,就像在表中一样。您提供了按列组织的数据

一旦您“翻转”数据以将其按正确顺序放置,插入将起作用:

INSERT INTO sales (sales_id, sales, salesman, customer, date, region)
VALUES
    (null, 2456.00, 'Barb', '06/10/2014', 'D-Square', 'N Reg')
,   (null, 3894.00, 'Barb', '05/08/2014', 'Lowes', 'N Reg')
,   ... -- And so on for the remaining 26 rows

似乎您正在尝试执行多重插入,但语法错误 它看起来像:

INSERT INTO sales (sales_id, sales, salesman, customer, date, region) 

VALUES(null, 2456.00, 'Barb', '06/10/2014', 'D-Square', 'N Reg'),
(null, 3894.00, 'Barb', '05/08/2014', 'Lowes', 'N Reg'),
...

Sooo,你想在6列中插入28列?@Lamak:不。他想在1次调用时在1列中插入28行1列值。:)谢谢你的帮助!我照你说的做了,还有一些我忽略了的小事情,它成功了。如果您或任何人感兴趣,我会更新我的问题,以包括修复,以便任何其他有问题的人都可以关注类似的错误。再次感谢!谢谢你的帮助!我不能选择两个正确的答案,但你的答案也帮助我正确地理解了代码。如果你想看的话,我在我的第一篇文章中添加了我作为编辑所做的所有更改。再次感谢你的帮助!