• 締切済み

INSERT INTOステートメント構文エラー

VB.NET2003+Access2000でデータベース開発中です。 サブフォームを使ってデータグリッドのデータを編集することができるように INSERT、DELETE、UPDATE各コマンドを作成しようとしていたら、 表記ADOエラーが出て次に進めません。 INSERT INTO [編集対象テーブル名]       (列名1,列名2,・・・・) VALUES (?,?,?,?,?・・・・) というサンプルSQLですが、構文エラーって何か記述が抜けているんでしょうか? クエリビルダから「値の挿入」を選んでできたSQLなんですけれど。 解説書を見てもぴったりのコメントがないもので、どうかよろしくお願いいたします。

みんなの回答

noname#27115
noname#27115
回答No.2

>これだけだとどこが悪いか判断できませんが、VBのデバッグウィンドウに出来上がったSQLを表示させ、そのSQLをコピー。 ということだと思います。

  • PrintScree
  • ベストアンサー率25% (538/2091)
回答No.1

これだけだとどこが悪いか判断できませんが、VBのデバッグウィンドウに出来上がったSQLを表示させ、そのSQLをコピー。 Accessで対象のMDBを開いて、クエリの新規作成でコピーしたSQLを貼り付けると(多分)エラーになると思うので、VB上でSQLのエラーを追うよりエラー個所がハッキリすると思います。 ありがちなのが、文字列方の値を ' で囲っていないとか、列名と値の数が一致していない事が多いですね。

danchor
質問者

お礼

先ほど少し調べた内容を補足しましたが、それとは別にACCESのクエリーに貼り付けて動かしてみたら、それぞれパラメータの入力を求められ、ダミーで入れてみると行の挿入はちゃんとできました。 Microsoft Visual Database Toolsでの'?'入力が引っかかっていると言うことですね。 さて困った。 頑張って他の方法を探してみます。 ありがとうございました。  

danchor
質問者

補足

早速ありがとうございます。 下記URLにAcces2003+ADO.NETの時、表記のエラーが起こるとかいてありますが本件も同じでしょうか? この解決法もよくわかりにくいのですが、何をどうせよということなのでしょうか? http://support.microsoft.com/kb/892608/ja

関連するQ&A