我是C#的新手,對sql命令有點新鮮。我知道如何直接在數據庫管理器中編寫sql命令,但我一直無法弄清楚如何讓它作爲C#SqlCommand對象工作。下面是我的表的示例記錄:如何在C#中編寫特定的sql命令?
+----+----------+----------+----------+
| ID | UserId | SiteName | Date |
+----+----------+----------+----------+
| 1 | 7698479 | Site1 | NULL |
| 2 | 7698479 | Site2 | NULL |
| 3 | 7698479 | Site3 | NULL |
| 4 | 7698479 | Site4 | NULL |
+----+----------+----------+----------+
在我的應用程序中,我有一個按鈕。當用戶點擊按鈕時,我希望與特定用戶標識關聯的整個日期行更新爲當前日期。 「extractedId」實際上是我的程序中存儲用戶標識的變量。所以我的問題是,在C#中這個sql命令的正確語法是什麼,特別是考慮到「extractedId」是一個變量?這是我嘗試過的代碼的變體之一。
SqlCommand myCommand = new SqlCommand("UPDATE myTable SET Date = getdate() WHERE UserId = extractedId", myConnection);
參見[SqlCommand.ExecuteScalar](https://msdn.microsoft.com/en -us/library/system.data.sqlclient.sqlcommand.executescalar(v = vs.110).aspx)開始。 – Igor
難道他不想使用[SqlCommand.ExecuteNonQuery](https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executenonquery(v = vs.110).aspx) ? ExecuteScalar更適用於在插入行時使用SELECT或ID返回值。使用ExecuteNonQuery,您可以運行提供的SqlCommand。 – Dresden