長い間 ASP コードを書いていませんでしたが、今日簡単なゲストブックを作成しているときに、Microsoft office Access データベース エンジン エラー '80040e14' が発生しました。
Insert INTO ステートメントの構文エラー。
ネットで情報を確認したところ、以下の理由でエラーが発生していることが分かりました。
1) 名前として予約語を使用します。ほとんどのデータベースには一連の予約語があります。たとえば、name は予約語であり、データベース内の列名には使用できません。
2) 名前に特殊文字を使用します。特殊文字の例は次のとおりです。 / * : # & - ?
3) 列名にはスペースを使用します。
4) このエラーは、データベース内のオブジェクトに対して入力マスクが定義されており、挿入されたデータがそのマスクと一致しない場合にも発生します。
この問題を解決するには 2 つの方法があります。
1) データベース内の列名を指定する場合は、name、date、where、select、level などの予約語の使用を避けてください。また、スペースや特殊文字は削除してください
2) フィールド名が予約語と同じ場合、SQL ステートメント内で [] を使用して区別できます。
メッセージ ([名前],qq,content) に値を挿入します ('WebjxCom','76312395','私の成功は皆さんのサポートから切り離せません')