如何制作Firebird SP,从一些动态表中获取行?
我的表有一些用户不能知道的内部前缀。
所以我做了一个像这样的SP来检索行。
CREATE PROCEDURE p_Test
( inStation varchar(10) )
RETURNS
( ServiceName varchar(20) )
AS
DECLARE VARIABLE StationTable varchar(20);
BEGIN
StationTable = 'TSTATION_' || Upper(Trim(inStation));
SELECT StationTable.ServiceName
FROM StationTable
INTO :ServiceName;
suspend;
END^
我收到这样的失败消息
SQL 错误代码 = -204
表未知
车站表
我的 fbclient.dll 版本是 2.1.2.18118。
我的测试环境是Flamerobin 0.9.2.1851。
有什么想法可以让这项工作成功吗?
My tables have some inner pre-fix that users must not know.
So I made a SP like this to retrieve lines.
CREATE PROCEDURE p_Test
( inStation varchar(10) )
RETURNS
( ServiceName varchar(20) )
AS
DECLARE VARIABLE StationTable varchar(20);
BEGIN
StationTable = 'TSTATION_' || Upper(Trim(inStation));
SELECT StationTable.ServiceName
FROM StationTable
INTO :ServiceName;
suspend;
END^
And I got a fail message like this
SQL error code = -204
Table unknown
STATIONTABLE
My fbclient.dll version is 2.1.2.18118.
My test enviroment is Flamerobin 0.9.2.1851.
Any idea to make this work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以尝试使用执行块:
检查此处
you can try to use execute block :
check here
感谢您的提示,@Hugues Van Landeghem。我使用两个关键字
EXECUTE STATMENT
使其工作。这是我的SP:Thanks for your tips, @Hugues Van Landeghem. I've made it work using the two keywords
EXECUTE STATEMENT
. Here is my SP: