Tôi đang gỡ lỗi một hành vi lạ có vẻ liên quan đến ARITHABORT. Làm thế nào tôi có thể lấy giá trị hiện tại của ARITHABORT cho kết nối đang hoạt động?Truy lục giá trị hiện tại của ARITHABORT
cổ vũ, Achim
Tôi đang gỡ lỗi một hành vi lạ có vẻ liên quan đến ARITHABORT. Làm thế nào tôi có thể lấy giá trị hiện tại của ARITHABORT cho kết nối đang hoạt động?Truy lục giá trị hiện tại của ARITHABORT
cổ vũ, Achim
select SESSIONPROPERTY('ARITHABORT')
returns 1 or 0, tuỳ thuộc vào việc nó hoặc tắt
@@OPTIONS
cho phép bạn để có được một bitfield các giá trị hiện hành để đặt cho phiên hiện tại.
Bitfield có thể được diễn giải bằng tập lệnh sau.
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'
+1 điều này chắc chắn sẽ thắng trong bộ phận KISS. –