套用到
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

徵狀

假設您使用 Microsoft SQL Server 2016 和2017變更 Oracle 的資料捕獲(CDC),請 Attunity 將資料變更從 Oracle 資料庫複製到 SQL Server 資料庫。 Oracle 中的資料表包含一個名為 "KEY" 的資料行,而且這個資料行也是資料表的主鍵。 在這種情況下,當您使用 Oracle 的 [變更資料捕獲設計工具] Attunity 來新增此資料表來捕獲變更時,可能會發生類似下列的錯誤訊息:

關鍵字 "KEY" 附近的語法不正確。

[With "關鍵字附近的語法不正確。 如果此語句是常見的資料表運算式、xmlnamespaces 子句或變更追蹤內容子句,則前一個語句必須以分號結束。

SqlClient SqlException (0x80131904):關鍵字 "KEY" 附近的語法不正確。

[With "關鍵字附近的語法不正確。 如果此語句是常見的資料表運算式、xmlnamespaces 子句或變更追蹤內容子句,則前一個語句必須以分號結束。

CDCManagerImp. ExecuteBatchSqlInTransaction (字串 dbName,IList "1 sqlCommands)] (Attunity)

Attunity (CDCInstanceInfo cdcInfoForUpdate)的 CDCManagerImp. UpdateCaptureTables ()

在 Attunity XdbCdcDesigner 上 EditCDCInstanceForm. UpdateCaptureTables ()

ClientConnectionId:ConnectionID

錯誤號碼:156,狀態:1,Class:15 

解決方案

此問題已在 SQL Server 的下列累積更新中修正:

       SQL Server 2017 累計更新6

       SQL Server 2016 SP1 的累積更新8

每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:

SQL Server 2017 的最新累計更新

SQL Server 2016 的最新累計更新

狀態

Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。

參考

瞭解 Microsoft 用於描述軟體更新的 詞彙

本文提及的協力廠商產品是由與 Microsoft 無關的獨立廠商所製造。 Microsoft 不以默示或其他方式,提供與這些產品的效能或可靠性有關的擔保。

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。