Microsoft 独自のドキュメントには、次のようにレコードを削除する例が記載されています。
// Create the DeleteCommand.
command = new SqlCommand(
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection);
// Add the parameters for the DeleteCommand.
parameter = command.Parameters.Add(
"@CustomerID", SqlDbType.NChar, 5, "CustomerID");
parameter.SourceVersion = DataRowVersion.Original;
adapter.DeleteCommand = command;
しかし、私のシステムでは機能しません (@CustomerID がないことを訴えています)。代わりに、
command.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID");
上記と
command.Parameters.AddWithValue("@CustomerID", 5);
それは動作します。
なんで?