我有几个命令的SQL文件。
在脚本中结束行的正确方法是什么?
它是斜线[/]分号[;]都是?
常规sqls和存储过程代码之间是否有任何不同?
谢谢oracle SQL plus如何在SQL文件中结束命令?
回答
对于普通的SQL语句,无论是在一个/
在命令结尾处单独行,或;
,都可以正常工作。
对于语句包括PL/SQL代码,如CREATE FUNCTION
,CREATE PROCEDURE
,CREATE PACKAGE
,CREATE TYPE
,或匿名块(DECLARE
/BEGIN
/END
),一个;
将不会执行该命令。由于PL/SQL使用分号作为行终止符,因此它在这些语句中必须被用作命令终止符。所以在这些情况下,您必须使用/
来执行该命令。
根据我的经验,人们更喜欢尽可能使用分号,只在需要时才使用斜杠。
请注意,对于SQLPlus客户端命令(如SET
或EXECUTE
),根本不需要命令终止符,尽管人们经常以习惯结束时使用分号结束它们。
+1,很好的答案。我认为人们更喜欢在可能的情况下使用分号,用分号和命中返回结束命令更自然,而不是命中返回,键入斜杠并再次返回。当用于执行命令缓冲区时,斜杠必须是行中唯一的字符。 – DCookie
;是你应该结束你的SQL命令的方式,同样适用于PLSQL程序:
select * from dual;
select sysdate from dual;
select table_name from user tables;
exec dbms_output.putline('Hello');
通常我们可以用“;
”结束的SQL语句,
但对于创造functions
,triggers
,procedures
你必须使用“/
”后“;
”结束的SQL语句。
“/
”在您使用某些开发人员工具(例如oracle SQL开发人员,toad等)时可能不是必需的,但在您直接在Linux计算机中执行查询时,它应该是强制性的。
- 1. Oracle 10.2.0.5 - SQL命令未正确结束
- 2. SQL命令未正确结束Oracle
- 3. SQL * Plus命令行在Windows
- 4. SQL * PLUS SET命令
- 5. Oracle SQL错误ORA-00933:SQL命令未正确结束
- 6. SQL Plus(Oracle 11)
- 7. 命令sql oracle
- 8. ORA-00933:SQL命令未正确结束
- 9. 如何解决ORA-00933:SQL命令在oracle中没有正确结束?
- 10. SQL命令不能正确地结束
- 11. 即时SQL - 命令未正确结束
- 12. Oracle SQL Plus中的重复结果
- 13. JDBC SQL命令无法正常结束
- 14. 重新创建SQL * PLUS show命令(SGA和参数),在SQL中的Oracle APEX
- 15. SQL命令在达到大csv文件结束之前终止
- 16. 如何修改sql plus中的约束?
- 17. cx_Oracle:错误933. ORA-00933:“SQL命令未正确结束”:SQL命令错误?
- 18. Oracle ODBC和SQL Plus
- 19. 在Application Express上运行Sql * Plus命令
- 20. oracle,查询加入问题“SQL命令没有正确结束”
- 21. Oracle错误,ORA-00933:SQL命令不能正确地结束
- 22. Oracle更新:SQL命令未正确结束
- 23. SQL命令未正确结束 - Oracle子查询
- 24. 更新声明oracle - ORA-00933:SQL命令未正确结束
- 25. SQL命令未正确结束错误
- 26. 错误:sql命令未正确结束
- 27. java.sql.SQLSyntaxErrorException:ORA-00933:SQL命令未正确结束?
- 28. SQL命令不正确地结束
- 29. SQL命令未正确结束?
- 30. 在PL/SQL块中调用SQL * Plus命令
下面是一个类似的意图和良好的解释线程: http://stackoverflow.com/questions/1079949/sql-the-semicolon-or-the-slash – Michael