2017-05-31 69 views
0

「沒有爲一個或多個必需的參數給定值」這裏是DELETE字符串:訪問刪除命令生成

string command1str = "DELETE FROM Person WHERE personID = '" + personID + "' ;"; 

分號似乎並不重要的一種方式或其他。執行以下錯誤時發生:

OleDbCommand command1 = new OleDbCommand(command1str, connection); 
command1.ExecuteNonQuery(); 

第二行生成異常。我不知道爲什麼。

謝謝。

+0

改爲使用參數化查詢:'DELETE FROM Person WHERE personID =?'and'command1.Parameters.AddWithValue(「@ PersonID」,personID);' –

+0

Access數據庫中personID的數據類型是什麼?如果personID是整數或自動編號('string command1str =「DELETE FROM Person WHERE personID =」+ personID +「;」;'),那麼它可能會在刪除單引號時起作用。 –

回答

0

可能,personID爲空或空。

要解決錯誤,您可以在定義SQL命令的行後面設置斷點,複製命令並嘗試在Access中手動運行它。