自訂資訊內容與存取 > 資料庫活動 > 新增或移除索引欄位
新增或移除索引欄位
索引欄位用來最佳化搜尋資料庫。它們定義為資料庫表格中相關欄上的條件約束。
新增索引欄位
欲將索引欄位新增至現有資料庫表格:
1. 導覽至與資料庫表格相關的適當 ThingWorx 實體管理員。這些管理員在以下位置進行指定︰啟動點組態項目 (PTC.Factory.C_LaunchPointConfigurationThing_[ReleaseVersion]) 之「組態」頁面的 ManagerConfigurationSettings 表格中。例如,Operator Advisor 實體的管理員是 PTC.SCA.SCO.DefaultProductionOrderManager
2. 「服務」下,尋找並取代要新增索引欄位之實體的 Get<entity>DBInfo 服務。例如,欲將索引欄位新增至工作訂單的資料庫表格,請尋找並取代 GetJobOrderDBInfo 服務。
3. 在指令集編輯器中,向下捲動至要新增索引欄位之資料形式的項目。
4. 為資料形式新增 indexedFields 陣列,使其包含下列屬性:
name - (必填) 欄的名稱。
unique - 指定欄是否必須有具唯一性的值。
identifier - 資料庫中實體的名稱。如果未指定,則系統會以 <table_name>_<column_name>_idx 格式自動產生值。如果已指定,則該值必須具唯一性,無論對於指定值還是任何自動產生的值。值的最大長度是資料庫所允許的識別元最大長度。
5. 按一下「儲存」,儲存服務組態的變更。
6. 導覽至 PTC.SCA.SCO.DatabaseManager 物件。
7. 同步處理 Operator Advisor 中的資料庫資訊與資料庫結構描述。如需詳細資訊,請參閱 同步處理資料庫資訊與資料庫結構描述
移除索引欄位
欲移除索引欄位:
* 
請勿移除任何現成定義的索引欄位。僅移除先前已新增的索引欄位,例如透過 將自訂內容新增至 Operator Advisor 實體將自訂實體新增至 Operator Advisor 資料模型
1. 導覽至為您系統設定的資料庫物件,例如 PTC.SCA.SCO.PostgresDatabasePTC.SCA.SCO.MSSQLDatabase
2. 「服務」下方,以下列輸入執行 RemoveIndex 服務︰
dataShapeName - 您要從中移除索引欄位條件約束之資料庫表格的資料形式。
fieldName - 您要從中移除索引欄位條件約束之資料形式的欄位。
dbInfo - 要移除之索引欄位條件約束的 JSON 描述。必須提供在定義索引欄位的 Get<entity>DBInfo 服務中指定的相同 identifier (若有) 與 name 資訊。
3. 按一下「執行」
4. 導覽至定義索引欄位的 Get<entity>DBInfo 服務,並從服務中移除索引欄位定義。如果未移除,則在下次 執行同步處理服務時,會將索引欄位新增回資料庫。
例如,要從 MyObject 資料形式上名為 WorkDefinitionUID 的欄位中移除指定 identifier 的索引欄位條件約束,請針對輸入參數指定下列內容:
dataShapeNameMyObject
fieldNameWorkDefinitionUID
dbInfo
{
"identifier":"myobject_workdefinitionuid_idx"
"name":"WorkDefinitionUID",
}