關於約束

下表為 AutoCAD Map 3D 工具集支援的約束類型。

約束類型 描述 「資料表」模式
範圍 有效值必須在指定範圍內。您可以包括或排除最小和最大值。例如,您可以指定 1~10 (含),則 1 和 10 都有效。 任何超出指定範圍的值都會產生錯誤,您必須輸入其他值。
清單 您提供對此性質有效的清單項目。 按一下下拉箭頭來顯示清單,然後選擇其中一個項目作為該性質的值。
非空 該性質的值不能為空。 如果關閉「資料表」時保持性質值為空,螢幕上會顯示一條錯誤訊息,提示您輸入值。
唯一 該性質的值在圖徵類別之內必須是唯一的。將性質定義為自動產生的欄位,或者在資料倉庫中將其定義為主鍵欄位時,性質會具有此約束。 如果您輸入此性質類別中任何其他性質使用的值,螢幕上會顯示錯誤訊息,提示您進行變更。直到入庫納管圖徵時,您才會看到此錯誤訊息。

如果表格具有連在一起時必須唯一的兩個欄 (例如「姓」和「名」),則在成對唯一性約束中的每個欄上都會顯示一條訊息。

「資料表」中編輯屬性時,您僅可以輸入約束允許的值。例如,對於道路圖徵,您可以指定 Number_Of_Lanes 性質值必須在 1 到 8 的範圍內。如果輸入 9 車道,您會收到錯誤訊息。

輸入無效值後,您會立即看到錯誤訊息。入庫納管圖徵時,系統會再次針對資料倉庫驗證您所做的編輯,並且根據資料 Provider 的功能,通知您以後可能發生的錯誤。

不是所有資料 Provider 都支援所有約束。以下表格展示 Provider 支援的約束。

Provider 範圍 清單 非空 唯一
Oracle
PostgreSQL/PostGIS
SQL Server
SQL Server 空間
SQLite
MySQL
SDF
SHP

「資料架構編輯器」會檢查 Provider 的功能,並僅允許該 Provider 支援的約束。