strSQL = "INSERT INTO 事業所データ([事業所番号]) VALUES('test2')"
adoCn.Execute strSQL 'SQLを実行して対象を追加
実行時エラー-2147467259(80004005) 引数が無効です
手動でデータを入力してみたところ、1回目は引数が無効ですで入力できず
2回目には登録ができる状態が、2回続けて起こりました。
状況的には、既に行われた「XMLファイルのエクスポート→インポート」が最も有効な解決方法であると思われますが。
このテーブルはフィールドが238ありまして限界に近いのですが、
どうも、200超えたあたりから動作が怪しくなる気がしますが、こんなことがあるのでしょうか?
Access において、1 つのテーブルに定義できるフィールドの数は 255 個までである。
1 つのテーブルにおいて、フィールドの追加/変更/削除を繰り返しているうちに、「実際に画面上で確認できるテーブルのフィールド数よりも多いフィールド数分の設定情報が保持されている」と認識される状態となることがある。
この「フィールド数のずれ」が含まれているテーブルに対してレコードを追加しようとすると、Access データベースエンジンが正常にデータを処理することが出来ず、件のエラーが発生する。
上記の「設定情報」を Access のユーザーインターフェース上で閲覧、編集することは出来ませんので、前述の方法によってそのテーブルをまるごと作り直すことでしか修正できません。
いずれにせよ、この現象の性質上、フィールドの数を上限に近いほど増やしたり、1 つのテーブルのデザインの変更(フィールドの追加/削除からの上書き保存)を頻繁に繰り返すことはあまり推奨されません。
[事業所番号]と[事業所名]の他にどのようなフィールドが定義されているのか不明ですが、可能であればテーブル構成の再設計や正規化を検討されることをお奨めします。
strSQL = "INSERT INTO 事業所データ([事業所番号]) VALUES('てすと')"
adoCn.Execute strSQL
「事業所名フィールドに値を入力してください」(主キーは事業所番号に設定されています)で、エラー
テーブル[事業所データ]のフィールド[事業所名]の[値要求]プロパティはどのように設定されているのでしょうか。