VBでアクセスのデータにSQLを発行してテーブルに更新等の処理をしています、削除や検索では該当するレコードがないとエラーコードが返りますが、挿入の場合はすでにあるデータに重複するデータを登録する(二重登録)処理をしてもエラーになりません?
なにもメッセージがないので登録されたのか、だめだったのかを判断することができません、このような場合に二重登録の判定をするには先に検索をして当該データの有無を調べた後に登録処理にを行うようにするしかないのでしょうか?(同じことが更新についてもあてはまります)
データの挿入にはjetSQLのinsert intoステートメントを使用しています
データの更新には同updateステートメントを使用しています
No.1ベストアンサー
- 回答日時:
キーの設定などはどうなっているのでしょう?
二重登録ができないようなキー設定になっていれば、エラーは返ると思いますが。
ただ、普通は存在チェックをかける方が確実だと思いますけど。
一度セレクトでSQLをまわして、該当レコードが0件だったらinsertを行う、という風にした方がいいと思いますよ。
イミディエイトで確認したところエラーが表示されていました、エラーメッセージの処理の記述間違いでメッセージが表示されませんでした。
アドバイスをいただいた存在チェックもするようにしておきます。
ありがとうございました
No.2
- 回答日時:
いえ、INSERTする際、主キーが重複したレコードが既に存在する場合、エラーが返ってきます。
従って、おそらく、主キーが設定されてない、あるいは、設定されていたとしても違ったフィールドに設定されているのではないでしょうか?
もう1度、主キーの設定を確認してみて下さい(ACCESSのテーブルを選択してデザインボタンを押し鍵マークを確認してみて下さい)。
イミディエイトで確認したところエラーが表示されていました、エラーメッセージの処理の記述間違いでメッセージが表示されませんでした。
主キーの見直しをしていてとんでもない間違い(この件とは無関係なので詳細は省略します)にも気づきました、アクセスのキーの設定については考えてもみませんでした、いろいろな角度から調査をする必要性を再認識しました
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Excel(エクセル) ネットワーク上のエクセルとリンクしている時にデータ更新をvbaで、refresh Allで行う場合の 2 2023/04/10 05:39
- Excel(エクセル) Excel VBAについてです。 少しだけ知識はあるのですが、 うまくいかなかったので 質問させてい 3 2022/09/13 18:40
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- その他(クラウドサービス・オンラインストレージ) Microsoft Listと同じ使い方が出来るサービス 1 2022/11/21 09:01
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- Visual Basic(VBA) VBAで重複データを確認したい 5 2022/10/07 16:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
pandasでsqlite3にテーブル作成...
-
Excel VBAのユーザーフォームで...
-
ListBoxにAddItemする際、重複...
-
EXCELで外部データの取り込みが...
-
csvデータ不要列の削除をbatフ...
-
JDBCを使ってdate型へのINSERT...
-
ACCESS VBAでSeekメソッドの処...
-
Accessでパラメーター以外の削...
-
エクセル 2つの列にある値の完...
-
フラグをたてるってどういうこ...
-
【SQL】他テーブルに含まれる値...
-
sqlに記述できない文字
-
SELECT INTOで一度に複数の変数...
-
オラクルのUPDATEで複数テーブル
-
テーブル名が可変の場合のクエ...
-
timestampのデータはどのように...
-
PostgreSQLのtimestamp型で時間...
-
Accessで今日から5日後
-
timestamp が空のデータを除い...
-
joinの場合のテーブル名の別名...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
pandasでsqlite3にテーブル作成...
-
csvデータ不要列の削除をbatフ...
-
Excel VBAのユーザーフォームで...
-
VBAでの行数を揃える方法
-
追加クエリで重複データなしで...
-
【VB】セルが空になるまで処理...
-
マクロでファイルを読み込み、...
-
EXCELで外部データの取り込みが...
-
ListBoxにAddItemする際、重複...
-
JDBCを使ってdate型へのINSERT...
-
ACCESS VBAでSeekメソッドの処...
-
自作アプリからAPIで他のアプリ...
-
MySQLでauto_incrementをつかわ...
-
エクセルで去年のデータを今年...
-
エクセル 2つの列にある値の完...
-
PHPとMYSQL、DBのデータが空の...
-
データテーブルの使い方に関して
-
リストボックスとDataGridコン...
-
vacummdbについて
-
【ExcelVBA】範囲選択の方法に...
おすすめ情報