Category Archives: ORA Database Error Messages

ORA-00908: missing NULL keyword

ORA-00908: missing NULL keyword

ORA-00908: missing NULL keyword
Cause: Either of the following: In a CREATE TABLE or ALTER TABLE statement, NOT was entered to specify that no null values are allowed in that column, but the keyword NULL was omitted. In the IS [NOT] NULL logical operator, the keyword NULL was not found. For example, the following statement generates this message:
SELECT * FROM EMP WHERE DEPTNO IS NOT;
 The keyword NULL must follow the keywords IS NOT
Action: Correct the syntax

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00907: missing right parenthesis

ORA-00907: missing right parenthesis

ORA-00907: missing right parenthesis
Cause: A left parenthesis has been entered without a closing right parenthesis, or extra information was contained in the parentheses. All parentheses must be entered in pairs
Action: Correct the syntax and retry the statement

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00906: missing left parenthesis

ORA-00906: missing left parenthesis

ORA-00906: missing left parenthesis
Cause: A required left parenthesis has been omitted. Certain commands, such as CREATE TABLE, CREATE CLUSTER, and INSERT, require a list of items enclosed in parentheses. Parentheses also are required around subqueries in WHERE clauses and in UPDATE table SET column = (SELECT…) statements
Action: Correct the syntax, inserting a left parenthesis where required, and retry the statement

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00905: missing keyword

ORA-00905: missing keyword

ORA-00905: missing keyword
Cause: A required keyword is missing
Action: Correct the syntax

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00904: string: invalid identifier

ORA-00904: string: invalid identifier

ORA-00904: string: invalid identifier
Cause: The column name entered is either missing or invalid
Action: Enter a valid column name. A valid column name must begin with a letter, be less than or equal to 30 characters, and consist of only alphanumeric characters and the special characters $, _, and #. If it contains other characters, then it must be enclosed in double quotation marks. It may not be a reserved word

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00903: invalid table name

ORA-00903: invalid table name

ORA-00903: invalid table name
Cause: A table or cluster name is invalid or does not exist. This message is also issued if an invalid cluster name or no cluster name is specified in an ALTER CLUSTER or DROP CLUSTER statement
Action: Check spelling. A valid table name or cluster name must begin with a letter and may contain only alphanumeric characters and the special characters $, _, and #. The name must be less than or equal to 30 characters and cannot be a reserved word

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00902: invalid datatype

ORA-00902: invalid datatype

ORA-00902: invalid datatype
Cause: The datatype entered in the CREATE or ALTER TABLE statement is not valid
Action: Correct the syntax

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00901: invalid CREATE command

ORA-00901: invalid CREATE command

ORA-00901: invalid CREATE command
Cause: The CREATE command was not followed by a valid CREATE option
Action: Correct the syntax

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00900: invalid SQL statement

ORA-00900: invalid SQL statement

ORA-00900: invalid SQL statement
Cause: The statement is not recognized as a valid SQL statement. This error can occur if the Procedural Option is not installed and a SQL statement is issued that requires this option (for example, a CREATE PROCEDURE statement). You can determine if the Procedural Option is installed by starting SQL*Plus. If the PL/SQL banner is not displayed, then the option is not installed
Action: Correct the syntax or install the Procedural Option

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/

ORA-00845: MEMORY_TARGET not supported on this system

ORA-00845: MEMORY_TARGET not supported on this system

ORA-00845: MEMORY_TARGET not supported on this system
SQL> startup nomount;
This error occurs because you tried to use the automatic feature memory management (AMM) Oracle 11g R2. But it seems that its shared memory file system (shmfs) is not big enough. So let's look at the necessary steps to expand its shared memory file system to avoid the above error.
First of all, log in as root and check the file system:
[Root @ oracle in oracle] # df -h
 Filesystem Size Used Avail Use% Mounted on
 /Dev/mapper/vg_oracleem-lv_root
 93G 19G 69g 22% /
 tmpfs 112K 5.9G 5.9G 1% /dev/shm
 /Dev/sda1 99M 485M 362M 22% /boot
So we can see that tmpfs has a 6GB in size. We can change the file system size with the following command:
[Root @ oracle in oracle] # mount -t tmpfs -o shmfs size = 12g /dev/shm
This command (re) mounts the system shmfs files. The shared memory file system must be large enough to accommodate the MEMORY_TARGET and MEMORY_MAX_TARGET values, or Oracle will report ORA-00845 error. Note that when you change something with the mount command, the changes are not permanent.
To make the change persistent, edit your /etc/ fstab to include the option specified above:
[Root @ oracle-in ~] # cat /etc/fstab
 [..]
 tmpfs / dev / shm tmpfs size = 12g 0 0
 [..]
In my case, I replaced the "defaults" option with the size = 12g option. After saving the file, the changes must be permanent. Now back to Oracle. Let's see if we can start the database now ...
SQL> startup nomount
 ORACLE instance started
Total System Global Area 1.1758E + 10 bytes
 Fixed Size 2239056 bytes
 Variable Size 5939135920 bytes
 5804916736 bytes Database Buffers
 Redo Buffers 12128256 bytes

Back to previous menu

https://support.oracle.com/

http://www.oracle.com/