- ベストアンサー
更新クエリのキー違反がどれだかを調べる方法は
更新クエリのキー違反がどれだかを調べる方法はないですか? 「更新クエリですべてのレコードを更新できません。 0個のフィールド型変換エラー、2件のレコードでキー違反、 0件レコードでロック違反、0件レコードで入力規則違反が発生したためレコードを更新できませんでした」 となるのですが、 「2件のレコードでキー違反」がどれなのかって元テーブルをじっくり眺めて探すしかないのでしょうか? 手作業と目で探してるのですが、見つけられません・・・
- sfdasdfagwe
- お礼率100% (75/75)
- オフィス系ソフト
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
Accessでの質問でよろしいでしょうか? キーの条件は把握されてますよね。 元がテーブルなのでしたら、そのキー違反となるデータを検索するクエリを組めば良いのではないでしょうか? 更新先のテーブルとうまく結合させれば、すぐ出ませんか?
関連するQ&A
- 更新クエリでキー違反
クエリAのあるレコードからテーブルBのレコードにデータを流そうとします。 テーブルBのレコードにデータがちゃんと入っている と上手くデータが流れて更新されるのですが、IDと 名前しか入っていなかったりするとキー違反になるのです。 とても抽象的ですが、 どうして大丈夫なときとダメなときが発生すると 考えられますか?
- 締切済み
- その他(データベース)
- 「キー違反」がどういう状態を指しているのか教えてく
アクセス2010です。 更新クエリを実行しようとしたら、 「レコードでキー違反」 と言うのが発生し、実行できないのですが キー違反とは何を指しているのでしょうか? 該当のフィールドは、テキスト型でインデックスを「いいえ」にしています。 更新クエリでやろうとしていることを手作業で行うと、エラーにならずにできます。 ヘルプをクリックしても 「Access ヘルプと使い方」の画面になってしまいます。 「キー違反」がどういう状態を指しているのか教えてください。
- ベストアンサー
- オフィス系ソフト
- 削除クエリがエラーになります。
削除クエリがエラーになります。 Access2007です。削除クエリを作っているのですがどうしてもエラーになります。 「1件のレコードでキー違反。0件のレコードでロック違反が発生したため削除クエリでレコードを削除できませんでした。」と、表示されてしまいます。 な~ぜ??? 1つのテーブルを基に作っているのにどうしてエラーになるのかわかりません。「キー違反」「ロック違反」とはどういうものですか?どうすれば治りますか? どうか、よろしくお願いいたします
- ベストアンサー
- オフィス系ソフト
- Accessの更新クエリについて質問です。
よろしくお願いします。 集計したクエリを元に更新クエリを実行すると、更新できません。 やりたい作業としては、売上データテーブルのレコード数を得意先ごとにカウントして、得意先マスタテーブルのレコード件数フィールドを更新する作業です。 追加クエリで一度テーブルに追加してから、テーブル同士で更新も考えたんですが、レコード数が多いためにDBのサイズが爆発的に増えて廃案になりました。 何か良い方法があれば教えてください。
- 締切済み
- オフィス系ソフト
- 更新クエリーについて
更新クエリーについて教えて下さい。 元テーブルのAフィールドに値1,2,3 が入力されいます。それを 1を0 に 2を5 に 3を10に 更新する設定方法について教えてください。 <私が行った設定> 更新クエリーのレコードの更新欄に IIf ( [A] = 3 , 10, [A]) or IIf ( [A] = 2 , 5, [A]) or IIf ( [A] = 1 , 0, [A]) で実行したのですが、更新後の値が-1になります。
- ベストアンサー
- その他(データベース)
- 更新クエリがわからない
windows-xp、Access2003を使っています。 参考書に載っている更新クエリは「同一のテーブル内でデータを更新する」という内容で載っているのを見ました。 が、そうではなく・・・ 更新クエリを作成すると「レコードの更新」という欄が出てくるのですが、そこに、別のテーブルや別のクエリのデータを”ビルド”で作成することはできないのでしょうか? 試みたのですが、”パラメータの入力”というものが出てきてしまいました。 ついでにおわかりになれば、これも教えてください。 ↓↓↓ テーブルAとテーブルB(或いはクエリB)に、同じIDをもつデータがあります。そこで、テーブルAの指定するフィールドへ、テーブルBの新しいデータを入れ込みたい(更新)させたい。 すみませんが、宜しくお願い致します。
- ベストアンサー
- その他(データベース)
- アクセスの更新クエリの質問です。
ちなみにAccess2007を使用しています。 A,B,C,Dというフィールドが有り、AフィールドにはCodeが入っています。 Bフィールドには"bb"という言葉、Cフィールドには"cc"という言葉にそれぞれ書き換え、Aフィールドには、今から更新する1レコードを抽出するため、更新クエリ実行時に、パラメーターを入力するように設定しました。 しかし、更新するレコードは、全45000件中、6000件くらいあり、いちいちコードを入れるのが大変です。 もともと、書き換えるためのコードリストがエクセルデータとして有り、Accessにインポートすれば、コードリストをAccessのテーブルにする事も出来ます。このテーブルを使って簡単に、書き換えることは出来ないものなのでしょうか?
- ベストアンサー
- その他MS Office製品
- ACCESS【更新クエリの中断ができない】
ACCESS初心者です。質問がわかりにくかったらすみません。 ACCESSの更新クエリで、レコードのカンマをスペースに置き換える式を作りました。 クエリを実行すると、 ”更新クエリを実行すると、テーブルのデータが更新されます” と、メッセージが表示され”はい”で次に進むと ”*件のレコードが更新されます。”と正確な件数が表示されます。 ただ、ここでやはり中断したいと思い、”いいえ”を選択しても、 レコードは更新されてしまいます。何故でしょうか?教えてください。 ______________________ フィールド: 型名 テーブル: データ統合 レコードの更新: Replace([型名],","," ") 抽出条件: Like"*,*"
- ベストアンサー
- オフィス系ソフト
- 更新クエリー
ACCESS2000です。 Aというテーブル(レコード件数500件くらい)のValue1というフィールドをBというテーブル(レコード件数1件)のValue1というフィールドの値で全件更新したいのですが、どのようなSQLを書けばよいのでしょうか。 基本的なことだと思いますがよろしくお願いいたします。
- 締切済み
- その他(データベース)
- Access2003の更新クエリ、レコードの更新欄のフィールド名を自動的に入力するには?
AとBという2つのテーブルが、全く同じフィールドを30個持っています。 AとBでIDが同一のモノのみ、AにBのデータを丸々更新したいのですが [B].[フィールド名1]というように、IDを除いた残り29個のレコードの更新の欄に 手入力する方法で現在行っています。 追加クエリなどだとフィールドが同じ場合は自動的にレコードの追加欄にフィールド名が現れるのですが 同様に更新クエリでもフィールド名を自動的に出す方法はありますか? 現在上記のような更新クエリを10件以上新規で作成しなければならないのですが 各件に29個も手入力で行うのが非常に面倒でなりません。 やはりSQL等で仕組んでいくようにするのでしょうか?
- ベストアンサー
- オフィス系ソフト
お礼
説明不足ですいません。 アクセスです。 更新クエリを選択クエリにして見ればいいのですね。