Search notes:

ORA-00922: missing or invalid option

Trailing semicolons in SQL statements

While semicolons are typically used in SQL scripts to separate SQL statements from one another (for example when executed with the start command of SQL*Plus), the semicolons are not part of the SQL statement. In fact, Oracle will throw an ORA-00922 error when it tries to parse such an SQL statement:
begin
   execute immediate 'create table tq84_xyz(a number);';
end;
/
See also the error message ORA-00933: SQL command not properly ended, which is sometimes raised when an SQL statement ends with a semicolon.

Missing semicolon

This error is also thrown when an SQL script contains multiple SQL statements, but two adjacent statements are not separated by a semicolon, such as in the following case:
create table tq84_tab_one (
   col  number
)

create table tq84_tab_two (
   col number
);

See also

Other Oracle error messages

Index