在Oracle SQL中何时需要使用分号和斜杠?
本周我们公司一直在就如何编写SQL脚本进行辩论。 背景:我们的数据库是Oracle 10g(即将升级到11)。我们的DBA团队使用SQLPlus来将脚本部署到生产环境。 现在,我们最近的一次部署失败了,因为它同时使用了分号和正斜杠(/)。分号位于每个语句的末尾,斜线位于语句之间。 alter table foo.bar drop constraint bar1; / alter table foo.can drop constraint can1; / 稍后在脚本中添加了一些触发器,创建了一些视图以及一些存储过程。同时使用;和和/导致每个语句运行两次会导致错误(尤其是在插入操作上,这必须是唯一的)。 在SQL Developer中不会发生这种情况,在TOAD中不会发生这种情况。如果您运行某些命令,那么如果没有这些命令,它们将无法工作/。 在PL / SQL中,如果您有子程序(DECLARE,BEGIN,END),则使用的分号将被视为子程序的一部分,因此必须使用斜杠。 所以我的问题是:如果您的数据库是Oracle,那么编写SQL脚本的正确方法是什么?既然您知道您的数据库是Oracle,那么您应该始终使用/?吗?