我在脚本文件上跟随其他脚本
DECLARE table_exist PLS_INTEGER;
BEGIN
SELECT COUNT(*) INTO table_exist FROM USER_TABLES WHERE table_name = 'SampleTable';
IF table_exist = 1 THEN
EXECUTE IMMEDIATE 'DROP TABLE SampleTable';
END IF;
END;
.... other script commands .......
我想知道上述陈述的结果是什么。目前我有一个日志文件,可以捕获所有脚本及其结果。由于上述语句未以表格状态终止,因此后续脚本命令错误输出。如何避免这种情况?
答案 0 :(得分:1)
“我在END之后添加了一个”/“而它 现在正确执行。“
斜杠是执行SQL脚本所必需的。因此,您添加斜杠并执行脚本,这将导致后续脚本成功。谁是一个thunk呢?
重点是,你的过程是错误的:动态删除表是代码味道。在某些其他RDBMS产品中可能是必要的,但Oracle具有许多功能。告诉我们您的实际业务需求,我们可以告诉您更好的方法来实现它。