
No.2ベストアンサー
- 回答日時:
主キー(プライマリ・キー)自体の制約は以下です。
・1テーブル内でユニーク(一意)を保証する。
・Nullを許容しない(NotNull)。
ですので、主キー自体の値は物理的には更新可能です。
ただし、例えば以下のような場合に製品テーブルの主キーが
更新された場合どうなるでしょうか。
・製品テーブル(マスタ)
製品コードが「A1」※主キー
名称が「ねじA」
・在庫テーブル
製品コードが「A1」※主キー
在庫数が100個
製品テーブルに該当するコードがなくなるので、在庫テーブル側からは名称がわからなくなります。リレーショナルが失われるので、製品テーブル側からは在庫数がわからなくなります。
ですので、通常、主キーの更新は行ないません。
しかし、現実世界では様々な統廃合が行なわれるので主キーを更新せざるを得ない場合もあります。その場合は、各テーブルの関係を考慮に入れて、関係するテーブルすべてのキーを更新する必要があります。
子テーブルにレコードがあった場合、親テーブルのレコードが削除できないのは外部キー(フォーリン・キー)です。
この場合は、子テーブルにデータがある限り、親テーブルからは、参照しているレコードを削除することはできません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Oracle sqlのupdate文で質問です。 テーブルBの番号をキーにテーブルAの身長をテーブルBの身長に更新 2 2022/11/02 15:15
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- カラオケ カラオケのキー変更 4 2022/11/17 09:41
- 不動産業・賃貸業 法人名義で借りていマンションの部屋を個人名義に変更したいのですが。。。 3 2023/07/19 12:32
- Wi-Fi・無線LAN ルーターの暗号化キーはなぜ初期値から変更するの? 2 2022/08/11 16:28
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- UNIX・Linux linuxでよく装備されてるParoleメディアプレイヤーのショートカットでの使い方を教えてください 1 2023/06/07 14:24
- Excel(エクセル) エクセル テーブル機能の不明点 2 2022/04/14 14:10
- Oracle update文で質問です。 下記の条件でupdateをしたいですが、どのようにしたら良いでしょうか。 2 2022/06/23 10:51
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
主キーの変更
-
重複するキーから一番古い年月...
-
SQLの書き方(UPDATE文)
-
Accessでフィールドを比較した...
-
項目長変更後の処理について教...
-
ACCESSについて
-
続.ORACLEのSELECTのソートに...
-
商品コード番号を入力すると商...
-
複数テーブルの不一致クエリに...
-
3つ以上のテーブルをUNIONする...
-
インデックスの再構築の意味っ...
-
SELECT時の行ロックの必要性に...
-
Accessにインポートしたら並び...
-
SELECT文でのデッドロックに対...
-
オラクルではできるのにSQLSERV...
-
SQLServer Insertが遅い
-
accessのエクスポートエラーに...
-
ユニオンクエリの結果をテーブ...
-
accessテーブル作成クエリを実...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
重複するキーから一番古い年月...
-
主キーの変更
-
update文で質問です。 下記の条...
-
ACCESS 一つのフィールドに複...
-
PLSQLの識別子エラー
-
accessで移動平均する方法
-
Accessユニオンクエリーで2つ...
-
続.ORACLEのSELECTのソートに...
-
Accessでフィールドを比較した...
-
行方向のデータを横に並べる
-
自分自身への矢印
-
SQL(Where句)
-
テーブルを分けるべきか
-
項目内の改行がレコードの終わ...
-
履歴を管理するテーブル構造に...
-
アクセスで重複データが消えて...
-
VIEWでテーブルの集計結果...
-
項目長変更後の処理について教...
おすすめ情報