Si applica a
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)

Sintomi

Considerare lo scenario descritto di seguito:

  1. Si dispone di un computer in cui è in uso Microsoft SQL Server 2012 o SQL Server 2014.

  2. Si crea un controllo e molte clausole where che sono maggiori di 3000 byte.

  3. Si prova ad avviare il controllo tramite un'istruzione ALTER

In questo scenario, il controllo non viene avviato e viene visualizzato il messaggio di errore seguente:

Msg 102, livello 15, stato 1, riga lineNumber Sintassi non corretta accanto a "SomeStrings". Msg 25711, livello 16, stato 2, riga lineNumber Impossibile analizzare un predicato dell'evento.

Nota Tieni presente che il problema in questo caso è che l'errore di sintassi viene generato in modo errato nel passaggio 3, quando tenti di avviare la traccia. Questa correzione consente di generare l'errore nella posizione corretta, al passaggio 2 in cui è possibile creare un controllo con la clausola WHERE maggiore di (>) caratteri di 3000. Questa correzione non modifica il limite di espressione del predicato WHERE.

L'espressione del predicato è ancora limitata ai caratteri di 3000. Fare riferimento a predicate_expression nell'articolo seguente Bol: ALTER Server Audit (Transact-SQL).

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. Vedere gli ultimi aggiornamenti cumulativi per SQL Server:

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.