会员名称: 登录密码: (找回密码) 登录 会员注册

分类

问题
上个主题 下个主题
主题:变量如何作为表名进行查询????
avatar
jinyu
IT 行业
Ta擅长:
本周回答(0),本月回答(0)
发贴时间:2007-9-5 15:14:03   已到期,未完成 2007-9-25 15:47:54
赠分:25      回答:1   已经到期    
Declare @FDBName Varchar(100),@FTParentID int
select @FDBName='ZZAISZD2007', @FTParentID=228
if (Select count(1) From @FDBName Where FParentID =cast(@FTParentID as Varchar))=0
begin
raiserror('该父ID不存在,请与管理员联系!',16,1)
return end

这条语句老是提示:
服务器: 消息 137,级别 15,状态 2,行 3
必须声明变量 '@FDBName'。

请问要怎么写才能执行,我的@FDBName不是已经声明并初始化值了吗?
回答
avatar
阿剑
IT 行业
Ta擅长:
SOA(2),K/3 BOS(2) 本周回答(0),本月回答(0)
回答时间:2007-9-15 22:26:37
Declare @FDBName Varchar(100),@FTParentID int
Declare @StrSql Varchar(500)
select @FDBName='ZZAISZD2007', @FTParentID=228
Set @StrSql='if (Select count(1) From '+@FDBName+'Where FParentID =cast('+@FTParentID +'as Varchar))=0'
+'raiserror(''该父ID不存在,请与管理员联系!'',16,1)'
+'return end '

exec @StrSql

--字符串的问题
修改时间:2007-9-15 22:27:30
享受一个人的孤独与寂寞。
View as RSS news feed in XML
© 2008 金蝶国际软件集团 版权所有  Version:3.2.2008.27643 页面时间:161.6139Ms