KB2897633 - 修正:您無法在 SQL Server 2012 或 SQL Server 2014 中使用 “ALTER” 陳述式啟動稽核

Applies To
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

症狀

請考慮以下案例:

  1. 您的電腦正在執行 Microsoft SQL Server 2012 或 SQL Server 2014。
  2. 您建立稽核和許多大於 3000 位元組的 WHERE 子句。
  3. 您嘗試使用 ALTER 陳述式來啟動稽核

在此案例中,稽核不會開始,而且您會收到下列錯誤訊息:

注意

Msg 102, Level 15, State 1, Line LineNumber
'SomeStrings' 附近的語法不正確。
Msg 25711, Level 16, State 2, Line LineNumber
無法剖析事件述詞。

注意: 請注意,這裡的問題在於,當您嘗試 START 追蹤時,在步驟 3 中錯誤地引發語法錯誤。 此修正程式可讓您在步驟 2 的適當位置引發錯誤,於此步驟建立具有大於 () > 3000 個字元的 WHERE 子句稽核。 此修正程式不會變更 WHERE 述詞運算式限制。

述詞運算式仍限制在 3000 個字元以內。 請參閱以下 BOL 文章中的 predicate_expression : ALTER SERVER AUDIT (Transact-SQL) 。

解決方式

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

SQL Server 2014 累積更新 1 /zh-tw/help/2931693

SQL Server 2012 SP1 的累積更新 7 /zh-tw/help/2894115

關於 SQL Server 的累積更新

SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:

      

狀態

Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。