動態標誌屬性的外鍵無效
在MySQL 資料庫建模中,外鍵在強制相關表之間的資料完整性方面發揮著至關重要的作用。然而,當以不確定的解析度表示動態屬性時,就會出現限制。
外鍵的困境
考慮一個場景,其中影像管理系統旨在追蹤像「不適當」或「受版權保護」。最初提出的資料庫模式涉及以下表格:
挑戰在於表示尚無邏輯解析時標誌的初始狀態。預設情況下,MySQL 外鍵必須引用現有記錄,這給可為空解析類型帶來了困境。
解決方案:允許外鍵為 NULL
解決方案是允許tblImageFlags 表的 resolutionTypeID 欄位中的 NULL 值。這允許創建標誌條目而無需分配特定的解析度。確定解析度後,可以更新該列以引用 luResolutionTypes 中的有效記錄。
語法:
<code class="sql">ALTER TABLE tblImageFlags ALTER COLUMN resolutionTypeID INT UNSIGNED NULL;</code>
語法正確性:索引與索引
除了語言之外,資料庫上下文中“索引”的正確複數形式是“索引”,而不是“索引”。後者帶有“es”後綴,表示指示符或符號,而不是用於優化查詢的資料庫結構。
透過允許外鍵為 NULL 值,您可以靈活地對動態標誌歸因進行建模,並確保資料完整性,而無需犧牲可用性。
以上是如何在 MySQL 中處理帶有外鍵的動態標誌歸屬:NULL 值的解決方案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!