set 赋值问题

usernamezero 2010-03-27 04:38:52
如下定义变量
--组合条件(盘点)
declare @ChaXunZuHe varchar(4000);
--组合条件出,入,调库
declare @ChuRuTiaoZuHe varchar(4000);
下边的赋值方法
set @ChaXunZuHe=(' select shijishuliang,CangKuBianHao,CangKu,BianHao,MingChen,GuiGe,SuoShuGongChang from ( '
+@FromTable+' )A'+' where 1=1 ')
--print @ChaXunZuHe;

--组合出,入,调库中的查询
set @ChuRuTiaoZuHe= (' select * from View_ImEx where 1=1 ')
--print @ChuRuTiaoZuHe;
if len(rtrim(@CaiLiaoBianHao))<>0
begin
--材料编号不为空 盘点组合条件
set @strCalLiaoBianHao=(' and BianHao='+''+''''+@CaiLiaoBianHao+'''');
--材料编号不为空 出入调库组合条件
set @strCRTCaiLiaoBianHao=(' and CaiLiaoBianHao='+''+''''+@CaiLiaoBianHao+'''');
set @ChaXunZuHe=(@ChaXunZuHe+@strCalLiaoBianHao);
set @ChuRuTiaoZuHe=(@ChuRuTiaoZuHe+@strCRTGongChangBianHao);
print 1
print @ChuRuTiaoZuHe
print 2
end

print @ChuRuTiaoZuHe 这时候打印为空的为什么 我的这个if 没有问题 此变量不为空我打印出来看了
而且pring @ChaXunZuHe 里边是有值的
...全文
136 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
readfuture 2010-03-27
  • 打赏
  • 举报
回复
顶2楼。
htl258_Tony 2010-03-27
  • 打赏
  • 举报
回复
declare @FromTable varchar(50)='tb',@CaiLiaoBianHao as varchar(30) ='abcde',
@strCalLiaoBianHao as varchar(800),@strCRTCaiLiaoBianHao as varchar(800)='',
@strCRTGongChangBianHao as varchar(800)=''
--组合条件(盘点)
declare @ChaXunZuHe varchar(4000);
--组合条件出,入,调库
declare @ChuRuTiaoZuHe varchar(4000);
--下边的赋值方法
set @ChaXunZuHe=(' select shijishuliang,CangKuBianHao,CangKu,BianHao,MingChen,GuiGe,SuoShuGongChang from ( '
+@FromTable+' )A'+' where 1=1 ')
print '1.'+@ChaXunZuHe;

--组合出,入,调库中的查询
set @ChuRuTiaoZuHe= (' select * from View_ImEx where 1=1 ')
print '2.'+@ChuRuTiaoZuHe
if len(rtrim(@CaiLiaoBianHao))<>0
begin
--材料编号不为空 盘点组合条件
set @strCalLiaoBianHao=(' and BianHao='+''+''''+@CaiLiaoBianHao+'''');
print '3.'+@strCalLiaoBianHao
--材料编号不为空 出入调库组合条件
set @strCRTCaiLiaoBianHao=(' and CaiLiaoBianHao='+''+''''+@CaiLiaoBianHao+'''');
print '4.'+@strCRTCaiLiaoBianHao
set @ChaXunZuHe=(@ChaXunZuHe+@strCalLiaoBianHao);
print '5.'+@ChaXunZuHe
set @ChuRuTiaoZuHe=(@ChuRuTiaoZuHe+@strCRTGongChangBianHao);
print '6.'+@ChuRuTiaoZuHe

end

/*
1. select shijishuliang,CangKuBianHao,CangKu,BianHao,MingChen,GuiGe,SuoShuGongChang from ( tb )A where 1=1
2. select * from View_ImEx where 1=1
3. and BianHao='abcde'
4. and CaiLiaoBianHao='abcde'
5. select shijishuliang,CangKuBianHao,CangKu,BianHao,MingChen,GuiGe,SuoShuGongChang from ( tb )A where 1=1 and BianHao='abcde'
6. select * from View_ImEx where 1=1
*/

检查一下你哪个环节没有赋值.
usernamezero 2010-03-27
  • 打赏
  • 举报
回复
print @ChuRuTiaoZuHe 这时候打印为空的为什么 我的这个if 没有问题 此变量不为空我打印出来看了
而且print @ChaXunZuHe 里边是有值的

11,850

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 非技术版
社区管理员
  • 非技术版社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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