徵狀
假設您使用 Microsoft SQL Server 2012 或 SQL Server 2014 合併複製。 在任何已發佈的資料庫物件中,都有一個跨資料庫相依性,且具有相同的架構名稱和物件名稱。 在這種情況下,您會收到下列錯誤:
架構腳本 '<檔案名>。sch ' 無法傳播到訂閱者。程式無法讀取檔案 "<pathname>\<檔案名>sch '",因為作業系統錯誤2。
原因
發生這個問題的原因是,如果任何發佈的資料庫物件中都有跨資料庫相依性,則 SQL Server Snapshot 代理程式有時會針對特定相依性傳回錯誤的資料庫。
解決方案
套用修正程式後,如果資料庫設定為目前的 publisher 資料庫以外的任何專案,則 SQL Server 會調整它的行為,以忽略任何非文章相依性。此問題最初是在 SQL Server 的後續累積更新中修正。
SQL Server 2014 的累積更新1 /en-us/help/2931693
SQL Server 2012 SP1 的累積更新9 /en-us/help/2931078
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。