0

削除クエリを実行しようとすると、次のエラーが発生します

クエリ式'cnameVALUES @cname'の構文エラー(演算子がありません)。

コード

Dim conn As OleDbConnection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & My.Settings.strFileName)
conn.Open()
Dim cmdText = "DELETE FROM products WHERE cname VALUES @cname"
Dim cmd As OleDbCommand = New OleDbCommand(cmdText, conn)
With cmd.Parameters
  .Add(New OleDbParameter("@cname", DataGridView1.Item("cname", i).Value))
End With
Dim dt As New DataTable("products")
cmd.ExecuteNonQuery()
conn.Close()
conn = Nothing
4

3 に答える 3

4

オペレーターが必要です

DELETE FROM products WHERE cname = @cname
于 2012-08-01T23:28:44.607 に答える
3

削除ステートメントの書き方が正しくありません。

次のように書く必要があります。

Dim cmdText = "DELETE FROM products WHERE cname = @cname"
于 2012-08-01T23:29:05.590 に答える
-1

そしてdelete all、特定のテーブルから記録するには、次のことを行うID必要があります。

deleteMore:
DELETE TOP(100) TableName WHERE toDelete='17'
IF @@ROWCOUNT != 0
    goto deleteMore:

これにより、最初の100レコードが削除され、すべてのレコードがなくなるまで繰り返し削除され17ます。

于 2012-08-12T14:49:15.443 に答える