0
这很容易使用T-SQL(SQL Server)的做到这一点:输出一个SELECT对IBM DB2执行的结果
DECLARE @MyStatement AS NVARCHAR(max) = 'SELECT * FROM MYTABLE'
EXEC (@MyStatement)
不过,我已经花IBM DB2小时不能够做到的相同。我希望这会工作:
DECLARE myStatement VARCHAR(1000);
SET myStatement = 'SELECT * FROM MYTABLE';
PREPARE s1 FROM myStatement;
EXECUTE s1;
,但我得到了以下错误消息:
Elément syntaxique VARCHAR n'est pas correct. Eléments possibles : DYNAMIC SENSITIVE ASENSITIVE INSENSITIVE.. SQLCODE=-104, SQLSTATE=42601, DRIVER=4.18.60
,我会翻译成:
Syntax element VARCHAR is incorrect. Possible elements: DYNAMIC SENSITIVE ASENSITIVE INSENSITIVE.. SQLCODE=-104, SQLSTATE=42601, DRIVER=4.18.60
什么客户端您使用的连接和DISPLA Ÿ数据? – xQbert
将x声明为char(1000);设置x ='select * from mytable';立即执行x; – danny117
你正在寻找[复合SQL语句(https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_71/db2/rbafzcompounddynstmt.htm) – mustaccio