共用方式為


當 SQL Server 中使用重複的 Batch 標籤值時,MDS 實體導向分級可能會失敗。

本文可協助您解決在 SQL Server 中使用重複批次標籤時,Master Data Services (MDS) 實體型暫存可能會失敗的問題。

原始產品版本:SQL Server
原始 KB 編號: 2712547

徵兆

請參考下列案例:

  • 您可以使用 Microsoft SQL Server MDS 實體型暫存程式將數據匯入 MDS。

  • 您可以使用 資料行來識別批次,將各種 MDS 臨時表 (stg.name) 填入暫存數據 BatchTag

  • 您可以使用相同的 BatchTag 值,在不同的 MDS 模型中填入屬於不同實體的個別臨時表。

  • 您可以執行必要的預存程式來啟動批次處理。 或者,您可以從 MDS 網站上的整合管理功能區域啟動預備批次。

當您開始預備程式時,您可以使用三個預存程式的其中一個:

  • stg.udp_名稱_Leaf

  • stg.udp_名稱_Consolidated

  • stg.udp_名稱_Relationship

注意

名稱<>佔位元是建立實體時指定的臨時表名稱。

下列範例示範如何使用預備預存程式啟動暫存程式:

  • exec mds.stg.udp_entityname1 'versionAdescription',0,'batchtag'

  • exec mds.stg.udp_entityname2 'versionBdescription',0,'batchtag'

在此案例中,當您啟動預備程式時,會收到下列錯誤訊息:

MDSERR310029
指定批次的狀態無效。

此外,當您檢查批次狀態時,您會發現具有 BatchTag 值的批次會無限期停滯在 [執行中] 狀態中。

注意

您可以按兩下 [整合管理 ],然後選取模型來檢視狀態,或查詢 [mdm].[tblStgBatch] 數據表,以檢查 MDS 網站的批次狀態。

原因

發生此問題的原因是 MDS 實體型暫存進程會檢查狀態, BatchTag 而不論 MDS 模型為何。

解決方法

如果您的批次停滯在 [執行中] 狀態,請停止批處理,然後嘗試再次處理批次。 若要停止批處理,請執行 SQL 語句: Exec [mdm].[udpStagingBatchQueueActivate]。 若要解決此問題,請將臨時表中的 BatchTag 值更新為新名稱。 此外,請確定 importstatus_ID 欄位已針對記錄設定為 0

其他相關資訊

如需啟動預備程式的詳細資訊,請移至下列網站: