0
我從我的數據庫中選擇最大ID有點問題。這是我的代碼:ExecuteScalar返回錯誤的值
string checkcat = "SELECT MAX(PRODUCT_ID) FROM CMS_PRODUKTY WHERE (CATEGORY_ID = CATEGORY_ID) AND (CLIENT_ID = @CLIENT_ID)";
SqlCommand cmd2 = new SqlCommand(checkcat, con);
cmd2.Parameters.Add("@CATEGORY_ID", System.Data.SqlDbType.Int).Value = kategoria;
cmd2.Parameters.Add("@CLIENT_ID", System.Data.SqlDbType.Int).Value = HiddenField1.Value;
con.Open();
int noweid = Convert.ToInt32(cmd2.ExecuteScalar());
con.Close();
點是新的詮釋「noweid」應該是1或更高版本 - 依賴於表格內的product_id,但它返回0。我沒有任何想法,爲什麼...的其他變量 - kategoria和HiddenField1.Value是正確的。
任何想法我做錯了什麼?
您是否嘗試過使用SQL Server Management Studio對數據庫執行此查詢並驗證它是否返回1或更高? –
它不會解決你的問題,但你有一個錯字'(CATEGORY_ID = CATEGORY_ID)'應該是'(CATEGORY_ID = @CATEGORY_ID)' - 注意'@'。 – petelids