为和总是提示变量没定义?

wxshzf 2003-11-05 05:24:51
Declare @Month int
declare @MonthStr nvarchar(30)
set @Month=9
if @Month>9
set @MonthStr=Str(@Month,2)
else
set @MonthStr=Str(@Month,1)
declare @UserBillTbl nvarchar(50)
set @UserBillTbl='Userbill'+@MonthStr
exec ('select * from '+@UserBillTbl+' where telno=''83561000''')
declare @dbTable nvarchar(20)
set @dbTable='db'+@MonthStr
declare @SihuaFeeSum int
declare @TmpStr nvarchar(500)
Set @TmpStr='select @SihuaFeeSum=sum(total) from '+@dbTable+' where extension>=83561000 and extension<83562000 and (ChargeID=10 or ChargeID=11 or ChargeID=12) '
print @TmpStr;
exec (@TmpStr)
运行后给出@SihuaFeeSum没定义,请大侠们指点

...全文
58 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-11-05
  • 打赏
  • 举报
回复
Declare @Month int
declare @MonthStr nvarchar(30)
set @Month=9
if @Month>9
set @MonthStr=Str(@Month,2)
else
set @MonthStr=Str(@Month,1)
declare @UserBillTbl nvarchar(50)
set @UserBillTbl='Userbill'+@MonthStr
exec ('select * from '+@UserBillTbl+' where telno=''83561000''')
declare @dbTable nvarchar(20)
set @dbTable='db'+@MonthStr
declare @SihuaFeeSum int
declare @TmpStr nvarchar(4000)
Set @TmpStr=N'select @SihuaFeeSum=sum(total) from '+@dbTable+' where extension>=83561000 and extension<83562000 and (ChargeID=10 or ChargeID=11 or ChargeID=12) '



exec sp_executesql @TmpStr,N'@SihuaFeeSum int output',@SihuaFeeSum output
txlicenhe 2003-11-05
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2364/2364046.xml?temp=.829693
[交流]动态SQL语句


Set @TmpStr='select @SihuaFeeSum=sum(total) from '+@dbTable+' where extension>=83561000 and extension<83562000 and (ChargeID=10 or ChargeID=11 or ChargeID=12) '
print @TmpStr;
--exec (@TmpStr)
exec sp_executesql @TmpStr,N'@SihuaFeeSum int output',@SihuaFeeSum output


34,613

社区成员

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

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