快照集 」 或 「 記錄讀取器代理程式會在目的資料表是空的在 SQL Server 2014年時失敗

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:3144065
徵狀
在 Microsoft SQL Server 2014年在交易式複寫中,在 SQL 查詢中的文章,請為目的資料表中的空字串 (@destination_table = N"") 考慮改用 SQL 陳述式中。在此情況下,您可能會收到下列錯誤訊息中指定的位置 ︰
  • 在快照集代理程式 ︰
    值不可為 null。參數名稱 ︰ strObjectName

  • 在 「 記錄讀取器代理程式 」:
    該處理無法執行 [伺服器] 上的 ' sp_replcmds'

  • 在 [錯誤記錄檔中 ︰
    SQL Server 的判斷提示 ︰ 檔案 ︰ <replrowset.cpp>,列 = 2853年失敗的判斷提示 = 'dwColLen'。</replrowset.cpp>

    注意這項錯誤可能是預存時間相關。如果錯誤持續發生,如果要在重新執行的陳述式之後,請檢查結構完整性的資料庫使用 DBCC CHECKDB。或者,您也可以重新啟動伺服器,以確定於記憶體中資料結構並未損毀。包含判斷提示的詳細資料的\Log資料夾中建立的傾印檔案。

注意只有當發行集有啟用 [立即同步處理] 選項,便會觸發第二個和第三個錯誤。
發生的原因
之所以發生這個問題,是因為空字串不是有效的目的地資料表名稱。
其他可行方案
若要解決這個問題,請設定有效的目的地資料表名稱,或移除無效的目的地資料表名稱。

警告:本文為自動翻譯

內容

文章識別碼:3144065 - 最後檢閱時間:04/06/2016 02:49:00 - 修訂: 1.0

Microsoft SQL Server 2014 Business Intelligence, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbsurveynew kbtshoot kbexpertiseadvanced kbmt KB3144065 KbMtzh
意見反應