下列限制应用于那些包含在紧跟在 EXECUTE IMMEDIATE 关键字之后的字符表达式、引用字符串或语句变量中的语句:
- SQL 语句不可包含主语言注释。
- 主语言变量的名称不像在准备好的文本中那样被识别。
您可使用的唯一标识符是在当前数据库的系统目录中注册的名称,诸如表名称和列名称。
- 该语句不可引用主变量列表或描述符;不可包含任何问号(?)占位符,这允许随同 PREPARE 语句使用。
- 该文本不可包括任何嵌入的 SQL 语句前缀,诸如美元符号($)或关键字 EXEC SQL。
虽然不是必需的,在语句文本中可包括 SQL 语句结束符(;)。
- 在 EXECUTE IMMEDIATE 语句内指定的 SELECT 或 INSERT 语句不可包含“集合派生的表”子句。
EXECUTE IMMEDIATE
不可处理输入主变量,这对集合变量是必需的。请使用 EXECUTE 语句或游标来处理对集合变量的准备好的访问。