错误代码:1136 列计数与 sp 内第 1) 行的值计数不匹配

Mat*_*ert 3 mysql

我在使用存储过程填充预定义表时遇到一些麻烦。\nmytable 有 6 个字段:uid、testrun、exp1、exp2、exp3、weightedvalue,其中 uid 是自动增量 PK。我的 sp 包含一个插入语句,例如:

\n\n
CREATE PROCEDURE test (IN testrun INT)\nBEGIN\n.... some declare statements ... \nINSERT  INTO exp_factors(testrun,exp1,exp2,exp3,weightedvalue) VALUES\n(testrun, \n exp1,\n exp2_1 + exp2_2,\n exp3_1 + exp3_2,\n exp1 * 0,2 + (exp2_1+exp2_2) * 0.5 + (exp3_1+exp3_2) * 0.3);\n\n\nEND\n
Run Code Online (Sandbox Code Playgroud)\n\n

不幸的是,这会导致标题中所述的错误。我知道我只插入 6 个字段中的 5 个,但显然我不想手动输入自动增量 PK uid。\n如何在不传递自动增量 id 的情况下将我的 exp 值输入到此表中。\n当然我可以创建一个表没有额外的 PK,但是 \xc2\xb4s 不是我想要的。

\n\n

感谢您提前提出任何建议!

\n

Mik*_*ike 5

插入的最后一行有一个逗号,使 6 列而不是 5 列:

exp1 * 0,2 + (exp2_1+exp2_2) * 0.5 + (exp3_1+exp3_2) * 0.3
        ^
Run Code Online (Sandbox Code Playgroud)

我想这应该是小数点,而不是逗号。