0

2003アクセスデータベースにfirstという名前のフィールドがあります。データアダプタの更新コマンドを実行すると、「UPDATEステートメントの構文エラー」が表示されます。フィールド名をfirstNameに変更し、更新を再試行すると、機能します。データベースを使用し、フィールド「first」を使用するプログラムがすでにたくさんあります。フィールドの名前を変更し、戻ってすべてのプログラムを更新して、firstではなくfirstNameから読み取る必要がありますか?必要がなければ、私は本当にそのルートに行きたくありません。助言がありますか?ありがとう!

(provider = microsoft.jet.oledb.4.0)

*編集:私は指定するつもりでした、私は答えがコマンドビルダーを使用することを望みます(しかしそれはそのようには機能しません)。ご迷惑をおかけして申し訳ありません。

4

3 に答える 3

2

commandbuilderオブジェクトでこれを行います。

Dim cmdBuilder As New OleDb.OleDbCommandBuilder(oledbAdapter)
cmdBuilder.QuotePrefix = "["
cmdBuilder.QuoteSuffix = "]"

これにより、すべてのフィールド名が角かっこで囲まれます。Indexという名前のフィールドでも同じ問題が発生しましたが、これで解決しました。

于 2012-01-24T06:34:50.900 に答える
1

[最初]のフィールド名を角かっこで囲んでみてください。

于 2011-05-07T01:34:55.533 に答える
0

oledbcommandbuilderは、フィールドに予約語「first」で名前が付けられている場合に中断します。私自身のSQLを書かなければなりませんでした

于 2011-05-12T23:38:55.613 に答える