プロが教える店舗&オフィスのセキュリティ対策術

お世話になっています。

OS:Win2000
DB:Access2000
です。

Insert文、Update文共に「構文エラー」になってしまいます。
ですが、実行したSQL文をAccessのクエリに貼り付けて実行しても
エラーにならず、正常に実行されます。

エラーになったSQL文は以下のとおりです。

INSERT INTO D_Schedule (ShisetuNo,YYYYMMDD,ScheTime,Seq,Title,Memo,AddDate,UpdDate) VALUES (1,20041213,'0900',6,'BBB','BBB',#2004/12/16 14:31:49#,#2004/12/16 14:31:49#)

UPDATE D_Schedule Set YYYYMMDD =20041213, ScheTime ='0900', Title ='AAA', Memo ='BBB', UpdDate =#2004/12/16 14:30:06# WHERE ShisetuNo=1 AND YYYYMMDD=20041213 AND ScheTime='0900' AND Seq=2


Insert文の場合、Valueの左側を指定しないで Insert Into D_Schedule Values()だとエラーにならないです。

何かお心当たりのある方、ご指摘お願いいたします。

DB更新はADOで行っています。

ADOの接続方法は

Set gobjCon = Server.CreateObject("ADODB.Connection")
gobjCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & GCOM_DBNAME & ";"

です。

SQL文の実行方法は

gobjCon.Execute(strSQL)

です。よろしくお願いいたします。

A 回答 (1件)

#で囲んでいるところをシングルクォーテーション(')に変えてみたらいかがでしょうか。

#はAccess特有の囲み方だったように思います。

この回答への補足

すみません、自己解決しました(^_^;)
フィールド名を[]で囲ってあげたら、出るようになりました。

特に予約語になりそうなフィールド名は付けてないつもりなんですが・・・。
お騒がせしましたm(__)m

補足日時:2004/12/16 15:27
    • good
    • 0
この回答へのお礼

nandarou-1011さん、早速のご回答有難うございます。
試しにUpdate文だけシングルコーテーションに変えてみましたが、ダメでした。同じエラーです。
他にお心当たりがありましたら、またご指摘下さい。
有難うございました。

お礼日時:2004/12/16 15:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!