簡體   English   中英

如何在C#中使用ADO.NET遞增自動遞增字段

[英]How to increment an auto-increment field with ADO.NET in C#

我有一個包含三個字段的數據庫表:

產品(產品名稱,名稱,價格)

其中ProdId自動遞增字段。 自動遞增是從1開始的種子1。

我通過在ASP.NET應用程序中使用C#對數據庫執行操作。

如果我使用LINQ插入新記錄,則只需為“名稱”和“價格”字段分配值,當我提交更改時,數據庫負責增加ProdId。

如何使用標准ADO.NET? 如果我寫一個INSERT語句

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

當我執行命令時,會引發異常;

無法在ProdId中插入NULL。

有人有解決辦法嗎? 謝謝

我將按以下順序開始調試:

  • 確保在您的SQL中您確實有AUTO Increment on

在此處輸入圖片說明

數據類型可以是numericmoneydecimalfloatbigintint

  • 使用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文件上的“更新表向導” 刷新表

您如何定義ProdId,請嘗試INT NOT NULL AUTO_INCREMENT ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM