Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

oracle SQL plus how to end command in SQL file?

Tags:

oracle

sqlplus

I have SQL file with few commands.
What it the correct way to end lines in the script?
Is it slash [/] semicolon [;] both?
Is there any diffarent between regular sqls and Stored procedure code?
Thank you

like image 287
JavaSheriff Avatar asked Dec 06 '11 21:12

JavaSheriff


2 Answers

For normal SQL statements, either a / on a line by itself, or a ; at the end of the command, will work fine.

For statements that include PL/SQL code, such as CREATE FUNCTION, CREATE PROCEDURE, CREATE PACKAGE, CREATE TYPE, or anonymous blocks (DECLARE/BEGIN/END), a ; will not execute the command. Since PL/SQL uses semicolons as line terminators, its use as a command terminator must be suppressed in these statements. So in these cases, you must use / to execute the command.

In my experience, people prefer to use the semicolon when possible and use the slash only when required.

Note that for SQLPlus client commands -- such as SET or EXECUTE -- no command terminator is necessary at all, although people often end them with a semicolon out of habit.

like image 83
Dave Costa Avatar answered Oct 25 '22 07:10

Dave Costa


; is the way you should end your sql commands, same goes for PLSQL procedures:

select * from dual;

select sysdate from dual;

select table_name from user tables;

exec dbms_output.putline('Hello');

like image 39
Daniel Haviv Avatar answered Oct 25 '22 08:10

Daniel Haviv