各位大神 ,sql server 可不可以系统默认设置为SET NUMERIC_ROUNDABORT OFF,在哪里设置???

解决方案 »

  1.   

    SET NUMERIC_ROUNDABORT 的设置是在执行或运行时设置,而不是在分析时设置。 
    比如:
    -- SET NOCOUNT to ON, 
    -- SET NUMERIC_ROUNDABORT to ON, and SET ARITHABORT to ON.
    SET NOCOUNT ON
    PRINT 'SET NUMERIC_ROUNDABORT ON'
    PRINT 'SET ARITHABORT ON'
    SET NUMERIC_ROUNDABORT ON
    SET ARITHABORT ON
    GO
    DECLARE @result DECIMAL(5, 2),
       @value_1 DECIMAL(5, 4), 
       @value_2 DECIMAL(5, 4)
    SET @value_1 = 1.1234
    SET @value_2 = 1.1234 
    SELECT @result = @value_1 + @value_2
    SELECT @result
    GO
      

  2.   

    数据库:ALTER DATABASE dbname SET NUMERIC_ROUNDABORT OFF