当前位置 > 首页 > Sql

转换SQL某个字段遇到的问题

2012-10-19 15:18:00来源:Sql

    sql数据库中我有个列monthRent,这个列是nvarchar(50) 类型的,但看起来都像数字,如:123.00这种格式,我做了个需要用NextYearIncome(int类型)来除以MonthRent(nvarchar(50))的触发器,见代码1,错误见图,图中标记红框的部分为引发错误的几个字段1。我测试了转换代码2,可以转换,但是用到触发器中就不行,我搞不懂这是怎么回事!?

-----------------------------------代码1------------------------------------

(case
    when monthrent<>0 then dateadd(mm,11+nextyearincome/convert(numeric(18),monthrent), MonthRentPaidDate01)
    else dateadd(mm,11, MonthRentPaidDate01)
    end)

---------------------------------------------------代码2-------------------------------------------------

declare @a nvarchar(50)
set @a=1020.00
select 
convert (numeric(18),@a)

-----------------------------------图1--------------------------------------


C# 菜鸟中的雏鸟!提的问题也许很幼稚,但我是认真的。希望看在党国的面子上拉兄弟一把!