下表為 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 支援的約束。