SQL中 sql 在将 nvarchar 值 转换成数据类型 int 时失败

小小白95 2017-06-21 07:22:19
INSERT INTO ExpenseRecrod(RecordList,ExpTime,ExpType,Expense)
SELECT RecordList,GETDATE(),CASE WHEN @difference<0 THEN '消费 ' ELSE '圈存 ' END ,@difference
FROM inserted


CASE WHEN @differ<0 THEN '消费 ' ELSE '圈存 ' END
是这句出错了吗?
怎么通过判断difference的大小去设置ExpType的值呢?
...全文
3184 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiangqing 2017-06-22
  • 打赏
  • 举报
回复
卖水果的net 版主 2017-06-21
  • 打赏
  • 举报
回复
引用 5 楼 weixin_39253430的回复:
[quote=引用 2 楼 wmxcn2000 的回复:] 代码写全了,表结构也说一下,包括数据类型。
发现错误了,问题已经解决了。发现类型用了int[/quote] 好的,解决了就好。 。
卖水果的net 版主 2017-06-21
  • 打赏
  • 举报
回复
exptype是int 型,select 返回的汉字,改一下吧!
小小白95 2017-06-21
  • 打赏
  • 举报
回复
引用 2 楼 wmxcn2000 的回复:
代码写全了,表结构也说一下,包括数据类型。
发现错误了,问题已经解决了。发现类型用了int
小小白95 2017-06-21
  • 打赏
  • 举报
回复
引用 2 楼 wmxcn2000 的回复:
代码写全了,表结构也说一下,包括数据类型。
就是我想通过CCard表中CBalance余额的变化量(消费或是圈存),来判断消费类型。 想直接在消费记录表中显示这个变化量和消费类型。 感谢回复。
小小白95 2017-06-21
  • 打赏
  • 举报
回复
引用 2 楼 wmxcn2000 的回复:
代码写全了,表结构也说一下,包括数据类型。

create trigger Exp_Update
on CCard
for update
as
if update(CBalance)
begin
declare @b_before nvarchar(50) --修改之前的
declare @balance_b float
declare @b_after nvarchar(50) --修改之后的
declare @balance_a float
declare @difference nvarchar(50)
declare @differ float

SELECT @b_after= CBalance from inserted --从更新后的副本表(临时表)里面 获得要修改后的状态
SET @balance_a=convert(float,@b_after)
SELECT @b_before=CBalance from deleted --从之前删掉的临时表里面获取原来的值
SET @balance_b=convert(float,@b_before)

if @b_before is not null
begin
set @differ = @balance_a-@balance_b
set @difference =convert(nvarchar(50),@differ)

INSERT INTO ExpenseRecrod(RecordList,ExpTime,ExpType,Expense)
SELECT RecordList,GETDATE(),CASE WHEN @difference<0 THEN '消费 ' ELSE '圈存 ' END ,@difference
FROM inserted
end
end


卖水果的net 版主 2017-06-21
  • 打赏
  • 举报
回复
代码写全了,表结构也说一下,包括数据类型。
  • 打赏
  • 举报
回复
INSERT INTO ExpenseRecrod(RecordList,ExpTime,ExpType,Expense)
  SELECT RecordList,GETDATE(),CASE WHEN isnumeric(@difference)=1 and @difference<0 THEN '消费 ' ELSE '圈存 ' END ,@difference
  FROM inserted  
试试这一句

34,836

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧