sql >> データベース >  >> RDS >> Mysql

MySQLで外部キー制約を使用する理由

    外部キー 参照整合性 を適用します 。これらの制約により、テーブルの行がorder_detailsであることが保証されます。 フィールドorder_idを使用 ordersを参照する テーブルにorder_idが含まれることはありません ordersに存在しない値 テーブル。

    外部キーは、機能するリレーショナルデータベースを持っている必要はありません(実際には、MySQLのデフォルトストレージ エンジンはFKをサポートしていません)が、壊れた関係や孤立した行(つまり、参照整合性)を回避するためにFKは絶対に不可欠です。 C には、データベースレベルで参照整合性を適用する機能が必要です。 ACID で 立つ。

    パフォーマンスに関する懸念については、一般的にパフォーマンスコストがかかりますが、おそらく無視できるでしょう。すべての外部キー制約を設定することをお勧めします。他の方法では解決できない実際のパフォーマンスの問題がある場合にのみ、外部キー制約なしで実験してください。



    1. SELECTクエリの2つのテーブルをマージしますか?

    2. Zend_DbクラスによるMySQLインジェクションの回避

    3. MySql PHPは、コンマ区切りのデータ(タグ)から個別の値の数を選択します

    4. 大学院レベルのエラー処理