如何在C#中使用ADO.NET增加自动增量字段

时间:2011-09-30 08:08:05

标签: c# ado.net auto-increment

我有一个包含三个字段的数据库表:

产品(产品,名称,价格)

ProdId 自动增量字段。种子1的自动增量从0开始。

我在ASP.NET应用程序中使用C#对数据库执行操作。

如果我使用LINQ来插入新记录,我只需将值分配给Name和Price字段,当我提交更改时,数据库负责增加ProdId。

如何使用标准ADO.NET进行操作?如果我写一个INSERT语句

INSERT INTO Product (Name, Price) VALUES (@Name, @Price)

当我执行命令时抛出异常;

无法在ProdId中插入NULL。

有人有解决方案吗?感谢

2 个答案:

答案 0 :(得分:6)

我会按此顺序开始调试:

  • 确保在SQL中确实有
  • 上的AUTO增量

enter image description here

数据类型可以是numericmoneydecimalfloatbigintint < / p>

  • 使用Studio管理工具,手动运行插入查询

像:

DECLARE @Name nvarchar(100), @Price money

SET @Name = 'Bruno Alexandre';
SET @Price = 100.10;

INSERT INTO Product (Name, Price) VALUES (@Name, @Price)

INSERT INTO Product SELECT @Name, @Price
  • 确定您指向ADO连接到正确的数据库。

  • 如果使用EF,刷新表,请使用.edmx文件

  • 上的更新表向导

答案 1 :(得分:1)

你是如何定义ProdId的,试试INT NOT NULL AUTO_INCREMENT ...