如何在 oracle sql 脚本中创建 if-then-else 语句?

Posted

技术标签:

【中文标题】如何在 oracle sql 脚本中创建 if-then-else 语句?【英文标题】:How to create if-then-else statement in an oracle sql script? 【发布时间】:2015-11-20 15:11:13 【问题描述】:

我正在编写一个 sql 脚本,我应该问一个问题,然后继续取决于用户的输入。

我试过这个:

prompt script started
accept partitioning prompt "Do you want to partition the table? (Y/N):"
if ($partitioning=Y)
    prompt ok, it will be partitioned
else
    prompt ok, it won't be partitioned
end;

但我明白了

ORA-00900 异常,这里不允许使用 if 语句。

有没有办法在单个 sql 脚本中使用 if-then-else?如果可能,请给我一个例子。

【问题讨论】:

您使用的是哪个 SQL 客户端? oracle,我编辑了问题,对不起 我认为您将 sqlplus 与 SQL 混淆了。但是你可以试试这个 - itbh.at/simulating-control-flow-statements-in-sqlplus/?lang=en Oracle 是 DBMS,而不是 SQL 客户端。 【参考方案1】:

在cmets中,我得到了答案:

http://www.itbh.at/simulating-control-flow-statements-in-sqlplus/?lang=en

【讨论】:

链接失效

以上是关于如何在 oracle sql 脚本中创建 if-then-else 语句?的主要内容,如果未能解决你的问题,请参考以下文章

如何检索用于在 Oracle 中创建视图的 SQL?

shell中创建mysql库和执行sql脚本

如何在 SQL Server 中创建“脚本生成器选项”脚本?

在 Oracle PL/SQL 中创建触发器时如何解决“编译错误成功”错误?

如何从 SQL 脚本、JDBC 或 Spring JdbcTemplate 在 MySQL 中创建函数?

如何从 Windows 批处理执行驻留在 Oracle APEX 上的 SQL 脚本