ホームページ > データベース > mysql チュートリアル > 2 つのテーブルが MySQL FOREIGN KEY を使用して接続されている場合、子テーブルのデータが整合性を維持しているとどのように言えますか?

2 つのテーブルが MySQL FOREIGN KEY を使用して接続されている場合、子テーブルのデータが整合性を維持しているとどのように言えますか?

王林
リリース: 2023-08-25 19:45:25
転載
774 人が閲覧しました

当两个表用 MySQL FOREIGN KEY 连接时,怎么能说子表中的数据保持了完整性呢?

実際、外部キーは参照整合性を強制し、データの一貫性と整合性を自動的に維持するのに役立ちます。これは、「顧客」と「注文」という 2 つのテーブルの例を使用して理解できます。ここで、「customer」は親テーブル、「orders」は子テーブルです。存在しない顧客のために注文を作成することはできません。これは、以下に示すように両方のテーブルに値を挿入することで実証できます -

mysql> Select * from Customer;
+----+--------+
| id | name   |
+----+--------+
| 1  | Gaurav |
| 2  | Raman  |
| 3  | Harshit|
| 4  | Aarav  |
+----+--------+
4 rows in set (0.00 sec)
mysql> Select * from orders;
+-----------+-------------+------+
| order_id  | product     | id   |
+-----------+-------------+------+
| 100       | Notebook    | 1    |
| 110       | Pen         | 1    |
| 120       | Book        | 2    |
| 130       | Charts      | 2    |
+-----------+-------------+------+
4 rows in set (0.00 sec)
ログイン後にコピー

ここで、存在しない顧客の値を「orders」テーブルに挿入しようとするとします (ID 10 は存在しません) "customer" " テーブル内)、MySQL は次のエラーによりエラーをスローします: 外部キー制約。

えええええ

以上が2 つのテーブルが MySQL FOREIGN KEY を使用して接続されている場合、子テーブルのデータが整合性を維持しているとどのように言えますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート