一个存储过程问题
大家好目的:统计不同库间同一设备的数量是否相等
代码:create procedure compareNumber(tablename varchar(255),object_class int)
returning int,int;
define edisNumber int;
define nrmdbNumber int;
select count(*) as num from edis2@edisdb1:tablename where confirmed <> 2 into temp t1;
select t1.num into edisNumber from t1;
select count(*) as num from nrmdb@wnmsserver1:objects where object_class = 101 and confirmed <> 2 into temp t2;
select t2.num into nrmdbNumber from t2;
return edisNumber,nrmdbNumber with resume;
drop table t1;
drop table t2;
end procedure;
问题:当我execute procedure compareNumber("aaa",101);报错
错误:error: the specified table (edis2:tablename) is not in the database. (State:s0002,native code:ffffff32)
0 row(s) affected
说是没又找到参数中传的表名,但是我确信表存在 单独执行是都能取出数据
大侠们看看是那错了呢? 不支持用变量当表名的。
http://bbs.chinaunix.net/viewthread.php?tid=667733&extra=page%3D2&page=1
[ 本帖最后由 wenlq 于 2008-4-18 14:50 编辑 ]
页:
[1]