【发布时间】:2021-05-18 14:44:39
【问题描述】:
我正在尝试使用动态 SQL 解决任务,但遇到了 ora-00900 invalid sql 语句的问题。
execute immediate 'alter table my_table set interval (NUMTOYMINTERVAL(1, ''MONTH''))';
但是,它在将要执行的语句视为字符串的匿名块中起作用。
DECLARE
str VARCHAR2 (250) := 'alter table my_table set interval (NUMTOYMINTERVAL(1, ''MONTH''))';
BEGIN
execute immediate str;
END;
那么第一种情况的问题在哪里?它看起来像带有转义引号,但无法捕捉到这个。
【问题讨论】:
标签: sql oracle dynamic-sql