IBM DB2 //在存储过程中创建别名

时间:2015-07-30 08:38:54

标签: sql stored-procedures db2

我使用最新版本的IBM DB2 Express-C。在我的一个存储过程中,我正在尝试为现有表添加CREATE ALIAS - Statement。

“Unexpected token”是执行存储过程的create语句后的错误消息。

所以我的问题: 我阅读了CREATE ALIAS的文档。对特殊环境没有限制。有没有人成功地在存储过程中实现CREATE ALIAS?

这是我的DBProc:

   DECLARE SQL          varchar(450);

   SET T1 = 'M2F.m2f_k' || i_TableNr;
   SET T2 = 'M2F.m2f_k' || i_TableNr || '_zuodoc z' ;

   -- CREATE ALIAS M2F.Kxx FOR T1;
   CREATE ALIAS M2F.Kxx FOR M2F.m2f_k11;

   for_loop: 
   FOR rs AS c1 CURSOR FOR

谢谢! 奥利弗

1 个答案:

答案 0 :(得分:1)

大多数DDL语句(包括CREATE ALIAS)必须在存储过程中动态执行:

EXECUTE IMMEDIATE 'CREATE ALIAS M2F.Kxx FOR ' || T1;

这是DB2 for LUW的最新版本的link to the manuals