0

st_Age用这些列和类型在 Visual C# 中创建了一个表

  • id(将属性增加 1 并分配为主键)
  • Name(nvarchar(50))
  • age(整数)

完成源代码时它没有显示错误,但在运行时我收到以下错误消息:

当 IDENTITY_INSERT 设置为 OFF 时,无法在表“st_Age”中插入标识列的显式值。

我试图从工具菜单中解决问题,但没有成功。

谁能教我解决问题的正确方法。

谢谢大家。

4

3 回答 3

1

如错误消息所述,您正在为 INSERT 语句中的列 id 指定一个值。

于 2014-10-29T08:18:57.497 回答
0

感谢所有代码如下: private void button1_Click(object sender, EventArgs e) { if(txtName.Text!="" || txtAge.Text!="") { cn.Open(); cmd.CommandText=@"插入st_Age(id,name,age)值(1,'"+txtName+"','"+txtAge+"')"; cmd.ExecuteNonQuery(); cmd.克隆();MessageBox.Show("插入了一行","编程很有趣"); // cn.Close();

        }

..................................................... ..................可能是表变量错误我不知道,但我使用Visual Studio 2012构建数据库(不是ms sql server独立版)

于 2014-10-30T18:02:06.227 回答
0

如果您插入新行,标识列将具有其值。在插入新行时,您必须离开标识列。如果您还想为标识列插入一个值,请将 IDENTITY_INSERT 设置为 ON。

于 2014-10-29T08:24:26.580 回答