Entering content frame

Component documentation Syntax List Locate the document in the library structure

The syntax notation used in this document is BNF.

Significant changes to the syntax as compared with database version 7.5 are described in the section Syntax Changes.

A

<add_definition> ::=
  ADD <column_definition>,...
| ADD (<column_definition>,...)
| ADD <constraint_definition>
| ADD <key_definition>
| ADD <referential_constraint_definition>

<alias_name> ::=
  <identifier>

<all_function> ::=
  <set_function_name>([ALL] <expression>)

<alter_definition> ::=
  ALTER CONSTRAINT <constraint_name> CHECK <search_condition>
| ALTER <key_definition>

<alter_index_statement> ::=
  ALTER INDEX <index_name> [ON <table_name>] ENABLE
| ALTER INDEX <index_name> [ON <table_name>] DISABLE
| ALTER INDEX <index_name> [ON <table_name>] INIT USAGE

<alter_password_statement>::=
  ALTER PASSWORD <old_password> TO <new_password>
| ALTER PASSWORD <user_name> <new_password>

<alter_table_statement> ::=
  ALTER TABLE <table_name> <add_definition>
| ALTER TABLE <table_name> <alter_definition>
| ALTER TABLE <table_name> <column_change_definition>
| ALTER TABLE <table_name> <drop_definition>
| ALTER TABLE <table_name> <modify_definition>
| ALTER TABLE <table_name> <referential_constraint_definition>
| ALTER TABLE <table_name> <sample_definition>

<alter_user_statement> ::=
  ALTER USER <user_name> [<user_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTWARNING <unsigned_integer> | COSTWARNING NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>] | DEFAULT ROLE NONE | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE ASCII]
    [DEFAULTCODE UNICODE]
    [<connect_mode>]

<alter_usergroup_statement> ::=
  ALTER USERGROUP <usergroup_name> [<usergroup_mode>]
    [TIMEOUT <unsigned_integer> | TIMEOUT NULL]
    [COSTWARNING <unsigned_integer> | COSTWARNING NULL]
    [COSTLIMIT <unsigned_integer> | COSTLIMIT NULL]
    [DEFAULT ROLE ALL [EXCEPT <role_name>] | DEFAULT ROLE NONE | DEFAULT ROLE <role_name>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE ASCII]
    [DEFAULTCODE UNICODE]
    [<connect_mode>]

<argument> ::=
  <identifier>

<argument1> ::=
  <identifier>

<arithmetic_function> ::=
  ABS (<expression> )
| CEIL ( <expression> )
| EXP ( <expression> )
| FIXED ( <expression>[, <unsigned_integer> [, <unsigned_integer>] ] )
| FLOAT ( <expression>[, <unsigned_integer> ] )
| FLOOR ( <expression> )
| INDEX ( <string_spec>, <string_spec> [,<expression>[, <expression>] ] )
| LENGTH ( <expression> )
| LN ( <expression> )
| LOG ( <expression>, <expression> )
| NOROUND ( <expression> )
| PI
| POWER ( <expression>, <expression> )
| ROUND ( <expression>[, <expression>] )
| SIGN ( <expression> )
| SQRT ( <expression> )
| TRUNC ( <expression>[, <expression>] )

<ASCII_or_UNICODE> ::=
  ASCII
| UNICODE

<assignment_statement> ::=
  SET <variable_name> = <expression>

B

<between_predicate> ::=
  <expression> [NOT] BETWEEN <expression> AND <expression>

<bool_predicate> ::=
  <column_spec> [IS [NOT] TRUE | IS [NOT] FALSE]

<boolean_factor> ::=
  [NOT] <predicate>
| [NOT] (<search_condition>)

<boolean_term> ::=
  <boolean_factor>
| <boolean_term> AND <boolean_factor>

C

<call_statement> ::=
  CALL <dbproc_name> [(<expression>,...)] [WITH COMMIT]

<cascade_option> ::=
  CASCADE
| RESTRICT

<case_else_clause> ::=
  ELSE <statement>;

<case_function> ::=
  <simple_case_function>
| <searched_case_function>

<case_statement> ::=
  <simple_case_statement>
| <searched_case_statement>

<character> ::=
  <digit>
| <letter>
| <extended_letter>
| <hex_digit>
| <language_specific_character>
| <special_character>

<check_expression> ::=
  <expression>

<close_statement> ::=
  CLOSE [<result_table_name>]

<column_attributes> ::=
  [<key_or_not_null_spec>] [<default_spec>] [UNIQUE] [<constraint_definition>]
    [REFERENCES <referenced_table> [(<referenced_column>)] [<delete_rule>]]

<column_change_definition> ::=
  
COLUMN <column_name> ADD <default_spec>
| COLUMN <column_name> ALTER <default_spec>
| COLUMN <column_name> DEFAULT NULL
| COLUMN <column_name> DROP DEFAULT
| COLUMN <column_name> NOT NULL

<column_definition> ::=
  <column_name> <data_type> [<column_attributes>]
| <column_name> <domain_name> [<column_attributes>]

<column_list> ::=
  <column_name>
| <column_list>, <column_name>

<column_name> ::=
  <identifier>

<column_spec> ::=
  <column_name>
| <table_name>.<column_name>
| <reference_name>.<column_name>
| <result_table_name>.<column_name>

<comment> ::=
  <string_literal>
| <parameter_name>

<comment_on_statement> ::=
  COMMENT ON <object_spec> IS <comment>

<commit_statement> ::=
  COMMIT [WORK]

<comp_op> ::=
  <
| >
| <>
| !=
| =
| <=
| >=
| ~= <!  
for computers with ASCII code  !>
| ~< <!  
for computers with ASCII code  !>
| ~> <!  
for computers with ASCII code     !>

<comparison_predicate> ::=
  <expression> <comp_op> <expression>
| <expression> <comp_op> <subquery>
| <expression_list> <equal_or_not> (<expression_list>)
| <expression_list> <equal_or_not> <subquery>

<connect_mode> ::=
  ENABLE CONNECT
| DISABLE CONNECT

<connect_option> ::=
  SQLMODE <INTERNAL_ANSI_DB2_ORACLE>
| ISOLATION LEVEL <unsigned_integer>
| TIMEOUT <unsigned_integer>

<connect_statement> ::=
  CONNECT <parameter_name> IDENTIFIED BY <parameter_name> [<connect_option> ...]
| CONNECT <parameter_name> IDENTIFIED BY <password> [<connect_option> ...]
| CONNECT <user_name> IDENTIFIED BY <parameter_name> [<connect_option> ...]
| CONNECT <user_name> IDENTIFIED BY <password> [<connect_option> ...]

<constraint_definition> ::=
  CHECK <search_condition>
| CONSTRAINT <search_condition>
| CONSTRAINT <constraint_name> CHECK <search_condition>

<constraint_name> ::=
  <identifier>

<conversion_function> ::=
  
CHAR (<expression>[,<datetimeformat>])
| CHR (<expression>[,<unsigned_integer>])
| HEX (<expression>)
| HEXTORAW (<expression>)
| NUM (<expression>)

<create_dbproc_statement> ::=
  CREATE DBPROC[EDURE] <dbproc_name> [(<formal_parameter>,...)] [RETURNS CURSOR] AS <routine>

<create_domain_statement> ::=
  CREATE DOMAIN <domain_name> <data_type> [<default_spec>] [<constraint_definition>]

<create_function_statement> ::=
  CREATE [PUBLIC] FUNCTION <dbfunction_name>
    [(<formal_parameter1>,...)] RETURNS <data_type> [DETERMINISTIC] AS <routine>

<create_index_statement> ::=
  CREATE [UNIQUE] INDEX <index_name> ON <table_name> (<index_spec>)

<create_role_statement> ::=
  CREATE ROLE <role_name> [IDENTIFIED BY <password>]

<create_schema_statement> ::=
  CREATE SCHEMA <schema_name_clause> [<schema_element> ...]

<create_sequence_statement> ::=
  CREATE SEQUENCE [<schema_name>.]<sequence_name>
    [INCREMENT BY <integer>]
    [START WITH <integer>]
    [MAXVALUE <integer> | NOMAXVALUE]
    [MINVALUE <integer> | NOMINVALUE]
    [CYCLE | NOCYCLE]
    [CACHE <unsigned_integer> | NOCACHE]
    [ORDER | NOORDER]

<create_synonym_statement> ::=
  CREATE [PUBLIC] SYNONYM [<schema_name>.]<synonym_name> FOR <table_name>

<create_system_trigger_statement> ::=
  CREATE SYSTEM TRIGGER [<schema_name>.]<trigger_name> AFTER RESTART EXECUTE (<routine>)

<create_table_statement> ::=
  CREATE TABLE <table_name> (<column_definition> [,<table_description_element>,...])
    [IGNORE ROLLBACK] [<sample_definition>]
| CREATE TABLE <table_name> [(<table_description_element>,...)]
    [IGNORE ROLLBACK] [<sample_definition>]
    AS <query_expression> [<duplicates_clause>]
| CREATE TABLE <table_name> LIKE <table_name> [IGNORE ROLLBACK]

<create_table_temp> :: =
  
<!  <create_table_statement> for creating temporary tables, that is,
      the table name table_name in the CREATE TABLE statement
      must have the form TEMP.<identifier>.  !>

<create_trigger_statement> ::=
  CREATE TRIGGER <trigger_name> FOR <table_name> AFTER <trigger_event>,...
    EXECUTE (<routine>) [WHENEVER <search_condition>]

<create_user_statement> ::=
  CREATE USER <user_name> PASSWORD <password>
    [<user_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTWARNING <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE <ASCII_or_UNICODE>]
    [<connect_mode>]
| CREATE USER <user_name> PASSWORD <password> LIKE <source_user>
| CREATE USER <user_name> PASSWORD <password> USERGROUP <usergroup_name>

<create_usergroup_statement> ::=
  CREATE USERGROUP <usergroup_name>
    [<usergroup_mode>]
    [TIMEOUT <unsigned_integer>]
    [COSTWARNING <unsigned_integer>]
    [COSTLIMIT <unsigned_integer>]
    [[NOT] EXCLUSIVE]
    [DEFAULTCODE ASCII_or_UNICODE]
    [<connect_mode>]

<create_view_statement> ::=
  CREATE [OR REPLACE] VIEW <table_name> [(<alias_name>,...)]
    AS <query_expression> [WITH CHECK OPTION]

D

<data_type> ::=
  CHAR[ACTER] [(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| VARCHAR [(<unsigned_integer>)] [ASCII | BYTE | UNICODE]
| LONG [VARCHAR] [ASCII | BYTE | UNICODE]
| BOOLEAN
| FIXED (<unsigned_integer> [,<unsigned_integer>])
| FLOAT (<unsigned_integer>)
| INT[EGER]
| SMALLINT
| DATE
| TIME
| TIMESTAMP

<date_function> ::=
  ADDDATE (<date_or_timestamp_expression>, <expression>)
| DATEDIFF ( <date_or_timestamp_expression>, <date_or_timestamp_expression> )
| DAYNAME ( <date_or_timestamp_expression> )
| DAYOFMONTH ( <date_or_timestamp_expression> )
| DAYOFWEEK ( <date_or_timestamp_expression> )
| DAYOFYEAR ( <date_or_timestamp_expression> )
| MAKEDATE ( <expression>, <expression> )
| MONTHNAME ( <date_or_timestamp_expression> )
| SUBDATE ( <date_or_timestamp_expression>, <expression> )
| WEEKOFYEAR ( <date_or_timestamp_expression> )

<date_or_timestamp_expression> ::=
  <expression>

<datetimeformat> ::=
  EUR
| INTERNAL
| ISO
| JIS
| USA

<dbfunction_call> ::=
  <dbfunction_name> ( [<expression>,...] )

<dbfunction_name> ::=
  [<schema_name>.]<identifier>

<dbproc_name> ::=
  [<schema_name>.]<identifier>

<declare_cursor_statement> ::=
  DECLARE <result_table_name> CURSOR FOR <select_statement>

<default_expression> ::=
  <expression>

<default_predicate> ::=
  <column_spec> <comp_op> DEFAULT

<default_spec> ::=
  DEFAULT <literal>
| DEFAULT NULL
| DEFAULT USER
| DEFAULT USERGROUP
| DEFAULT SYSDBA
| DEFAULT DATE
| DEFAULT TIME
| DEFAULT TIMESTAMP
| DEFAULT UTCDATE
| DEFAULT UTCDIFF
| DEFAULT TIMEZONE
| DEFAULT TRUE
| DEFAULT FALSE
| DEFAULT TRANSACTION
| DEFAULT STAMP
| DEFAULT SERIAL[(<unsigned_integer>)]

<delete_rule> ::=
  ON DELETE CASCADE
| ON DELETE RESTRICT
| ON DELETE SET DEFAULT
| ON DELETE SET NULL

<delete_statement> ::=
  DELETE [FROM] <table_name> [<reference_name>]
    [KEY <key_spec>,...] [WHERE <search_condition>] [IGNORE TRIGGER] [NOWAIT]
| DELETE [FROM] <table_name> [<reference_name>]
    WHERE CURRENT OF <result_table_name> [NOWAIT]

<delimiter_token> ::=
  <vertical_slash> | , | . | + | - | * | / | < | > | <> | != | = | <= | >=
  | ~= <!  
for computers with ASCII code  !>
  | ~< <!  
for computers with ASCII code  !>
| ~> <!  
for computers with ASCII code     !>

<derived_column> ::=
  <expression> [ [AS] <result_column_name>]

<digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

<digit_sequence> ::=
  <digit>...

<distinct_function> ::=
  <set_function_name>(DISTINCT <expression>)

<distinct_spec> ::=
  DISTINCT
| ALL

<domain_name> ::=
  [<schema_name>.]<identifier>

<double_quotes> ::=
  "

<drop_dbproc_statement> ::=
  DROP DBPROC[EDURE] <dbproc_name>

<drop_definition> ::=
  DROP <column_name>,... [<cascade_option>] [RELEASE SPACE]
| DROP (<column_name>,...) [<cascade_option>] [RELEASE SPACE]
| DROP CONSTRAINT <constraint_name>
| DROP FOREIGN KEY <referential_constraint_name>
| DROP PRIMARY KEY

<drop_domain_statement> ::=
  DROP DOMAIN <domain_name>

<drop_function_statement> ::=
  DROP [PUBLIC] FUNCTION <dbfunction_name>

<drop_index_statement> ::=
  DROP INDEX <index_name> [ON <table_name>]

<drop_role_statement> ::=
  DROP ROLE <role_name>

<drop_schema_statement> ::=
  DROP SCHEMA <schema_name> [<cascade_option>]

<drop_sequence_statement> ::=
  DROP SEQUENCE [<schema_name>.]<sequence_name>

<drop_synonym_statement> ::=
  DROP [PUBLIC] SYNONYM [<schema_name>.]<synonym_name>

<drop_system_trigger_statement> ::=
  DROP SYSTEM TRIGGER [<schema_name>.]<trigger_name>

<drop_table_statement> ::=
  DROP TABLE <table_name> [<cascade_option>]

<drop_table_temp> ::=
  DROP TABLE TEMP.<identifier>

<drop_trigger_statement> ::=
  DROP TRIGGER <trigger_name> OF <table_name>

<drop_user_statement> ::=
  DROP USER <user_name> [<cascade_option>]

<drop_usergroup_statement> ::=
  DROP USERGROUP <usergroup_name> [<cascade_option>]

<drop_view_statement> ::=
  DROP VIEW <table_name> [<cascade_option>]

<duplicates_clause> ::=
  REJECT DUPLICATES
| IGNORE DUPLICATES
| UPDATE DUPLICATES

E

<equal_or_not> ::=
  <>
| =
| ~= <!  
for computer with ASCII code  !>

<exists_predicate> ::=
  EXISTS <subquery>

<exists_table_statement> ::=
  EXISTS TABLE <table_name>

<explain_statement> ::=
  EXPLAIN [(<result_table_name>)] <query_statement>
| EXPLAIN [(<result_table_name>)] <single_select_statement>

<exponent> ::=
  [<sign>][[<digit>]<digit>]<digit>

<expression> ::=
  <term>
| <expression> + <term>
| <expression> - <term>

<expression_list> ::=
  (<expression>,...)

<extended_expression> ::=
  <expression>
| DEFAULT
| STAMP

<extended_letter> ::=
  #
| @
| $

<extended_value_spec> ::=
  DEFAULT
| STAMP
| <value_spec>

<extraction_function> ::=
  DATE ( <expression> )
| DAY ( <date_or_timestamp_expression> )
| HOUR ( <time_or_timestamp_expression> )
| MICROSECOND ( <expression> )
| MINUTE ( <time_or_timestamp_expression> )
| MONTH ( <date_or_timestamp_expression> )
| SECOND ( <time_or_timestamp_expression> )
| TIME ( <expression> )
| TIMESTAMP ( <expression>[, <expression> ] )
| YEAR ( <date_or_timestamp_expression> )

F

<factor> ::=
  [<sign>] <value_spec>
| [<sign>] <column_spec>
| [<sign>] <function_spec>
| [<sign>] <set_function_spec>
| <scalar_subquery>
| <expression>

<fetch_statement> ::=
  FETCH [FIRST | LAST | NEXT | PREV | <position> | SAME] [<result_table_name>]
    INTO <parameter_spec>,...

<final_select> ::=
  <select_statement>

<first_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>

<first_password_character> ::=
  <letter>
| <extended_letter>
| <language_specific_character>
| <digit>

<fixed_point_literal> ::=
  [<sign>]<digit_sequence>[.<digit_sequence>]
| [<sign>]<digit_sequence>.
| [<sign>].<digit_sequence>

<floating_point_literal> ::=
  <mantissa>E<exponent>
| <mantissa>e<exponent>

<formal_parameter> ::=
  IN <argument> <data_type>
| OUT <argument> <data_type>
| INOUT <argument> <data_type>

<formal_parameter1> ::=
  <argument1> <data_type>

<from_clause> ::=
  FROM <from_table_spec>,...

<from_table_spec> ::=
  <table_name> [AS][<reference_name>]
| <result_table_name> [AS][<reference_name>]
| (<query_expression>) [AS][<reference_name>]
| <joined_table>

<function_spec> ::=
  <arithmetic_function>
| <conversion_function>
| <date_function>
| <dbfunction_call>

| <extraction_function>
| <special_function>
| <string_function>
| <time_function>
| <trigonometric_function>

G

<grant_statement> ::=
  GRANT <priv_spec>,... TO <grantee>,... [WITH GRANT OPTION]
| GRANT <schema_priv_spec> TO <grantee>,...

| GRANT EXECUTE ON <dbproc_name> TO <grantee>,...
| GRANT EXECUTE ON <dbfunction_name> TO <grantee>,...

| GRANT SELECT ON <sequence_name> TO <grantee>,... [WITH GRANT OPTION]

<grant_user_statement> ::=
  GRANT USER <granted_users> [FROM <user_name>] TO <user_name>

<grant_usergroup_statement> ::=
  GRANT USERGROUP <granted_usergroups> [FROM <user_name>] TO <user_name>

<granted_usergroups> ::=
  <usergroup_name>,...
| *

<granted_users> ::=
  <user_name>,...
| *

<grantee> ::=
  <user_name>
| <usergroup_name>
| <role_name>
| PUBLIC

<group_clause> ::=
  GROUP BY <expression>,...

H

<having_clause> ::=
  HAVING <search_condition>

<hex_digit> ::=
  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
| A | B | C | D | E | F
| a | b | c | d | e | f

<hex_digit_seq> ::=
  <hex_digit><hex_digit>
| <hex_digit_seq><hex_digit><hex_digit>

<hex_literal> ::=
  x''
| X''
| x'<hex_digit_seq>'
| X'<hex_digit_seq>'

<hours> ::=
  <expression>

I

<identifier> ::=
  <simple_identifier>
| <double_quotes><special_identifier><double_quotes>

<identifier_tail_character> ::=
  <digit>
| <letter>
| <extended_letter>
| <language_specific_character>
| <underscore>

<if_statement> ::=
  IF <search_condition> THEN <statement> [ELSE <statement>]

<in_predicate> ::=
  <expression> [NOT] IN <subquery>
| <expression> [NOT] IN <expression_list>
| <expression_list> [NOT] IN <subquery>
| <expression_list> [NOT] IN (<expression_list>,...)

<index_column_name> ::=
  <column_name> [ASC|DESC]

<index_name> ::=
  <identifier>

<index_spec> ::=
  <index_column_name>,...
| <dbfunction_name> (<column_name>,...) [ASC|DESC]

<indicator_name> ::=
  <parameter_name>

<initial_select> ::=
  <query_spec>

<inner_transaction_statement> ::=
  INNER TRANSACTION BEGIN
| INNER TRANSACTION COMMIT
| INNER TRANSACTION ROLLBACK

<insert_expression> ::=
  <extended_expression>
| <subquery>

<insert_statement> ::=
  INSERT [INTO] <table_name> [(<column_name>,...)]
  VALUES (<insert_expression>,...) [<duplicates_clause>] [IGNORE TRIGGER]
[NOWAIT]
| INSERT [INTO] <table_name> [(<column_name>,...)]
    <query_expression> [<duplicates_clause>] [IGNORE TRIGGER]
[NOWAIT]
| INSERT [INTO] <table_name> SET <set_insert_clause>,...
    [<duplicates_clause>] [IGNORE TRIGGER]
[NOWAIT]

<integer> ::=
  [<sign>]<unsigned_integer>

<INTERNAL_ANSI_DB2_ORACLE> ::=
  INTERNAL
| ANSI
| DB2
| ORACLE

J

<join_predicate> ::=
  <expression> [<outer_join_indicator>] <comp_op> <expression> [<outer_join_indicator>]

<join_spec> ::=
  ON <search_condition>

<joined_table> ::=
  <from_table_spec> CROSS JOIN <from_table_spec>
| <from_table_spec> [INNER] JOIN <from_table_spec> <join_spec>
| <from_table_spec> [LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER]] JOIN
    <from_table_spec> <join_spec>

K

<key_definition> ::
  PRIMARY KEY (<column_name>,...)

<key_or_not_null_spec> ::=
  [PRIMARY] KEY
| NOT NULL [WITH DEFAULT]

<key_spec> ::=
  <column_name> = <value_spec>

<key_word> ::=
  <not_reserved_key_word>
| <reserved_key_word>

L

<language_specific_character> ::=
  <!  <every letter that occurs in a Northern, Central, or Southern European language
   and is not included in the <letter> list>
| <for UNICODE-enabled databases: every character that is not included in the
   ASCII code list from 0 to 127>  !>

<letter> ::=
  A | B | C | D | E | F | G | H | I | J | K | L | M
| N | O | P | Q | R | S | T | U | V | W | X | Y | Z
| a | b | c | d | e | f | g | h | i | j | k | l | m
| n | o | p | q | r | s | t | u | v | w | x | y | z

<like_expression> ::=
  <expression>
| '<pattern_element>...'

<like_predicate> ::=
  <expression> [NOT] LIKE <like_expression> [ESCAPE <expression>]

<limit_clause> ::=
  LIMIT <row_count>
| LIMIT <offset>,<row_count>

<literal> ::=
  <string_literal>
| <numeric_literal>

<local_variable> ::=
  <variable_name> <data_type>

<local_variable_list> ::=
  <local_variable>
| <local_variable_list>;<local_variable>

<local_variables> ::=
  VAR <local_variable_list>;

<lock_option> ::=
  WITH LOCK [(IGNORE)|(NOWAIT)] [EXCLUSIVE | OPTIMISTIC] [ISOLATION LEVEL <unsigned_integer>]

<lock_spec> ::=
  TABLE <table_name>,...
| <row_spec> ...
| TABLE <table_name>,... <row_spec> ...

<lock_statement> ::=
  LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN EXCLUSIVE MODE
| LOCK [(WAIT)|(NOWAIT)] <row_spec> ... OPTIMISTIC
| LOCK [(WAIT)|(NOWAIT)] <lock_spec> IN SHARE MODE <lock_spec> IN EXCLUSIVE MODE

M

<mantissa> ::=
  <fixed_point_literal>

<mapchar_set_name> ::=
  <identifier>

<match_char> ::=
  <!  
Every character except
    %
  | X'1F'
  | <underscore>
  | X'1E'   !>

<match_set> ::=
  <underscore>
| X'1E'
| <match_char>

<match_string> ::=
  %
| X'1F'

<minutes> ::=
  <expression>

<modify_column_definition> ::=
  
<column_name> <data_type> <column_attributes>
| <column_name> <data_type>
| <column_name> <column_attributes>

<modify_definition> ::=
  MODIFY (<modify_column_definition>,...)

<monitor_statement> ::=
  MONITOR INIT

N

<new_index_name> ::=
  <index_name>

<new_password> ::=
  <password>

<new_schema_name> ::=
  <schema_name>

<new_synonym_name> ::=
  <synonym_name>

<new_table_name> ::=
  <table_name>

<new_user_name> ::=
  <user_name>

<new_usergroup_name> ::=
  <usergroup_name>

<next_stamp_statement> ::=
  NEXT STAMP [INTO] <parameter_name>

<not_reserved_key_word> ::=

ADD

ADDRESS

ADD_MONTHS

AFTER

ALTERIN

ANALYZE

AND

ANSI

APPEND

ARCHIVE

AS

ASC

AT

AUTHORIZATION

AUTO

AUTOSAVE

BACKUP_PAGES

BAD

BEFORE

BEGIN

BEGINLOAD

BEGINPROC

BETWEEN

BLOCK

BLOCKSIZE

BOTH

BREAK

BUFFER

BUFFERPOOL

BWHIERARCHY

BY

 

CACHE

CACHELIMIT

CACHES

CALL

CANCEL

CASCADE

CATALOG

CATCH

CHECKPOINT

CLEAR

CLOSE

CLUSTER

COMMENT

COMMIT

COMPUTE

CONFIG

CONNECT

CONSTRAINTS

CONTAINER

CONTINUE

COSTLIMIT

COSTWARNING

CREATE

CREATEIN

CURRENT_DATE

CURRENT_SCHEMA

CURRENT_TIME

CURRENT_TIMESTAMP

CURRVAL

CURSOR

CYCLE

 

DATA

DAYS

DB2

DBA

DBPROC

DBPROCEDURE

DB_ABOVE_LIMIT

DB_BELOW_LIMIT

DEBUG

DECLARE

DEFAULTCODE

DEGREE

DESC

DESCRIBE

DEVICE

DIAGNOSE

DIMENSION

DISABLE

DIV

DO

DOMAIN

DROP

DROPIN

DSETPASS

DUPLICATES

DYNAMIC

 

 

EDITPROC