小编ami*_*efr的帖子

我何时需要在Oracle SQL中使用分号与斜杠?

我们本周在我的公司一直在讨论如何编写SQL脚本.

背景:我们的数据库是Oracle 10g(很快升级到11).我们的DBA团队使用SQLPlus将脚本部署到生产环境.

现在,我们最近部署失败,因为它使用了分号和正斜杠(/).分号在每个语句的末尾,斜杠在语句之间.

alter table foo.bar drop constraint bar1;
/
alter table foo.can drop constraint can1;
/
Run Code Online (Sandbox Code Playgroud)

稍后在脚本中添加了一些触发器,创建了一些视图以及一些存储过程.同时具有;/导致每个语句运行两次导致错误(尤其是在插入,是唯一的,其需要).

在SQL Developer中,这不会发生,在TOAD中这不会发生.如果你运行某些命令,如果没有它们,它们将无法工作/.

在PL/SQL中,如果你有子程序(DECLARE,BEGIN,END),使用的分号将被视为子程序的一部分,因此你必须使用斜杠.

所以我的问题是:如果您的数据库是Oracle,那么编写SQL脚本的正确方法是什么?既然你知道你的数据库是Oracle应该总是使用/

sql oracle

170
推荐指数
5
解决办法
12万
查看次数

标签 统计

oracle ×1

sql ×1