在DB2存储过程中使用变量引用模式和表

在DB2存储过程中使用变量引用模式和表,db2,db2-luw,Db2,Db2 Luw,我将模式名称存储在表列中,例如,SOURCE_schema、TARGET_schema,并检索我想作为DB2存储过程中的变量使用的模式名称,例如,vSchema 然后如何在SQL语句中使用该变量,例如: SELECT * from vSchema.TABLE_NAME 有更好的方法吗?提前谢谢 Utiliza SET PATH=TU_LIBRERIA,OTRA_LIBRERIA如果没有其他上下文,我只能告诉您需要使用动态SQL,例如as.SQL无法在不知道模式和表名的情况下编译SQL SELE

我将模式名称存储在表列中,例如,SOURCE_schema、TARGET_schema,并检索我想作为DB2存储过程中的变量使用的模式名称,例如,vSchema

然后如何在SQL语句中使用该变量,例如:

SELECT * from vSchema.TABLE_NAME

有更好的方法吗?提前谢谢

Utiliza SET PATH=TU_LIBRERIA,OTRA_LIBRERIA

如果没有其他上下文,我只能告诉您需要使用动态SQL,例如as.SQL无法在不知道模式和表名的情况下编译SQL SELECT语句。没有这些,它就无法知道如何为从数据库检索到的值分配内存。如果在创建proc时不知道这些名称,则必须使用动态SQL语句,这些语句基本上是在每次调用proc时在运行时编译的。查看PREPARE、EXECUTE和EXECUTE-IMMEDIATE SQL语句,了解动态SQL。@user2338816请将您的评论作为答案发布,因为我认为它是正确的,可以帮助其他人;您可以在找到更完整的答案,如果这是一个答案,请详细说明并提供一些上下文