string insertCommand =
"INSERT INTO Users (UserID) VALUES" + "" + "(CONVERT(uniqueidentifier, '" +
UsersIdentityToinsert + "'),'"+ userName+",0,null')";
它告诉我:
VALUES子句中的There are fewer columns in the INSERT statement than values specified
。的数量 VALUES子句中的值必须匹配 。中指定的列数 INSERT语句。
但我有四列?
答案 0 :(得分:2)
您只在插入列表中有UserID,但在值列表中,您有两个值 - uniqueidentifier和用户名
这样可以更好地工作:(假设您的用户名列的名称)
string insertCommand =
"INSERT INTO Users (UserID, username) VALUES" + "" +
"(CONVERT(uniqueidentifier, '" + UsersIdentityToinsert + "'),'"+ userName+"')";
编辑:
我觉得我需要更清楚地解决这个问题:
但我有四列?
您收到的错误是指INSERT语句中指定的列数 - 而不是实际的表,因此如果您使用以下命令启动INSERT:
INSERT INTO AnyTable (ColumnA, ColumnB)
您需要匹配VALUES子句中的列数
VALUES ("Value1", "Value2")
答案 1 :(得分:0)
您在列名称中缺少“UserName”,即列名称和值不匹配。
string insertCommand =
"INSERT INTO Users (UserID,UserName) VALUES" + "" +
"(CONVERT(uniqueidentifier, '" + UsersIdentityToinsert + "'),'"+ userName+"')";