我有一个包含三个字段的数据库表:
产品(产品,名称,价格)
ProdId 是自动增量字段。种子1的自动增量从0开始。
我在ASP.NET应用程序中使用C#对数据库执行操作。
如果我使用LINQ来插入新记录,我只需将值分配给Name和Price字段,当我提交更改时,数据库负责增加ProdId。
如何使用标准ADO.NET进行操作?如果我写一个INSERT语句
INSERT INTO Product (Name, Price) VALUES (@Name, @Price)
当我执行命令时抛出异常;
无法在ProdId中插入NULL。
有人有解决方案吗?感谢
答案 0 :(得分:6)
我会按此顺序开始调试:
数据类型可以是numeric
,money
,decimal
,float
,bigint
和int
< / p>
像:
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 ...