SQL数据库的一个问题,急(追加50分)

来源:百度知道 编辑:UC知道 时间:2024/05/24 22:16:57
代码为:
Commandstr = "INSERT INTO t_user (code, idcard, name) values("+TextBox1.Text+","+TextBox2.Text+","+TextBox3.Text+")";
SqlConnection myConnection = new SqlConnection("Server=localhost\\SQLEXPRESS;database=student;uid=;pwd=;Integrated Security=true");
myConnection.Open();
SqlCommand myCommand = new SqlCommand(Commandstr, myConnection);
myCommand.ExecuteNonQuery();
myConnection.Close();

表为:
ID INT
CODE NCHAR(10)
IDCARD NCHAR(10)
NAME NCHAR(10)
其中ID已经设为主键,标识种子,标识增量都已经设为1,但一运行就出现
“不能将值 NULL 插入列 'id',表 'student.dbo.t_user';列不允许有空值。INSERT 失败。
语句已终止。 ”这是什么原因?应该如何改
那应该怎么改呢?具体一点……

Commandstr = "INSERT INTO t_user (code, idcard, name) values("+TextBox1.Text+","+TextBox2.Text+","+TextBox3.Text+")";

改成

Commandstr = "INSERT INTO t_user (code, idcard, name) values('"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"')";

而且我也觉得你是不是设错 id标识了?

这个问题不难..你留个QQ.或者上百度 HIR找我.边说边解决方便些

1.再次检查一下表,看ID到底有没有成功设置自增量。
2.语句中有点问题:字符型字段缺少单引号
Commandstr = "INSERT INTO t_user (code, idcard, name) values('"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"')";

你是不是列表视图里将ID设置成自动增加1的,怎么代码好像不对的。