jionspiedB**
2021-04-12 22:01
采纳率: 100%
浏览 44

sql server游标使用中的问题,出现“必须声明标量变量”错误提示

declare cursor1 scroll cursor for
select *
from 成本表

open cursor1
declare @单据号 VARCHAR(16),@预算单位 VARCHAR(16),@井号 VARCHAR(16), @预算金额 DECIMAL(10,2),@预算人 VARCHAR(16),@预算日期 DATETIME,@开工日期 DATETIME, @完工日期 DATETIME,@施工单位 VARCHAR(16), @施工内容 VARCHAR(16), @材料费 DECIMAL(10,2), @人工费 DECIMAL(10,2),@设备费 DECIMAL(10,2),@其他费用 DECIMAL(10,2),@结算金额 DECIMAL(10,2),@结算人 VARCHAR(16),@结算日期 DATETIME, @入账金额 DECIMAL(10,2),@入账人 VARCHAR(16), @入账日期 DATETIME  
print '单据号    '+'预算单位    '+ '井号    '+'预算金额    '+'预算人    '+'预算日期      '+'开工日期    '+'完工日期   '+'施工单位   '+ '施工内容    '+'材料费   '+'人工费   '+'设备费   '+'其它费用    '+'结算金额    '+'结算人     '+'结算日期   '+'入账金额   '+'入账人   '+'入账日期  ' 
fetch first from cursor1
into @单据号, @预算单位, @井号, @预算金额, @预算人, @预算日期, @开工日期, @完工日期, @施工单位, @施工内容, @材料费, @人工费,@设备费,@其他费用,@结算金额, @结算人, @结算日期, @入账金额, @入账人, @入账日期
while(@@FETCH_STATUS=0)
begin
fetch next from cursor1
into @单据号, @预算单位, @井号, @预算金额, @预算人, @预算日期, @开工日期, @完工日期, @施工单位, @施工内容, @材料费, @人工费,@设备费,@其他费用, @结算金额, @结算人, @结算日期, @入账金额, @入账人, @入账日期
print @单据号+' '+@预算单位+' '+@井号+ ' '+@预算金额+' '+@预算人+' '+@预算日期+' '+@开工日期+' '+@完工日期+' '+@施工单位+' '+@材料费+' '+@人工费+' '+@人工费+' '+@设备费+' '+@其它费用+' '+@结算金额+' '+@结算人+' '+@结算日期+' '+@入账金额+' '+ @入账人+' '+@入账日期+' ' 

end

这是运行结果:

这是成本表的数据类型

一直出现这个问题

感谢哥哥姐姐们帮忙解答!!!

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • Probieone 2021-04-13 08:17
    已采纳

    很明显没定义变量@其它费用,你上面定义了一个@其他费用

    打赏 评论

相关推荐 更多相似问题