ITPUB??ì3
新一届的微软MVP评选已经开始,欢迎各位推荐!
ITPUB论坛 » Sybase管理与开发 » 助:存储过程中如何将变量表的count,min,max结果存储到变量中

标题: 助:存储过程中如何将变量表的count,min,max结果存储到变量中
离线 wenshaohan
老会员



精华贴数 0
个人空间 0
技术积分 1190 (1489)
社区积分 0 (1548165)
注册日期 2007-9-8
论坛徽章:2
数据库板块每日发贴之星ITPUB新首页上线纪念徽章    
      

发表于 2008-1-3 14:10 
助:存储过程中如何将变量表的count,min,max结果存储到变量中

假如表名是静态的,则在存储过程中执行如下代码:
select @cnt=count(1) from AAA
是正确的.
但假如表名是变量,则在存储过程中执行如下代码:
select @tbname='AAA' + @Avariable
select @sqlstr='select @cnt=count(1) from ' + @tbname
exec(@sqlstr)
将是错误的.
请教我如何获得表@tbname的记录数,要求不建立临时表.谢谢!


只看该作者    顶部
离线 hulei0058
老会员



精华贴数 0
个人空间 0
技术积分 2914 (532)
社区积分 0 (1046350)
注册日期 2006-7-26
论坛徽章:2
ITPUB新首页上线纪念徽章开发板块每日发贴之星    
      

发表于 2008-1-3 14:14 
sybase 中execute(string)不能使用外部声明的变量


只看该作者    顶部
离线 hulei0058
老会员



精华贴数 0
个人空间 0
技术积分 2914 (532)
社区积分 0 (1046350)
注册日期 2006-7-26
论坛徽章:2
ITPUB新首页上线纪念徽章开发板块每日发贴之星    
      

发表于 2008-1-3 14:14 
declare @tablename varchar(20)
declare @Avariable varchar(10)
declare @cnt int
declare @sqlstr varchar(100)
select @Avariable = '101'
select @tablename = 'AAA' + @Avariable
select @sqlstr='create procedure p_temp_cnt @cnt int output as select @cnt=count(*) from '+@tablename
exec(@sqlstr)
exec p_temp_cnt @cnt out
drop proc p_temp_cnt


只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问