The SQL statement CREATE TABLE (create_table_statement) is known in MaxDB, but has different syntax and semantics to Oracle (CREATE TABLE statement).
· The specification of PCTFREE <integer>, PCTUSED <integer>, INITRANS <integer>, MAXTRANS <integer>, TABLESPACE <tablespace>, STORAGE <storage clause>, and CLUSTER <cluster> is allowed by the syntax, but is meaningless in MaxDB.
· MaxDB ignores the specification of DISABLE.
· If a subquery is specified, MaxDB does not generate NOT NULL constraints.
·
In Oracle, each
table row has a unique address that can be accessed as ROWID. The row can be
addressed directly by using the ROWID. The ROWID also exists if the table has
a key. Such an address is not available in MaxDB, because the rows are always
addressed using the key.
Table option ROWID can be used to better imitate Oracle behavior. This has the
following effect: The table implicitly received key column ROWID from data
type RAW(8). This column is usually invisible and can only be selected using
the ROWID function.
- If the CREATE TABLE statement contains a key_definition, an
index with the UNIQUE attribute that corresponds to the key definition is
generated.
In this way, a row has a ROWID and can be selected with the ROWID and the
key.