将 numeric 转换为数据类型 varchar 时出现算术溢出错误
sqlserver2005存储过程中限制被除数不为0,局部代码如下
第 139 行
insert into #lyg
select b.sStationNO,
case when nSaleAmount=0 then 0 else substring(convert (varchar(20),(a.nMargin/a.nSaleAmount)*100),1,5)+'%' end --限制被除数不为零
from tSaleDaily a,#ly b where a.sStationNO=b.sStationNO and a.dReportDate between dateadd(dd,-392,@BeginDate) and dateadd(dd,-364,@BeginDate)
group by b.sStationNO,a.nMargin,a.nSaleAmount
update #ly set nThisMonthMaoLiLv=a.nMaoLiLv from #lyh a,#ly b where a.sStationNO=b.sStationNO
但是执行存储过程的时候总是报错,错误如下
过程 usp_OilStationSaleMonth,第 139 行 在将 varchar 值 '21.42%' 转换成数据类型 int 时失败。
第 139 行
insert into #lyg
select b.sStationNO,
case when nSaleAmount=0 then 0 else substring(convert (varchar(20),(a.nMargin/a.nSaleAmount)*100),1,5)+'%' end --限制被除数不为零
from tSaleDaily a,#ly b where a.sStationNO=b.sStationNO and a.dReportDate between dateadd(dd,-392,@BeginDate) and dateadd(dd,-364,@BeginDate)
group by b.sStationNO,a.nMargin,a.nSaleAmount
update #ly set nThisMonthMaoLiLv=a.nMaoLiLv from #lyh a,#ly b where a.sStationNO=b.sStationNO
但是执行存储过程的时候总是报错,错误如下
过程 usp_OilStationSaleMonth,第 139 行 在将 varchar 值 '21.42%' 转换成数据类型 int 时失败。
...全文
相关推荐
详解SQL Server中的数据类型
前言 前面几篇文章我们讲解了索引有关知识,这一节我们再继续我们下面内容讲解,简短的内容,深入的理解。 数据类型 SQL Server支持两种字符数据类型,一种是常规,另外一种则是Unicode。常规数据类型包括CHAR和VARCHAR,Unicode数据类型包括NCAHR和NVARCHAR。常规字符的每个字符使用1个字节存储,而Unicode数据的每个字符要求2个字节。常规字符列限制为仅仅只针对于英语,而Unicode则是针对于多种语言。两种字符数据类型的文本表示方式也不相同,在表示常规字符文本时,只需要使用单引号,比如’Hello,my name is JeffckyWang,I’m fro
从数据类型 nvarchar 转换为 numeric 时出错.pdf
用友T+从数据类型 nvarchar 转换为 numeric 时出错.pdf
SQL中NUMERIC和DECIMAL的区别
javaWeb 开发流程:首先我们从网站的架构谈起。一般来说,我们将网站分为前端和后端。前端主要负责页面的展示,后端则是业务逻辑的实现。由于html5的兴起,前端领域已经越来越火热,前端技术发展极快。。
SQL Server 中的数据类型隐式转换问题
主要介绍了SQL Server 中的数据类型隐式转换问题,本文给大家介绍的非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
SQL数据类型和转换
SQL数据类型和转换·········


