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

Cic*_*ami 1 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)
Run Code Online (Sandbox Code Playgroud)

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

无法在ProdId中插入NULL.

有人有解决方案吗?谢谢

bal*_*dre 6

我会按此顺序开始调试:

  • 确保在SQL中有自动增量功能

在此输入图像描述

数据类型可以是numeric,money,decimal,float,bigintint

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

喜欢:

DECLARE @Name nvarchar(100), @Price money

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

INSERT INTO Product (Name, Price) VALUES (@Name, @Price)
Run Code Online (Sandbox Code Playgroud)

要么

INSERT INTO Product SELECT @Name, @Price
Run Code Online (Sandbox Code Playgroud)
  • 确保您指向ADO连接到正确的数据库.

  • 如果使用EF,使用.edmx文件上的"更新表向导" 刷新表