且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何确定哪一列在插入时引发算术溢出错误?

更新时间:2022-12-12 17:13:09

以下脚本将为 Basetable 的每个整数列创建 SELECT 语句.
执行结果 SELECT 语句应该查明 Usertable 中的违规列.

Following script would create SELECT statements for each integer column of Basetable.
Executing the resulting SELECT statements should pinpoint the offending columns in your Usertable.

SELECT  'PRINT ''' 
        + sc.Name 
        + '''; SELECT MIN(CAST(' 
        + sc.Name 
        + ' AS INTEGER)) FROM Usertable'
FROM    sys.columns sc 
        INNER JOIN sys.types st ON st.system_type_id = sc.system_type_id
WHERE   OBJECT_NAME(Object_ID) = 'BaseTable'
        AND st.name = 'INT'