由于我是 C# 和 linq 的新手,因此我的代碼遇到了一些問題。我正在嘗試將 id、icon_url 和 count 值插入到我的數據庫中。但是當我插入第一行時,id 設置為 0,當我添加另一行時,我收到兩個錯誤。我想自動遞增 ID,因為它是主鍵并且類型為 int。我怎樣才能解決這個問題?請參閱下面的代碼和屏幕截圖。圖片數據庫數據庫設計錯誤1錯誤2代碼:bool imcount = db.dashboards.Any(dash => dash.icon_url.Contains(imageurl)); if (imcount == false) { using (ECardModel db = new ECardModel()) { dashboard imageCount = new dashboard() { icon_url = imageurl, count = 1 }; db.dashboards.Add(imageCount); db.SaveChanges(); } } else if (imcount == true) { using (ECardModel db = new ECardModel()) { int icount = db.dashboards.Where(dash => dash.icon_url.Contains(imageurl)).Max(dash => dash.count); dashboard imageCount = new dashboard() { count = icount + 1 }; db.dashboards.Add(imageCount); db.SaveChanges(); } }
1 回答

慕慕森
TA貢獻1856條經驗 獲得超17個贊
您無法使用查詢從前端將任何列更新為自動增量。
您有 3 個選擇:
選項 1:-
使用 SQL mangement studio 更新它。
選項 2:- 刪除您的專欄并創建新專欄。如果當前表中沒有記錄。但這會改變您的列的序號位置。
-- ID is the name of the [to be] identity column
ALTER TABLE [yourTable] DROP COLUMN ID
ALTER TABLE [yourTable] ADD ID INT IDENTITY(1,1)
選項 3:
您可以刪除當前的表并再次創建它,并將列設置為IDENTITY
CREATE TABLE [dbo].[table](
[Id] [int] IDENTITY(1,1) NOT NULL,
...
CONSTRAINT [PK_table] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
- 1 回答
- 0 關注
- 133 瀏覽
添加回答
舉報
0/150
提交
取消