一定是所执行的SQL脚本中有以下的情况: 1、将一个带有非数字的字符存入数值型字段或变量中。 如: DECLARE @ABC DECIMAL(12,4) SET @ABC='A3.5'就会出现此错误。 SET @ABC='3.5' 就不会出现此错误。 2.在CONVERT或CAST函数将某字符串转换为数值型数据时,源字符串包含非数字字符,就会报此错误。如: SELECT CONVERT(DECIMAL(12,4),'A3.5') 3.在逻辑表达式中试图比较一个非数字的字符与一个数值型变量时,会发生该错误,如 SELECT * FROM TABLENAME WHERE 价格>'1000A' ============================= 不如这样: select * from haoma where Col001>'13400000000'