Icon Statements

Removed Statements
The following are the statements that have been removed:

RemovedDescription
EMPTY TABLEThis statement is no longer supported. ElevateDB requires that you use the DELETE statement to remove all rows from a table.
VERIFY TABLEThis statement is no longer supported. ElevateDB currently only offers repair facilities by using the REPAIR TABLE statement.
UPGRADE TABLEThis statement is no longer necessary.
START TRANSACTION
COMMIT
ROLLBACK
These statements are now considered part of the ElevateDB SQL/PSM support and are only allowed in jobs, procedures, functions, and triggers. Outside of SQL/PSM, use the TEDBDatabase StartTransaction, Commit, and Rollback

Statement Changes
The following are the changes to the statements:

ChangedDescription
SELECTElevateDB supports single-row query expressions as values in the list of selected columns.

The INTO clause is no longer supported. ElevateDB uses the standard SQL CREATE TABLE AS clause to create a table using a query expression.

The EXCLUSIVE clause is no longer necessary.

With ElevateDB you can use the actual table name or the table correlation name in column references anywhere in the SELECT statement.

ElevateDB supports single-row query expressions as values in the JOIN clauses.

ElevateDB does not optimize join expressions in the WHERE clause, otherwise known as SQL-89 style joins. You must use the JOIN clause in order to have ElevateDB optimize the joins.

ElevateDB supports correlated sub-queries in the WHERE clause.

ElevateDB supports single-row query expressions as values in the WHERE clause.

The GROUP BY, HAVING, and ORDER BY clauses in ElevateDB support any type of expression, and may refer to columns that aren't in the SELECT list.

The GROUP BY and ORDER BY clauses no longer support ordinal values as a way to specify a SELECT column position in the list of SELECT column expressions. You must specify the actual column reference or expression.

The NOCASE clause is no longer necessary in the ORDER BY clause. ElevateDB uses the COLLATE clause to specify the collation for an ORDER BY expression. Please see the Internationalization topic for more information.

The TOP clause is no longer supported. ElevateDB will introduce standard WINDOW clause support for selecting ranges of rows in a later release.

The LOCALE clause is no longer necessary. ElevateDB supports column-level collations. Please see the Internationalization topic for more information.

The ENCRYPTED WITH clause is no longer supported.
INSERTThe EXCLUSIVE clause is no longer necessary.

The COMMIT clause is no longer supported. ElevateDB internally determines the optimal commit interval for lengthy INSERT statements.
UPDATEThe EXCLUSIVE clause is no longer necessary.

The FROM clause is no longer supported. ElevateDB can use correlated sub-queries in the UPDATE values and/or WHERE clause.

The COMMIT clause is no longer supported. ElevateDB internally determines the optimal commit interval for lengthy UPDATE statements.

The NOJOINOPTIMIZE clause is no longer supported.

The JOINOPTIMIZECOSTS clause is no longer supported.
DELETEThe EXCLUSIVE clause is no longer necessary.

The FROM clause is no longer supported. ElevateDB can use correlated sub-queries in the WHERE clause.

The COMMIT clause is no longer supported. ElevateDB internally determines the optimal commit interval for lengthy DELETE statements.

The NOJOINOPTIMIZE clause is no longer supported.

The JOINOPTIMIZECOSTS clause is no longer supported.
CREATE TABLEThe IF NOT EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.

The column definition NULLABLE clause is no longer supported. To make a column nullable in ElevateDB, don't include the NOT NULL clause.

The column definition DEFAULT clause accepts any basic expression in ElevateDB.

A column definition may now include a GENERATED clause to specify that the column is a generated column. Generated columns can be generated as sequence numbers or expressions.

The column definition MIN and MAX clauses are no longer necessary. ElevateDB supports column constraints via the CHECK clause.

ElevateDB allows for specifying primary key, unique key, and foreign key constraints in a column definition.

The CHARCASE clause is no longer supported.

The COMPRESS clause has been renamed to COMPRESSION and moved so that it is next to the data type definition.

The NOCASE clause is no longer necessary in a primary key, unique key, or foreign key (new) constraint definition. ElevateDB uses the collation defined for the column in the column definition for determining the collation of these types of constraints. Please see the Internationalization topic for more information.

The DESC and ASC clauses are no longer supported in a primary key, unique key, or foreign key (new) constraint definition. Use the CREATE INDEX statement in ElevateDB to create an index with custom column sorting.

The COMPRESS clause is no longer supported in a primary key, unique key, or foreign key (new) constraint definition. ElevateDB performs automatic index compression as necessary.

The TEXT INDEX, STOP WORDS, SPACE CHARS, and INCLUDE CHARS clauses are no longer necessary. Use the CREATE TEXT INDEX statement in ElevateDB to create a new text index.

The LOCALE clause is no longer necessary. ElevateDB supports column-level collations. Please see the Internationalization topic for more information.

The WITH clause of the ENCRYPTED clause is no longer necessary. ElevateDB uses one encryption password per application for all encryption, and it is represented by the EncryptionPassword property. Also, the ENCRYPTED clause now resides after the VERSION clause (see next item).

The USER MAJOR VERSION and USER MINOR VERSION clauses have been combined into one VERSION clause that accepts a NUMERIC value with a scale of 2. Also, the VERSION clause now resides after the DESCRIPTION clause.

The LAST AUTOINC clause is no longer necessary. The seed and increment values for IDENTITY columns can be specified in the column definitions.
CREATE INDEXThe IF NOT EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if an index exists. Please see the System Information topic for more information.

The UNIQUE clause is no longer supported. ElevateDB requires that unique keys constraints be defined using a constraint definition in a CREATE TABLE or ALTER TABLE statement.

The NOCASE clause is no longer necessary in an index definition. ElevateDB uses the collation defined for the column in the column definition for determining the default collation for the indexed columns, and also allows for the COLLATE clause to be used in the index definition in order to override the default column collation. Please see the Internationalization topic for more information.

The COMPRESS clause is no longer supported in an index definition. ElevateDB performs automatic index compression as necessary.
ALTER TABLEThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.

The IF EXISTS and IF NOT EXISTS clauses are no longer supported for column definitions. ElevateDB uses catalog queries to determine if a table column exists. Please see the System Information topic for more information.

The REDEFINE clause is no longer supported for column definitions. In order to redefine a column using the same column name, use the ALTER AS clause (see next). In order to rename a column, use the RENAME clause.

The ALTER clause is new for column definitions. This clause allows you to alter the DEFAULT expression, drop the default expression, change the DESCRIPTION of the column, move the column to a new position in the table using the MOVE TO clause, or alter the entire column definition using the AS clause.

The column definition AT clause has been moved to the end of the column definition.

The column definition NULLABLE clause is no longer supported. To make a column nullable in ElevateDB, don't include the NOT NULL clause.

The column definition DEFAULT clause accepts any basic expression in ElevateDB.

A column definition may now include a GENERATED clause to specify that the column is a generated column. Generated columns can be generated as sequence numbers or expressions.

The column definition MIN and MAX clauses are no longer necessary. ElevateDB supports column constraints via the CHECK clause.

ElevateDB allows for specifying primary key, unique key, and foreign key constraints in a column definition.

The CHARCASE clause is no longer supported.

The COMPRESS clause has been renamed to COMPRESSION and moved so that it is next to the data type definition.

The REDEFINE clause is no longer supported for constraint definitions. Use the RENAME clause to rename a constraint.

The NOCASE clause is no longer necessary in a primary key, unique key, or foreign key (new) constraint definition. ElevateDB uses the collation defined for the column in the column definition for determining the collation of these types of constraints. Please see the Internationalization topic for more information.

The DESC and ASC clauses are no longer supported in a primary key, unique key, or foreign key (new) constraint definition. Use the CREATE INDEX statement in ElevateDB to create an index with custom column sorting.

The COMPRESS clause is no longer supported in a primary key, unique key, or foreign key (new) constraint definition. ElevateDB performs automatic index compression as necessary.

The TEXT INDEX, STOP WORDS, SPACE CHARS, and INCLUDE CHARS clauses are no longer necessary. Use the CREATE TEXT INDEX statement in ElevateDB to create a new text index.

The LOCALE clause is no longer necessary. ElevateDB supports column-level collations. Please see the Internationalization topic for more information.

The WITH clause of the ENCRYPTED clause is no longer necessary. ElevateDB uses one encryption password per application for all encryption, and it is represented by the EncryptionPassword property. Also, the ENCRYPTED clause now resides after the VERSION clause (see next item).

The USER MAJOR VERSION and USER MINOR VERSION clauses have been combined into one VERSION clause that accepts a NUMERIC value with a scale of 2. Also, the VERSION clause now resides after the DESCRIPTION clause.

The LAST AUTOINC clause is no longer necessary. The seed and increment values for IDENTITY columns can be specified in the column definitions.

The NOBACKUP clause has been renamed to the NO BACKUP FILES clause.
DROP TABLEThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.
DROP INDEXThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if an index exists. Please see the System Information topic for more information.

The PRIMARY clause is no longer supported. ElevateDB does not allow a primary key to be dropped using the DROP INDEX statement. Instead, you must use the ALTER TABLE statement to add or drop constraints for a table.
IMPORT TABLEThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.

The COLUMNS clause has been renamed and the COLUMN portion has been dropped, retaining only the columns list in parentheses. Also, the clause has been moved so that it is right after the import file name.

The DELIMITER clause has been renamed to DELIMITER CHAR.

The QUOTE CHAR clause has been added to allow you to specify the quote character to be used for string values.

The DATE clause has been renamed to the DATE FORMAT clause.

The TIME clause has been renamed to the TIME FORMAT clause.

The DECIMAL clause has been renamed to the DECIMAL CHAR clause.

The BOOLEAN clause has been added to allow you to specify the literals used for True and False, respectively.

The WITH HEADERS clause has been renamed to the USE HEADERS clause and has been moved to right after the BOOLEAN clause.

The MAX ROWS clause has been added to allow you to specify the maximum number of rows that should be imported from the file.
EXPORT TABLEThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.

The COLUMNS clause has been renamed and the COLUMN portion has been dropped, retaining only the columns list in parentheses. Also, the clause has been moved so that it is right after the export file name.

The DELIMITER clause has been renamed to DELIMITER CHAR.

The QUOTE CHAR clause has been added to allow you to specify the quote character to be used for string values.

The DATE clause has been renamed to the DATE FORMAT clause.

The TIME clause has been renamed to the TIME FORMAT clause.

The DECIMAL clause has been renamed to the DECIMAL CHAR clause.

The BOOLEAN clause has been added to allow you to specify the literals used for True and False, respectively.

The WITH HEADERS clause has been renamed to the INCLUDE HEADERS clause and has been moved to right after the BOOLEAN clause.

The MAX ROWS clause has been added to allow you to specify the maximum number of rows that should be exported to the file.
OPTIMIZE TABLEThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.

The ON clause has been renamed to the USING INDEX clause.

The NOBACKUP clause has been renamed to the NO BACKUP FILES clause.
REPAIR TABLEThe IF EXISTS clause is no longer supported. ElevateDB uses catalog queries to determine if a table exists. Please see the System Information topic for more information.

The FORCEINDEXREBUILD clause is no longer supported.

New Statements
The following are the new statements:

NewDescription
CREATE DATABASECreates a new database.
ALTER DATABASEAlters an existing database.
DROP DATABASEDrops an existing database.
RENAME DATABASERenames an existing database.
CREATE STORECreates a new file store.
ALTER STOREAlters an existing file store.
DROP STOREDrops an existing file store.
RENAME STORERenames an existing file store.
CREATE USERCreates a new user.
ALTER USERAlters an existing user.
DROP USERDrops an existing user.
RENAME USERRenames an existing user.
CREATE ROLECreates a new role.
ALTER ROLEAlters an existing role.
DROP ROLEDrops an existing role.
RENAME ROLERenames an existing role.
GRANT PRIVILEGESGrants privileges to an existing user or role on a specified object.
REVOKE PRIVILEGESRevokes privileges for an existing user or role from an existing object.
GRANT ROLESGrants roles to an existing user.
REVOKE ROLESRevokes roles from an existing user.
CREATE JOBCreates a new job.
ALTER JOBAlters an existing job.
DROP JOBDrops an existing job.
RENAME JOBRenames an existing job.
CREATE MODULECreates (registers) a new external module.
ALTER MODULEAlters an existing external module.
DROP MODULEDrops an existing external module.
RENAME MODULERenames an existing external module.
CREATE TEXT FILTERCreates a new text filter.
ALTER TEXT FILTERAlters an existing text filter.
DROP TEXT FILTERDrops an existing text filter.
RENAME TEXT FILTERRenames an existing text filter.
CREATE WORD GENERATORCreates a new word generator.
ALTER WORD GENERATORAlters an existing word generator.
DROP WORD GENERATORDrops an existing word generator.
RENAME WORD GENERATORRenames an existing word generator.
CREATE MIGRATORCreates a new database migrator.
ALTER MIGRATORAlters an existing database migrator.
DROP MIGRATORDrops an existing database migrator.
RENAME MIGRATORRenames an existing database migrator.
CREATE TRIGGERCreates a new trigger on an existing table.
ALTER TRIGGERAlters an existing trigger.
DROP TRIGGERDrops an existing trigger from a table.
RENAME TRIGGERRenames an existing trigger on a table.
CREATE TEXT INDEXCreates a new text index on an existing table.
ALTER INDEXAlters an existing index.
CREATE VIEWCreates a new view.
ALTER VIEWAlters an existing view.
DROP VIEWDrops an existing view.
RENAME VIEWRenames an existing view.
CREATE FUNCTIONCreates a new function.
ALTER FUNCTIONAlters an existing function.
DROP FUNCTIONDrops an existing function.
RENAME FUNCTIONRenames an existing function.
CREATE PROCEDURECreates a new procedure.
ALTER PROCEDUREAlters an existing procedure.
DROP PROCEDUREDrops an existing procedure.
RENAME PROCEDURERenames an existing procedure.
SET BACKUPS STORESets the current backups store for ElevateDB.
BACKUP DATABASEBacks up an existing database.
RESTORE DATABASERestores a database from a backup.
PUBLISH DATABASEPublishes an existing database.
UNPUBLISH DATABASEUnpublishes a database.
SET UPDATES STORESets the current updates store for ElevateDB.
SAVE UPDATESSaves all logged updates to published tables in an existing database.
LOAD UPDATESLoads logged updates from an update file into an existing database.
COPY FILECopies a file in a store to a new file name, and optionally, store.
RENAME FILERenames a file in a store to a new file name.
DELETE FILEDeletes a file in a store.
SET FILES STORESets the current files store for ElevateDB.
DISCONNECT SERVER SESSIONDisconnects a server session on an ElevateDB Server.
REMOVE SERVER SESSIONRemoves a server session from an ElevateDB Server.
Image