2010-08-24 14 views
14

Sto eseguendo il debug di uno strano comportamento che sembra essere correlato a ARITHABORT. Come posso recuperare il valore corrente di ARITHABORT per la connessione attiva?Recupera il valore corrente di ARITHABORT

applausi, Achim

risposta

23
select SESSIONPROPERTY('ARITHABORT') 

returns 1 or 0, a seconda che si tratti di acceso o spento

+1

+1 questo sicuramente vince nel dipartimento KISS. –

4

@@OPTIONS consente di ottenere l'un campo di bit dei valori correnti che sono impostati per la sessione corrente.
Il bitfield può essere interpretato con il seguente script.

DECLARE @options INT 
SELECT @options = @@OPTIONS 

PRINT @options 
IF ((1 & @options) = 1) PRINT 'DISABLE_DEF_CNST_CHK' 
IF ((2 & @options) = 2) PRINT 'IMPLICIT_TRANSACTIONS' 
IF ((4 & @options) = 4) PRINT 'CURSOR_CLOSE_ON_COMMIT' 
IF ((8 & @options) = 8) PRINT 'ANSI_WARNINGS' 
IF ((16 & @options) = 16) PRINT 'ANSI_PADDING' 
IF ((32 & @options) = 32) PRINT 'ANSI_NULLS' 
IF ((64 & @options) = 64) PRINT 'ARITHABORT' 
IF ((128 & @options) = 128) PRINT 'ARITHIGNORE' 
IF ((256 & @options) = 256) PRINT 'QUOTED_IDENTIFIER' 
IF ((512 & @options) = 512) PRINT 'NOCOUNT' 
IF ((1024 & @options) = 1024) PRINT 'ANSI_NULL_DFLT_ON' 
IF ((2048 & @options) = 2048) PRINT 'ANSI_NULL_DFLT_OFF' 
IF ((4096 & @options) = 4096) PRINT 'CONCAT_NULL_YIELDS_NULL' 
IF ((8192 & @options) = 8192) PRINT 'NUMERIC_ROUNDABORT' 
IF ((16384 & @options) = 16384) PRINT 'XACT_ABORT' 
Problemi correlati