ホームページ >データベース >mysql チュートリアル >MySQL 外部キーで NULL 値を許可できますか?画像フラグ解像度タイプのケーススタディ
MySQL 外部キーに NULL を許可できますか?
MySQL では、NULL 値を許可しながら外部キー制約を定義するときに共通の課題が発生します。特定のシナリオでは。この質問では、画像 Web サイトのデータベース スキーマのコンテキスト内でこの問題を詳しく掘り下げます。
元のデータベース設計には、tblImages、tblImageFlags、luResolutionTypes の 3 つのテーブルが含まれています。 tblImageFlags には、ルックアップ テーブル luResolutionTypes を参照する ResolutionTypeID 列が含まれています。ただし、最初にフラグを作成するときは、解決タイプが未定であるため、NULL を使用する必要があります。
外部キー列での NULL の許可
この問題を解決するには、解決策は、外部キー列 tblImageFlags.resolutionTypeID で NULL 値を許可することです。 NULL を許可するように列定義を変更すると、データベースは解決タイプを指定せずにフラグを作成できるようになります。解像度が決定されると、外部キー制約に違反することなく更新できます。
インデックスの単数形と複数形
この質問は、古くからある問題も引き起こします。データベースの文脈における「インデックス」の複数形についての議論。言語専門家や「現代アメリカの用法」などのスタイルガイドによれば、「インデックス」の複数形は「インデックス」ではなく「インデックス」であるべきです。
結論
外部キー列で NULL 値を許可することにより、MySQL はデータの整合性を維持しながらデータベース設計に柔軟性を提供します。 「インデックス」の複数形に関しては、データベースのコンテキスト内で使用する場合は「インデックス」が推奨される用語です。
以上がMySQL 外部キーで NULL 値を許可できますか?画像フラグ解像度タイプのケーススタディの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。