home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC Treasures, Inc.
/
pctreasures.mdf
/
WINDOWS
/
adabas
/
f_0001
/
env
/
sql.enh
< prev
next >
Wrap
Text File
|
1999-11-01
|
308KB
|
3,935 lines
ENG|09 | 0| | SQL.enh 6.1.1.16 1997-10-22
ENG|09 | 1| | SQL Help Functions
ENG|09 | 2| | ------------------
ENG|09 | 4| M| #01Connecting^and^Disconnecting (CONNECT)
ENG|09 | 5| M| #02Data^Definition (CREATE, ALTER, DROP)
ENG|09 | 6| M| #03Data^Manipulation (INSERT, UPDATE, DELETE)
ENG|09 | 7| M| #04Data^Retrieval (SELECT)
ENG|09 | 8| M| #05Common^Elements
ENG|09 | 9| M| #06Transaction^Concept (COMMIT, ROLLBACK, LOCK)
ENG|09 | 10| M| #07Authorization (CREATE USER, GRANT, REVOKE)
ENG|09 | 11| M| #11Statistics,^Monitoring
ENG|09 | 12| M| #10SQL Syntax Reference
ENG|09 | 13| M| #12System Tables
ENG|09 | 14|RM| #09SQLMODEs
ENG|0901 | 1| | Connecting and Disconnecting
ENG|0901 | 2| | ----------------------------
ENG|0901 | 4| M| #01Opening^a^Database^Session (CONNECT)
ENG|0901 | 5| M| #02Closing^a^Database^Session
ENG|0901 | 6|RM| #03ISOLATION^LEVEL
ENG|090101 | 1| | Opening a Database Session (CONNECT)
ENG|090101 | 3| I| Connecting to the database is done by issuing a ##091028<connect^statement>. If
ENG|090101 | 4| | a valid combination of <user name> and value for the <password spec> is
ENG|090101 | 5| | specified, the user opens a session, obtaining access to the database;
ENG|090101 | 6| | a transaction is opened implicitly. Thus the user is the current user
ENG|090101 | 7| | in the session. The database system ADABAS is able to execute correct
ENG|090101 | 8| | programs that are written according to the ANSI standard (ANSI X3.135-
ENG|090101 | 9| | 1992, Entry SQL), or according to the definition of the DB2 Version 3
ENG|090101 | 10| | or according to the definition of ORACLE7. One of the above-mentioned
ENG|090101 | 11| | definitions can be choosen by specifying SQLMODE <sqlmode spec>.
ENG|090101 | 12| | Default is SQLMODE ADABAS.
ENG|090101 | 13| | There is the option to specify some parameters in the <connect
ENG|090101 | 14| | statement> which, within the limits valid for the user, can be set
ENG|090101 | 15|S | specifically for this session.
ENG|090101 | 19| | A user connect is to be performed from a C program. The user wants to
ENG|090101 | 20| | work in SQLMODE ANSI, define a maximum inactivity timeout of 300
ENG|090101 | 21| | seconds, use a session-specific cache of 20 KB and a special character
ENG|090101 | 22| | set for the terminal as well as ensure the highest possible degree of
ENG|090101 | 23| | data consistency, restricting simultaneous access to the data.
ENG|090101 | 25| E| EXEC SQL
ENG|090101 | 26| E| CONNECT :username
ENG|090101 | 27| E| IDENTIFIED BY :password
ENG|090101 | 28| E| SQLMODE ANSI
ENG|090101 | 29| E| TIMEOUT 300
ENG|090101 | 30| E| CACHELIMIT 5
ENG|090101 | 31| E| ISOLATION LEVEL 3
ENG|090101 | 32| E| TERMCHAR SET termxdeu;
ENG|090101 | 34|RI| ##091028Syntax
ENG|090102 | 1| | Closing a Database Session
ENG|090102 | 3| I| An active database session is ended by issuing the ##09102801<release^statement>.
ENG|090102 | 4| | COMMIT WORK RELEASE concludes the current transaction, without opening
ENG|090102 | 5| | a new one. The session of the user is ended. ROLLBACK WORK RELEASE
ENG|090102 | 6| | aborts the current transaction without opening a new one. Any database
ENG|090102 | 7| | modifications performed during the transaction are undone. The session
ENG|090102 | 8| | of the user is ended.
ENG|090102 | 10| | The database session of the active database user is to be ended within
ENG|090102 | 11| | a program. When doing so, the last transaction should be regarded as
ENG|090102 | 12| | correct and be concluded.
ENG|090102 | 14| E| COMMIT WORK RELEASE
ENG|090102 | 16|RI| ##09102801Syntax
ENG|090103 | 1| | ISOLATION LEVEL
ENG|090103 | 3| I| The specification of an ISOLATION LEVEL within the ##091028<connect^statement>
ENG|090103 | 4| | can be used to influence the relation between the highest possible
ENG|090103 | 5| | degree of concurrency of different applications and the consistency of
ENG|090103 | 6| | the data. Default for the ISOLATION LEVEL is 1. The lower the value of
ENG|090103 | 7| | the <isolation spec> the higher the degree of concurrency and the lower
ENG|090103 | 8| | the guaranteed consistency. This makes it always necessary to find a
ENG|090103 | 9| | compromise between concurrency and consistency, which best suits the
ENG|090103 | 10| | requirements of an application. The following phenomena are possible
ENG|090103 | 11| | for the different ISOLATION LEVELs:
ENG|090103 | 12| | | ISO 0 | ISO 1| | ISO 2| ISO 3
ENG|090103 | 13| | | ISO 0 | ISO 10| ISO 15| ISO 20| ISO 30
ENG|090103 | 14| | --------------------+-------+-------+-------+-------+-------
ENG|090103 | 15| M| #01Dirty^Read | + | - | - | - | -
ENG|090103 | 16| M| #02Non-Repeatable^Read | + | + | + | - | -
ENG|090103 | 17|RM| #03Phantom | + | + | + | + | -
ENG|09010301 | 1| | Dirty Read Phenomenon
ENG|09010301 | 3| | A row is modified in a transaction T1, and a transaction T2 reads this
ENG|09010301 | 4| | row before T1 has been concluded with the <commit statement>. T1 then
ENG|09010301 | 5| | performs the <rollback statement>; i.e., T2 has read a row which never
ENG|09010301 | 6| | actually existed. This phenomenon is known as the dirty read
ENG|09010301 | 7|R | phenomenon.
ENG|09010302 | 1| | Non-Repeatable Read Phenomenon
ENG|09010302 | 3| | A transaction T1 reads a row. A transaction T2 then updates or deletes
ENG|09010302 | 4| | this row, concluding with the <commit statement>. If T1 subsequently
ENG|09010302 | 5| | reads the row again, T1 either receives the updated row or a message
ENG|09010302 | 6| | saying that the row no longer exists. This phenomenon is known as the
ENG|09010302 | 7|R | non-repeatable read phenomenon.
ENG|09010303 | 1| | Phantom Read Phenomenon
ENG|09010303 | 3| | A transaction T1 executes an <sql statement> S, which reads a set of
ENG|09010303 | 4| | rows SR satisfying a <search condition>. A transaction T2 then uses
ENG|09010303 | 5| | either the <insert statement> or the <update statement> to create at
ENG|09010303 | 6| | least one additional row which also satisfies the <search condition>.
ENG|09010303 | 7| | If S is subsequently re-executed within T1, the set of read rows will
ENG|09010303 | 8|R | differ from SR. This phenomenon is known as the phantom phenomenon.
ENG|0902 | 1| | Data Definition
ENG|0902 | 2| | ---------------
ENG|0902 | 4| M| #01Creating^a^Table (CREATE TABLE)
ENG|0902 | 5| M| #02Altering^a^Table (ALTER TABLE)
ENG|0902 | 6| M| #03Dropping^a^Table (DROP TABLE)
ENG|0902 | 7| M| #04Defining^Domains (CREATE DOMAIN)
ENG|0902 | 8| M| #05Dropping^Domains (DROP DOMAIN)
ENG|0902 | 9| M| #06Synonyms (CREATE/DROP SYNONYM)
ENG|0902 | 10| M| #13Creating^a^Snapshot^Table (CREATE SNAPSHOT)
ENG|0902 | 11| M| #14Dropping^a^Snapshot^Table (DROP SNAPSHOT)
ENG|0902 | 12| M| #15Snapshot^Logs (CREATE/DROP SNAPSHOT LOG)
ENG|0902 | 13| M| #07Creating^Views (CREATE VIEW)
ENG|0902 | 14| M| #08Dropping^Views (DROP VIEW)
ENG|0902 | 15| M| #09Secondary^Indexes (CREATE/DROP INDEX)
ENG|0902 | 17| M| #10Renaming (RENAME)
ENG|0902 | 18|SM| #11Check^for^Existence (EXISTS)
ENG|0902 | 19|RM| #16Comments (COMMENT ON)
ENG|090201 | 1| | Creating a Table
ENG|090201 | 2| | ----------------
ENG|090201 | 4| M| #01Basic^Structure
ENG|090201 | 5| M| #02Data^Types
ENG|090201 | 6| M| #03Primary^Key^Concept
ENG|090201 | 7| M| #04Constraint^Definition
ENG|090201 | 8| M| #05Referential^Constraint^Definition
ENG|090201 | 9| M| #06Distribution
ENG|090201 | 10| M| #07Copying^a^Table^Structure
ENG|090201 | 11|RM| #08Copying^a^Table^Structure^and^Data^Rows
ENG|09020101 | 1| | Basic Structure
ENG|09020101 | 3| I| A base table is created by using the ##091010<create^table^statement>. The data
ENG|09020101 | 4| | types of the individual table columns are defined in this statement,
ENG|09020101 | 5| | and it is possible to define there a primary key as well as conditions
ENG|09020101 | 6| | for and relationships between table columns. As a result of the
ENG|09020101 | 7| | execution of this SQL statement data is stored in the catalog
ENG|09020101 | 8| | describing the table. This data is called meta data. It is stored on
ENG|09020101 | 9| | the HOME SERVERDB of the executing user. Any table rows inserted with
ENG|09020101 | 10|SI| the ##091024<insert^statement> are also stored on this SERVERDB.
ENG|09020101 | 19| | A customer table is to be defined containing the first name and the
ENG|09020101 | 20| | name, a customer number, title, zip code, address, and budget. The
ENG|09020101 | 21| | customer number has to serve as the primary key. The budget of a
ENG|09020101 | 22| | customer is to be checked as to whether it lies in the range of $1000
ENG|09020101 | 23| | and $10000. If the value is not within this range, the data row is to
ENG|09020101 | 24| | be rejected. The name column is to be provided as mandatory column.
ENG|09020101 | 26| E| CREATE TABLE customer
ENG|09020101 | 27| E| ( cno FIXED (4),
ENG|09020101 | 28| E| title CHAR (7),
ENG|09020101 | 29| E| firstname CHAR (10),
ENG|09020101 | 30| E| name CHAR (10) NOT NULL,
ENG|09020101 | 31| E| zip CHAR (5),
ENG|09020101 | 32| E| address CHAR (25),
ENG|09020101 | 33| E| budget FIXED (7,2) CHECK budget BETWEEN 1000.0 AND 10000.0,
ENG|09020101 | 34| E| PRIMARY KEY (cno) )
ENG|09020101 | 36|RI| ##091010Syntax
ENG|09020102 | 1| | Data Types
ENG|09020102 | 3| | To store various pieces of information in a table, different data types
ENG|09020102 | 4| | are available for the definition of table columns.
ENG|09020102 | 6| | A table is to be defined in which different letter texts can be
ENG|09020102 | 7| | administered.
ENG|09020102 | 9| E| CREATE TABLE letters
ENG|09020102 | 10| E| ( lno FIXED (4),
ENG|09020102 | 11| E| created DATE,
ENG|09020102 | 12| E| shortdescription CHAR (250) ASCII,
ENG|09020102 | 13| E| contents LONG,
ENG|09020102 | 14| E| PRIMARY KEY (lno) )
ENG|09020102 | 16|RI| ##09101001Syntax
ENG|09020103 | 1| | Primary Key Concept
ENG|09020103 | 3| I| The primary key of a table is created by using the ##0910100301<key^definition>.
ENG|09020103 | 4| I| Each ##091010<create^table^statement> may contain at most one <key definition>.
ENG|09020103 | 5| | If a table is defined without a key column, ADABAS implicitly generates
ENG|09020103 | 6| | a key column SYSKEY CHAR(8) BYTE. This column is not visible for a
ENG|09020103 | 7| | SELECT * . It can, however, be specified explicitly. In this case it
ENG|09020103 | 8|S | has the same function as a key column.
ENG|09020103 | 19| | A table is to be created which can be used to administer the different
ENG|09020103 | 20| | types of room in a hotel together with the prices and the number of
ENG|09020103 | 21| | rooms. Hotel number and room type have to serve as key.
ENG|09020103 | 23| E| CREATE TABLE room
ENG|09020103 | 24| E| ( hno FIXED (4),
ENG|09020103 | 25| E| roomtype CHAR (6),
ENG|09020103 | 26| E| max_free FIXED (3,0),
ENG|09020103 | 27| E| price FIXED (6,2),
ENG|09020103 | 28| E| PRIMARY KEY (hno, roomtype) )
ENG|09020103 | 30|RI| ##091010Syntax
ENG|09020104 | 1| | Constraint Definition
ENG|09020104 | 3| I| A ##09101004<constraint^definition> defines a condition that must be satisfied by
ENG|09020104 | 4| | all rows of the table. This <constraint definition> is checked when a
ENG|09020104 | 5| | row is inserted and when a column occurring within this definition is
ENG|09020104 | 6| | updated. When this <constraint definition> is violated, the
ENG|09020104 | 7|SI| ##091024<insert^statement> or the ##091025<update^statement> fails.
ENG|09020104 | 19| | A table is to be created which can be used to administer the different
ENG|09020104 | 20| | types of room of a hotel together with the prices and the number of
ENG|09020104 | 21| | rooms. For the number of rooms and for the price of room constraints
ENG|09020104 | 22| | are to be defined.
ENG|09020104 | 24| E| CREATE TABLE room
ENG|09020104 | 25| E| ( hno FIXED (4),
ENG|09020104 | 26| E| roomtype CHAR (6),
ENG|09020104 | 27| E| max_free FIXED (3,0) CONSTRAINT max_free >= 0,
ENG|09020104 | 28| E| price FIXED (6,2) CONSTRAINT price BETWEEN 0.00 AND 5000.00,
ENG|09020104 | 29| E| PRIMARY KEY (hno, roomtype) )
ENG|09020104 | 31|RI| ##09101004Syntax
ENG|09020105 | 1| | Referential Constraint Definition
ENG|09020105 | 3| I| A ##09101005<referential^constraint^definition> defines a 1:n relationship
ENG|09020105 | 4| | between two tables. This means that more than one matching row can
ENG|09020105 | 5| I| exist for each row of the <referenced table>. A ##0910100501<delete^rule> can be
ENG|09020105 | 6| | specified to define the effects that the deletion of a row from the
ENG|09020105 | 7| | <referenced table> will have on the referencing table: whether the
ENG|09020105 | 8| | deletion is to fail when there are still matching rows (RESTRICT),
ENG|09020105 | 9| | whether all matching rows are to be deleted as well (CASCADE) or
ENG|09020105 | 10| | whether the NULL value (SET NULL) or the DEFAULT value (SET DEFAULT) is
ENG|09020105 | 11|S | to be assigned to the matching rows.
ENG|09020105 | 19| | A table is to be created which can be used to administer the different
ENG|09020105 | 20| | types of room of a hotel together with the prices and the number of
ENG|09020105 | 21| | rooms. In addition, it must be ensured that rooms can only be inserted
ENG|09020105 | 22| | for existing hotels and that all rooms are deleted, when a hotel is
ENG|09020105 | 23| | deleted.
ENG|09020105 | 25| E| CREATE TABLE room
ENG|09020105 | 26| E| ( hno FIXED (4),
ENG|09020105 | 27| E| roomtype CHAR (6),
ENG|09020105 | 28| E| max_free FIXED (3,0) CONSTRAINT max_free >= 0,
ENG|09020105 | 29| E| price FIXED (6,2) CONSTRAINT price BETWEEN 0.00 AND 5000.00,
ENG|09020105 | 30| E| PRIMARY KEY (hno, roomtype),
ENG|09020105 | 31| E| FOREIGN KEY (hno) REFERENCES hotel ON DELETE CASCADE )
ENG|09020105 | 33|RI| ##09101005Syntax
ENG|09020106 | 1| | Distribution
ENG|09020106 | 3| I| The specification ##09101006<table^option> WITH REPLICATION has the effect that
ENG|09020106 | 4| | copies of the meta data and of the data of a table are available on
ENG|09020106 | 5| | every SERVERDB of the distributed database, so that this table can
ENG|09020106 | 6| | always be accessed from the current SERVERDB without network
ENG|09020106 | 7| | communication. Inserting, updating or deleting data rows, however,
ENG|09020106 | 8| | leads to network communication, because these modifications must be
ENG|09020106 | 9|S | made in all SERVERDBs.
ENG|09020106 | 19| | A table is to be created which can be used to administer the different
ENG|09020106 | 20| | types of room of a hotel together with the prices and the number of
ENG|09020106 | 21| | rooms. In addition, it must be ensured that rooms can only be inserted
ENG|09020106 | 22| | for existing hotels and that all rooms are deleted, when a hotel is
ENG|09020106 | 23| | deleted. Furthermore, this table has to be available on every SERVERDB.
ENG|09020106 | 25| E| CREATE TABLE room
ENG|09020106 | 26| E| ( hno FIXED (4) KEY,
ENG|09020106 | 27| E| roomtype CHAR (6) KEY,
ENG|09020106 | 28| E| max_free FIXED (3,0) CONSTRAINT max_free >= 0,
ENG|09020106 | 29| E| price FIXED (6,2) CONSTRAINT price BETWEEN 0.00 AND 5000.00,
ENG|09020106 | 30| E| FOREIGN KEY (hno) REFERENCES hotel ON DELETE CASCADE )
ENG|09020106 | 31| E| WITH REPLICATION
ENG|09020106 | 33|RI| ##091010Syntax
ENG|09020107 | 1| | Copying a Table Structure
ENG|09020107 | 3| | The specification 'LIKE <source table>' has the effect that an empty
ENG|09020107 | 4| | base table is created which, from the point of view of the executing
ENG|09020107 | 5| | user, has the same structure as the table <source table>; i.e., it
ENG|09020107 | 6| | includes all columns with the same column names and column definitions
ENG|09020107 | 7| | as the <source table>, which are known to the user. This point of view
ENG|09020107 | 8| | need not be identical to the actual structure of the <source table>,
ENG|09020107 | 9| | since the user may not know all the columns because of privilege
ENG|09020107 | 10| | limitations.
ENG|09020107 | 12| | A new room table is to be defined with a structure identical to that of
ENG|09020107 | 13| | the existing room table.
ENG|09020107 | 15| E| CREATE TABLE newroom LIKE room
ENG|09020107 | 17|RI| ##091010Syntax
ENG|09020108 | 1| | Copying a Table Structure and Data Rows
ENG|09020108 | 3| I| Specifying a ##09105501<query^expression> within the ##091010<create^table^statement>
ENG|09020108 | 4| | creates a base table which has the same structure as the result table
ENG|09020108 | 5| I| defined by the <query expression>. If a ##09101008<table^description> is
ENG|09020108 | 6| I| specified, and if it contains ##09101001<column^definition>s, then each <column
ENG|09020108 | 7| | definition> may only consist of a <column name>, and the number of
ENG|09020108 | 8| | <column definition>s must equal the number of columns in the result
ENG|09020108 | 9| I| table generated by the <query expression>. The ##0910100101<data^type> of the i-th
ENG|09020108 | 10| | column of the generated base table corresponds to that of the i-th
ENG|09020108 | 11|S | column in the result table generated by the <query expression>.
ENG|09020108 | 19| | A new table is to be defined consisting of the columns hotelname and
ENG|09020108 | 20| | cityname and containing all hotels in Detroit.
ENG|09020108 | 22| E| CREATE TABLE detroithotels (hotelname, cityname)
ENG|09020108 | 23| E| AS SELECT hotel.name, city.name
ENG|09020108 | 24| E| FROM hotel, city
ENG|09020108 | 25| E| WHERE hotel.zip = city.zip
ENG|09020108 | 26| E| AND city.name = 'Detroit'
ENG|09020108 | 28|RI| ##091010Syntax
ENG|090202 | 1| | Altering a Table
ENG|090202 | 3| I| The ##091011<alter^table^statement> serves to modify the structure of an
ENG|090202 | 4| | existing base table. In this way, columns can be added or dropped, for
ENG|090202 | 5| | example. The data type of a column can be altered, extended or provided
ENG|090202 | 6| | with a new <constraint definition>. The definition of the primary key
ENG|090202 | 7| | can be modified.
ENG|090202 | 9| | The table customer is to be extended by a column containing the monthly
ENG|090202 | 10| | travel budget.
ENG|090202 | 12| E| ALTER TABLE customer
ENG|090202 | 13| E| ADD travelbudget FIXED (6,2)
ENG|090202 | 15|RI| ##091011Syntax
ENG|090203 | 1| | Dropping a Table
ENG|090203 | 3| I| The ##091012<drop^table^statement> drops all meta data and rows of a base table
ENG|090203 | 4| | as well as all view definitions, indexes, privileges, synonyms,
ENG|090203 | 5| | triggers, and <referential constraint>s that depend on this base table.
ENG|090203 | 6| | If a table dropped in the course of a <drop table statement> is
ENG|090203 | 7| | addressed in a DB procedure, this procedure is marked as not
ENG|090203 | 8| | executable.
ENG|090203 | 10| | If RESTRICT is specified and view tables or synonyms are based on the
ENG|090203 | 11| | specified table, the <drop table statement> fails.
ENG|090203 | 13| | If all data linked to this base table by <referential constraint
ENG|090203 | 14| I| definition>s with corresponding ##0910100501<delete^rule> are to be processed with
ENG|090203 | 15| I| the specified <delete rule>, first a ##091026<delete^statement> must be
ENG|090203 | 16| | performed for this base table which then must be followed by a <drop
ENG|090203 | 17|S | table statement>.
ENG|090203 | 19| | The table containing the data of the rooms of the different hotels is
ENG|090203 | 20| | to be dropped.
ENG|090203 | 22| E| DROP TABLE room
ENG|090203 | 24|RI| ##091012Syntax
ENG|090204 | 1| | Defining Domains (CREATE DOMAIN)
ENG|090204 | 3| I| The ##091013<create^domain^statement> serves to define a domain which can be
ENG|090204 | 4| I| used in the ##091010<create^table^statement> and ##091011<alter^table^statement> for
ENG|090204 | 5| | the definition of a column. This domain contains a data type and,
ENG|090204 | 6| I| optionally, a ##091010010201<default^spec> and/or a ##09101004<constraint^definition>. All data
ENG|090204 | 7| | inserted into a table column by using a domain as a range of values
ENG|090204 | 8| | must satisfy the domain conditions; otherwise the corresponding
ENG|090204 | 9| I| ##091024<insert^statement> or ##091025<update^statement> fails.
ENG|090204 | 11| | A domain is to be defined to ensure a correct entry of zip codes.
ENG|090204 | 13| E| CREATE DOMAIN zip_dom CHAR (5) CONSTRAINT zip_dom
ENG|090204 | 14| E| LIKE '(0-9)(0-9)(0-9)(0-9)(0-9)'
ENG|090204 | 16|RI| ##091013Syntax
ENG|090205 | 1| | Dropping Domains (DROP DOMAIN)
ENG|090205 | 3| I| The ##091014<drop^domain^statement> serves to drop a defined domain. The
ENG|090205 | 4| | dropping has no effect on tables in which this domain was used for the
ENG|090205 | 5| | definition of columns.
ENG|090205 | 7| | The domain for ensuring the correct entry of zip codes is to be
ENG|090205 | 8| | dropped.
ENG|090205 | 10| E| DROP DOMAIN zip_dom
ENG|090205 | 12|RI| ##091014Syntax
ENG|090206 | 1| | Synonyms
ENG|090206 | 3| I| The ##091015<create^synonym^statement> serves to define an alternative name
ENG|090206 | 4| | (synonym) for a table. A table can also be addressed by this synonym.
ENG|090206 | 5| | An existing synonym can be dropped by using the
ENG|090206 | 6| I| ##091015<drop^synonym^statement>, it can be renamed by using the
ENG|090206 | 7| I| ##091015<rename^synonym^statement>.
ENG|090206 | 9| | A synonym is to be defined for the table customer belonging to the user
ENG|090206 | 10| | sqltravel00. This synonym is to be renamed and finally to be dropped.
ENG|090206 | 12| E| CREATE SYNONYM c00 FOR sqltravel00.customer
ENG|090206 | 14| | RENAME SYNONYM c00 TO cus00
ENG|090206 | 15| | DROP SYNONYM cus00
ENG|090206 | 17|RI| ##091015Syntax
ENG|090207 | 1| | Creating Views (CREATE VIEW)
ENG|090207 | 3| I| Views are defined with the ##091016<create^view^statement>. Afterwards these
ENG|090207 | 4| | views can be processed like base tables. They help to support the
ENG|090207 | 5| | authorizing procedures, e.g. allowing that different views on to the
ENG|090207 | 6| | common, identical data are given to different users.
ENG|090207 | 8| | If OR REPLACE is specified, a view table that might exist is replaced
ENG|090207 | 9| | by the specified definition. The existing privileges are also valid for
ENG|090207 | 10| | the new view table. If there is no view table with the specified name,
ENG|090207 | 11| | OR REPLACE has no effect.
ENG|090207 | 13| | The optional specification WITH CHECK OPTION for an updatable view has
ENG|090207 | 14| I| the effect that the ##091024<insert^statement> or ##091025<update^statement> cannot
ENG|090207 | 15| | create any rows on the view which subsequently would not be selectable
ENG|090207 | 16| | by using this view; i.e., the resulting rows must satisfy the
ENG|090207 | 17|SI| ##091056<search^condition> of the view table.
ENG|090207 | 19| | Creating a non-updatable join view containing the domiciles in addition
ENG|090207 | 20| | to the names of the customers.
ENG|090207 | 22| E| CREATE VIEW customercity
ENG|090207 | 23| E| AS SELECT firstname, name, address, name city
ENG|090207 | 24| E| FROM customer cu, city ci
ENG|090207 | 25| E| WHERE cu.zip = ci.zip
ENG|090207 | 27| | Creating an updatable view table containing the columns of the table
ENG|090207 | 28| | customer that are required for this purpose.
ENG|090207 | 30| | CREATE VIEW customerview
ENG|090207 | 31| | AS SELECT cno, title, name, zip, address
ENG|090207 | 32| | FROM customer
ENG|090207 | 34|RI| ##091016Syntax
ENG|090208 | 1| | Dropping Views (DROP VIEW)
ENG|090208 | 3| I| The ##091016<drop^view^statement> drops the view table and all synonyms, view
ENG|090208 | 4| | tables, and privileges depending on this view table. The tables
ENG|090208 | 5| | underlying the view table remain unaffected.
ENG|090208 | 7| | If RESTRICT is specified and view tables or synonyms are based on the
ENG|090208 | 8| | specified table, the <drop view statement> fails.
ENG|090208 | 10| | The view customercity is to be dropped.
ENG|090208 | 12| E| DROP VIEW customercity
ENG|090208 | 14|RI| ##091016Syntax
ENG|090209 | 1| | Secondary Indexes
ENG|090209 | 3| I| An index is defined with the ##091018<create^index^statement>. Indexes support
ENG|090209 | 4| | the access to base tables by using non-key columns. Their maintenance,
ENG|090209 | 5| | however, means additional overhead in connection with the
ENG|090209 | 6| I| ##091024<insert^statement>, ##091025<update^statement>, and ##091026<delete^statement>. The
ENG|090209 | 7| | specification ASC or DESC can be used to support the processing in a
ENG|090209 | 8| | certain order that corresponds to the index definition. A defined index
ENG|090209 | 9| I| is dropped with the ##091018<drop^index^statement>.
ENG|090209 | 11| | To accelerate the search for certain customer names, an index is to be
ENG|090209 | 12| | defined on the customer table.
ENG|090209 | 14| E| CREATE INDEX custname ON customer ( name ASC, firstname DESC )
ENG|090209 | 16| | The index custname is to be dropped.
ENG|090209 | 18|RI| DROP INDEX custname ##091018Syntax
ENG|090210 | 1| | Renaming
ENG|090210 | 3| | There is a series of rename SQL statements for renaming tables, table
ENG|090210 | 4| | columns, synonyms, and views. In detail, the following SQL statements
ENG|090210 | 5| | are available to rename
ENG|090210 | 7| I| tables : ##091019<rename^table^statement>
ENG|090210 | 8| I| table columns : ##091020<rename^column^statement>
ENG|090210 | 9| I| synonyms : ##091015<rename^synonym^statement>
ENG|090210 | 10| I| views : ##091016<rename^view^statement>
ENG|090210 | 12| | The table column name of the table customer is to be renamed as
ENG|090210 | 13| | surname.
ENG|090210 | 15|RE| RENAME COLUMN customer.name TO surname
ENG|090211 | 1| | Check for Existence
ENG|090211 | 3| I| With the ##091023<exists^table^statement>, a user can find out whether a base
ENG|090211 | 4| | table, view table, snapshot table or a synonym does exist.
ENG|090211 | 6| | It is to be found out whether the table customermaster exists.
ENG|090211 | 8| E| EXISTS TABLE customermaster
ENG|090211 | 10|RI| ##091023Syntax
ENG|090213 | 1| | Creating a Snapshot Table (CREATE SNAPSHOT)
ENG|090213 | 3| I| A table created by the ##091063<create^snapshot^statement> is called a snapshot
ENG|090213 | 4| | table. Structure and contents of the snapshot table are equivalent to
ENG|090213 | 5| I| the result table defined by the ##09105501<query^expression>. The data of the
ENG|090213 | 6| | snapshot table is physically stored and the contents of the snapshot
ENG|090213 | 7| | table are not always identical to the result of the <query expression>.
ENG|090213 | 9| | The meta data and the contents of the snapshot table are stored on the
ENG|090213 | 10| | SERVERDB where the current user has opened his sesssion.
ENG|090213 | 12| | The rows of a snapshot table cannot be changed by the <insert
ENG|090213 | 13| | statement>, <update statement> or <delete statement>. The contents of
ENG|090213 | 14| | the snapshot table can only be tallied with the contents of the result
ENG|090213 | 15| | table defined by the <query expression> by using the
ENG|090213 | 16| I| ##091061<refresh^statement>. A snapshot log, if available, will be used for
ENG|090213 | 17|S | this purpose.
ENG|090213 | 19| | A snapshot table customerbudget is to be created containing the
ENG|090213 | 20| | customer numbers and budgets of all Californian customers. The
ENG|090213 | 21| | specifications are to come from the table customer.
ENG|090213 | 23| E| CREATE SNAPSHOT customerbudget
ENG|090213 | 24| E| AS SELECT cno, budget
ENG|090213 | 25| E| FROM customer
ENG|090213 | 26| E| WHERE state >= 'CA'
ENG|090213 | 27|RI| ##091063Syntax
ENG|090214 | 1| | Dropping a Snapshot Table (DROP SNAPSHOT)
ENG|090214 | 3| | The metadata and all rows of the snapshot table are dropped. All
ENG|090214 | 4| | indexes, synonyms and view tables defined on the snapshot table are
ENG|090214 | 5| | dropped.
ENG|090214 | 7| | The tables underlying the snapshot table remain unaffected.
ENG|090214 | 9| | The snapshot table customerbudget containing the customer numbers and
ENG|090214 | 10| | budgets of the Californian customers is to be dropped.
ENG|090214 | 12| E| DROP SNAPSHOT customerbudget
ENG|090214 | 13|RI| ##091063Syntax
ENG|090215 | 1| | Snapshot Logs (CREATE/DROP SNAPSHOT LOG)
ENG|090215 | 3| I| The ##091064<create^snapshot^log^statement> creates a snapshot log for the base
ENG|090215 | 4| | table identified by <table name>. In a snapshot log, ADABAS stores
ENG|090215 | 5| | information about the modified rows of the table. This information can
ENG|090215 | 6| I| be used later with a ##091061<refresh^statement> to update a snapshot table
ENG|090215 | 7| I| without having to execute the complete ##09105501<query^expression>. Only the
ENG|090215 | 8| | modifications made since the last execution of the <refresh statement>
ENG|090215 | 9| | will be executed instead.
ENG|090215 | 11| | A snapshot log is to be created for the base table and to be dropped
ENG|090215 | 12| | immediately.
ENG|090215 | 14| E| CREATE SNAPSHOT LOG ON customer
ENG|090215 | 15| E| /
ENG|090215 | 16| E| DROP SNAPSHOT LOG ON customer
ENG|090215 | 17|RI| ##091064Syntax
ENG|090216 | 1| | Comments (COMMENT ON)
ENG|090216 | 3| I| The ##091065<comment^on^statement> creates a comment for a database object in
ENG|090216 | 4| | the catalog. The specified object must exist.
ENG|090216 | 6| | A comment for the column firstname in the table customer is to be
ENG|090216 | 7| | stored.
ENG|090216 | 9| E| COMMENT ON COLUMN customer.firstname IS
ENG|090216 | 10| E| 'The firstname is NULL if a company is concerned.'
ENG|090216 | 11|RI| ##091065Syntax
ENG|0903 | 1| | Data Manipulation
ENG|0903 | 2| | -----------------
ENG|0903 | 4| M| #01Inserting^Rows (INSERT)
ENG|0903 | 5| M| #02Copying^Data^of^Other^Tables (INSERT..SELECT)
ENG|0903 | 6| M| #03Updating^Rows (UPDATE)
ENG|0903 | 7| M| #04Updating^a^Single^Row^Previously^Selected (UPDATE..CURRENT OF)
ENG|0903 | 8| M| #05Deleting^Rows (DELETE)
ENG|0903 | 9| M| #06Deleting^a^Single^Row^Previously^Selected (DELETE..CURRENT OF)
ENG|0903 | 10| M| #08Refreshing^a^Snapshot^Table (REFRESH SNAPSHOT)
ENG|0903 | 11| M| #09Clearing^a^Snapshot^Log (CLEAR SNAPSHOT LOG)
ENG|0903 | 12|RM| #07Generating^a^Unique^Value (STAMP)
ENG|090301 | 1| | Inserting Rows (INSERT)
ENG|090301 | 3| I| The ##091024<insert^statement> inserts a new row into a table. If the names of
ENG|090301 | 4| | some table columns are specified, the values to be inserted are
ENG|090301 | 5| | assigned to these columns. Columns which have not been indicated are
ENG|090301 | 6| | set either to the null value or to the default value specified in the
ENG|090301 | 7| | table definition. If no column names are specified, a value must be
ENG|090301 | 8| | specified for each table column - in the order determined in the table
ENG|090301 | 9|S | definition.
ENG|090301 | 19| | A new data row only containing values in the mandatory columns is to be
ENG|090301 | 20| | inserted into the table customer.
ENG|090301 | 22| E| INSERT INTO customer ( cno, name, budget )
ENG|090301 | 23| E| VALUES ( 6798, 'Newman', 6000.0 )
ENG|090301 | 25| | Another data row is to be inserted entirely into the database, with
ENG|090301 | 26| | specifications for all columns.
ENG|090301 | 28| | INSERT customer
ENG|090301 | 29| | VALUES ( 8973, 'Mrs', 'Frances', 'Baker', 77908,
ENG|090301 | 30| | 'Woodland 56', 5687 )
ENG|090301 | 32|RI| ##091024Syntax
ENG|090302 | 1| | Copying Data of Other Tables (INSERT..SELECT)
ENG|090302 | 3| I| If a ##09105501<query^expression> is used in the ##091024<insert^statement> to insert new
ENG|090302 | 4| | rows into a table, the result of this <query expression> will be
ENG|090302 | 5| | inserted into the specified table.
ENG|090302 | 7| | All double room data of the table room is to be inserted into the table
ENG|090302 | 8| | doubleroom - the definition of which is identical to that of the table
ENG|090302 | 9| | room.
ENG|090302 | 11| E| INSERT doubleroom
ENG|090302 | 12| E| SELECT *
ENG|090302 | 13| E| FROM room
ENG|090302 | 14| E| WHERE roomtype = 'DOUBLE'
ENG|090302 | 16|RI| ##091024Syntax
ENG|090303 | 1| | Updating Rows
ENG|090303 | 3| I| The ##091025<update^statement> can be used to update single column values in
ENG|090303 | 4| I| already existing table rows. An optional sequence of ##091058<key^spec>s or a
ENG|090303 | 5| I| ##091056<search^condition> can be used to select the data rows to be updated.
ENG|090303 | 6| | If neither a sequence of <key spec>s nor a <search condition> is
ENG|090303 | 7| | specified, all rows of the specified table will be updated.
ENG|090303 | 9| | The price of single rooms is to be increased by 10% for the hotel with
ENG|090303 | 10| | the hotel number 60.
ENG|090303 | 12| E| UPDATE room
ENG|090303 | 13| E| SET price = price * 1.1
ENG|090303 | 14|SE| KEY hno = 60, roomtype = 'SINGLE'
ENG|090303 | 19| | The prices of all single rooms of all hotels are to be increased by
ENG|090303 | 20| | 10%.
ENG|090303 | 22| | UPDATE room
ENG|090303 | 23| | SET price = price * 1.1
ENG|090303 | 24| | WHERE roomtype = 'SINGLE'
ENG|090303 | 26|RI| ##091025Syntax
ENG|090304 | 1| | Updating a Single Row Previously Selected (UPDATE..CURRENT OF)
ENG|090304 | 3| I| Specifying the option 'CURRENT OF' in the ##09102501<update^statement> selects a
ENG|090304 | 4| | row from a table by means of a cursor position within a result table. A
ENG|090304 | 5| | named result table must have been generated beforehand either with a
ENG|090304 | 6| I| ##091002<declare^cursor^statement> or with a ##09100110<named^select^statement>. This
ENG|090304 | 7| I| result table must have been defined with the ##09100108<update^clause>. If the
ENG|090304 | 8| | cursor is positioned on a row of the result table, the corresponding
ENG|090304 | 9| | row will be updated. The corresponding row is the row of the table
ENG|090304 | 10| I| specified in the ##09100103<from^clause> of the ##091059<query^statement>, from which the
ENG|090304 | 11|S | row of the result table was formed.
ENG|090304 | 19| | That data row is to be updated in the table room which corresponds to
ENG|090304 | 20| | the data row to which the cursor in the result table resultroom points.
ENG|090304 | 22| E| SELECT resultroom (hno)
ENG|090304 | 23| E| FROM room
ENG|090304 | 24| E| WHERE roomtype = 'SINGLE'
ENG|090304 | 25| E| FOR UPDATE
ENG|090304 | 26| E| /
ENG|090304 | 27| E| FETCH resultroom INTO :hotelnumber
ENG|090304 | 28| E| /
ENG|090304 | 29| E| UPDATE room
ENG|090304 | 30| E| SET price = price * 1.15
ENG|090304 | 31| E| WHERE CURRENT OF resultroom
ENG|090304 | 33|RI| ##09102501Syntax
ENG|090305 | 1| | Deleting Rows (DELETE)
ENG|090305 | 3| I| The ##091026<delete^statement> deletes single rows from a table. The optional
ENG|090305 | 4| I| sequence of ##091058<key^spec>s or a ##091056<search^condition> can be used to select
ENG|090305 | 5| | the data rows to be deleted. If neither a sequence of <key spec>s nor a
ENG|090305 | 6| | <search condition> is specified, all rows of the specified table will
ENG|090305 | 7| | be deleted.
ENG|090305 | 9| | The hotel with the hotel number 80 is to be deleted. A <referential
ENG|090305 | 10| | constraint definition> has the effect that all rooms of this hotel are
ENG|090305 | 11| | also deleted from the table room.
ENG|090305 | 13| E| DELETE hotel
ENG|090305 | 14|SE| KEY hno = 80
ENG|090305 | 19| | All hotels which offer rooms for prices greater than $300.- are to be
ENG|090305 | 20| | deleted from the table hotel. A <referential constraint definition> has
ENG|090305 | 21| | the effect that all rooms belonging to these hotels are also deleted
ENG|090305 | 22| | from the table room.
ENG|090305 | 24| | DELETE hotel
ENG|090305 | 25| | WHERE hno IN ( SELECT hno
ENG|090305 | 26| | FROM room
ENG|090305 | 27| | WHERE price > 300.00 )
ENG|090305 | 29|RI| ##091026Syntax
ENG|090306 | 1| | Deleting a Single Row Previously Selected (DELETE..CURRENT OF)
ENG|090306 | 3| I| Specifying the option 'CURRENT OF' in the ##09102601<delete^statement> selects a
ENG|090306 | 4| | row from a table by means of a cursor position within a result table. A
ENG|090306 | 5| | named result table must have been generated beforehand either with a
ENG|090306 | 6| I| ##091002<declare^cursor^statement> or with a ##09100110<named^select^statement>. This
ENG|090306 | 7| I| result table must have been defined with the ##09100108<update^clause>. If the
ENG|090306 | 8| | cursor is positioned on a row of the result table, the corresponding
ENG|090306 | 9| | row will be deleted. The corresponding row is the row of the table
ENG|090306 | 10| I| specified in the ##09100103<from^clause> of the ##091059<query^statement>, from which the
ENG|090306 | 11|S | row of the result table was formed.
ENG|090306 | 19| | That data row is to be deleted from the table customer which
ENG|090306 | 20| | corresponds to the data row to which the cursor in the result table
ENG|090306 | 21| | resultcustomer points.
ENG|090306 | 23| E| SELECT resultcustomer (name)
ENG|090306 | 24| E| FROM customer
ENG|090306 | 25| E| WHERE title = 'Mr'
ENG|090306 | 26| E| FOR UPDATE
ENG|090306 | 27| E| /
ENG|090306 | 28| E| FETCH resultcustomer
ENG|090306 | 29| E| INTO :name
ENG|090306 | 30| E| /
ENG|090306 | 31| E| DELETE FROM customer
ENG|090306 | 32| E| WHERE CURRENT OF resultcustomer
ENG|090306 | 34|RI| ##09102601Syntax
ENG|090307 | 1| | Generating a Unique Value (NEXT STAMP)
ENG|090307 | 3| | For tables defined without key columns, there is an implicitly created
ENG|090307 | 4| | column SYSKEY CHAR(8) BYTE which contains a system key generated by
ENG|090307 | 5| I| ADABAS. The ##091027<next^stamp^statement> assigns the next unique value
ENG|090307 | 6| | generated by ADABAS to the variable denoted by <parameter name>. This
ENG|090307 | 7| | value is then no longer found in a SYSKEY column. The <next stamp
ENG|090307 | 8| | statement> cannot be used in interactive mode; it can only be embedded
ENG|090307 | 9| | into a programming language. A possible usage is to ensure referential
ENG|090307 | 10| | integrity when data rows are inserted into tables that are associated
ENG|090307 | 11| I| with one another by ##09101005<referential^constraint^definition>s.
ENG|090307 | 13| | The next unique value is to be generated and stored in a variable.
ENG|090307 | 15| E| NEXT STAMP :key
ENG|090307 | 16|RI| ##091027Syntax
ENG|090308 | 1| | Refreshing a Snapshot Table (REFRESH SNAPSHOT)
ENG|090308 | 3| | The contents of the snapshot table are updated; i.e., after execution
ENG|090308 | 4| I| of the ##091061<refresh^statement>, the snapshot table contains the result of
ENG|090308 | 5| I| the ##09105501<query^expression> defined for the ##091063<create^snapshot^statement>. If
ENG|090308 | 6| | indexes were defined for the snapshot table, these are updated as well.
ENG|090308 | 8| | If COMPLETE is specified, the existing contents of the snapshot table
ENG|090308 | 9| | are deleted and completely recreated. If COMPLETE is not specified,
ENG|090308 | 10| | then it depends on the definition of the <query expression> and on the
ENG|090308 | 11| | definition of a snapshot log whether only the modifications on an
ENG|090308 | 12| | underlying table need to be executed in the snapshot table or the
ENG|090308 | 13|S | contents of the snapshot table are completely to be recreated.
ENG|090308 | 19| | The snapshot table customerbudget is to be refreshed.
ENG|090308 | 21| E| REFRESH SNAPSHOT customerbudget
ENG|090308 | 22|RI| ##091061Syntax
ENG|090309 | 1| | Clearing a Snapshot Log (CLEAR SNAPSHOT LOG)
ENG|090309 | 3| I| The ##091062<clear^snapshot^log^statement> completely deletes the contents of
ENG|090309 | 4| I| the snapshot log of the specified table. The next ##091061<refresh^statement>
ENG|090309 | 5| | for snapshot tables based on the specified table has the effect that
ENG|090309 | 6| | the snapshot table is deleted and recreated although the <refresh
ENG|090309 | 7| | statement> was specified without COMPLETE.
ENG|090309 | 9| | The snapshot log of the table customer is to be cleared.
ENG|090309 | 11| | CLEAR SNAPSHOT LOG ON customer
ENG|090309 | 12|RI| ##091062Syntax
ENG|0904 | 1| | Data Retrieval
ENG|0904 | 2| | --------------
ENG|0904 | 4| M| #01Structure^of^the^SELECT^Statement
ENG|0904 | 5| I| ##09040704FETCH
ENG|0904 | 6| M| #02Joining^Tables (Join)
ENG|0904 | 7| M| #03Outer^Join
ENG|0904 | 8| M| #04Subqueries (Subquery)
ENG|0904 | 9| M| #05Correlated^Subquery
ENG|0904 | 10| M| #06Set^Operations (UNION, INTERSECT, EXCEPT)
ENG|0904 | 11| M| #07Processing^Result^Tables
ENG|0904 | 12| M| #08Single^Row^Processing
ENG|0904 | 13|RM| #09Search^Strategy (EXPLAIN)
ENG|090401 | 1| | Structure of the Select Statement
ENG|090401 | 2| | ---------------------------------
ENG|090401 | 4| M| #01Application (SELECT)
ENG|090401 | 5| M| #02Selection
ENG|090401 | 6| M| #03Projection
ENG|090401 | 7| M| #04Grouping (GROUP BY, HAVING)
ENG|090401 | 8| M| #05Sorting (ORDER BY)
ENG|090401 | 9| M| #06FOR^UPDATE
ENG|090401 | 10| M| #07LOCK^Option
ENG|090401 | 11|RM| #08FOR^REUSE
ENG|09040101 | 1| | Application
ENG|09040101 | 3| | The SELECT statement can be used to generate any section from the data.
ENG|09040101 | 4| | The number of rows in the result table can be limited by choosing
ENG|09040101 | 5| | certain columns or expressions as well as by specifying appropriate
ENG|09040101 | 6| | search conditions.
ENG|09040101 | 8| | All data of customers with customer numbers greater than 3400 stored in
ENG|09040101 | 9| | the table customer is to be displayed.
ENG|09040101 | 11| E| SELECT *
ENG|09040101 | 12| E| FROM customer
ENG|09040101 | 13| E| WHERE cno > 3400
ENG|09040101 | 15|RI| ##091001Syntax
ENG|09040102 | 1| | Selection
ENG|09040102 | 3| | Specifying a search condition generates a result table with the same
ENG|09040102 | 4| | structure as the underlying base table(s). This result table only
ENG|09040102 | 5| | contains data rows that satisfy the search condition. Several base
ENG|09040102 | 6| I| tables can be associated with one another by a ##090402join.
ENG|09040102 | 8| | All data of the hotels with hotel numbers between 50 and 80 stored in
ENG|09040102 | 9| | the table hotel is to be displayed.
ENG|09040102 | 11| E| SELECT *
ENG|09040102 | 12| E| FROM hotel
ENG|09040102 | 13| E| WHERE hno BETWEEN 50 AND 80
ENG|09040102 | 15|RI| ##091001Syntax
ENG|09040103 | 1| | Projection
ENG|09040103 | 3| | A result table based on the data of the underlying base table(s) is
ENG|09040103 | 4| | generated by the selection of expressions. This result table can be
ENG|09040103 | 5| | structured freely.
ENG|09040103 | 7| | For the hotel with the hotel number 50, the possible maximum turnover
ENG|09040103 | 8| | is to be found out for each type of room.
ENG|09040103 | 10| E| SELECT price * max_free, max_free, roomtype
ENG|09040103 | 11| E| FROM room
ENG|09040103 | 12| E| WHERE hno = 50
ENG|09040103 | 14|RI| ##091001Syntax
ENG|09040104 | 1| | Grouping
ENG|09040104 | 3| I| The ##09100105<group^clause> allows some functions to be applied to groups of
ENG|09040104 | 4| | rows within a result table. All rows of a group have the same values in
ENG|09040104 | 5| | the grouping columns. The specification of attributes for groups is
ENG|09040104 | 6| | optional.
ENG|09040104 | 8| | The average price for each type of room is to be found out.
ENG|09040104 | 10| | SELECT FIXED (AVG (price), 5, 2), roomtype
ENG|09040104 | 11| | FROM room
ENG|09040104 | 12|S | GROUP BY roomtype
ENG|09040104 | 19| | The number of hotels is to be found out per room type offered by more
ENG|09040104 | 20| | than 10 hotels.
ENG|09040104 | 22| E| SELECT COUNT (roomtype), roomtype
ENG|09040104 | 23| E| FROM room
ENG|09040104 | 24| E| GROUP BY roomtype
ENG|09040104 | 25| E| HAVING COUNT (roomtype) > 10
ENG|09040104 | 27|RI| ##091001Syntax
ENG|09040105 | 1| | Sorting
ENG|09040105 | 3| | The result table can optionally be sorted in ascending or descending
ENG|09040105 | 4| I| order by using the ##09100107<order^clause>.
ENG|09040105 | 6| | All customer data is to be displayed in descending order according to
ENG|09040105 | 7| | the zip codes and, within the same zip code, in ascending order
ENG|09040105 | 8| | according to the names.
ENG|09040105 | 10| E| SELECT *
ENG|09040105 | 11| E| FROM customer
ENG|09040105 | 12| E| ORDER BY zip DESC, name ASC
ENG|09040105 | 14|RI| ##091001Syntax
ENG|09040106 | 1| | FOR UPDATE
ENG|09040106 | 3| I| An ##09100108<update^clause> can be used to achieve that a result table becomes
ENG|09040106 | 4| | updatable. This allows a cursor to be used in subsequent
ENG|09040106 | 5| I| ##091025<update^statement>s, ##091026<delete^statement>s, ##09102902<lock^statement>s,
ENG|09040106 | 6| I| ##091005<select^direct^statement>s or ##091007<select^ordered^statement>s by means of
ENG|09040106 | 7| | CURRENT OF. A row to be processed is identified in the underlying base
ENG|09040106 | 8| | table by means of the cursor position. The <update clause> has no
ENG|09040106 | 9| | significance for other formats of the above mentioned SQL statements as
ENG|09040106 | 10|S | well as in interactive mode,
ENG|09040106 | 19| | All data of the rooms in the hotel with the hotel number 50 is to be
ENG|09040106 | 20| | selected and prepared for further processing via SQL statements (e.g.
ENG|09040106 | 21| | UPDATE).
ENG|09040106 | 23| E| SELECT *
ENG|09040106 | 24| E| FROM room
ENG|09040106 | 25| E| WHERE hno = 50
ENG|09040106 | 26| E| FOR UPDATE
ENG|09040106 | 28|RI| ##091001Syntax
ENG|09040107 | 1| | LOCK Option
ENG|09040107 | 3| I| The ##09100109<lock^option> serves to set a lock for each selected row. In this
ENG|09040107 | 4| | way, data rows can be protected against further access, when it must be
ENG|09040107 | 5| | ensured, e.g., that a data row to be updated after being read is not
ENG|09040107 | 6| | changed in the meantime by other users. The optional specification of
ENG|09040107 | 7| I| an ##090103ISOLATION^LEVEL has the effect that the ISOLATION LEVEL specified in
ENG|09040107 | 8| I| the ##091028<connect^statement> is overridden for the SQL statement to be
ENG|09040107 | 9| | performed.
ENG|09040107 | 11| | The data row of the customer Jackson is to be read and locked.
ENG|09040107 | 13| E| SELECT *
ENG|09040107 | 14| E| FROM customer
ENG|09040107 | 15| E| WHERE name = 'Jackson'
ENG|09040107 | 16| E| WITH LOCK EXCLUSIVE
ENG|09040107 | 17| E| ISOLATION LEVEL 3
ENG|09040107 | 18|RI| ##091001Syntax
ENG|09040108 | 1| | FOR REUSE
ENG|09040108 | 3| I| If the result table is to be used in a subsequent ##091001<select^statement>,
ENG|09040108 | 4| | it must be named and should be specified with FOR REUSE.
ENG|09040108 | 6| | All rooms that cost $100.-- are to be selected and the result table is
ENG|09040108 | 7| | to be kept for further processing.
ENG|09040108 | 9| E| SELECT room100 (*)
ENG|09040108 | 10| E| FROM room
ENG|09040108 | 11| E| WHERE price = 100
ENG|09040108 | 12| E| FOR REUSE
ENG|09040108 | 14|RI| ##091001Syntax
ENG|090402 | 1| | Joining Tables (JOIN)
ENG|090402 | 3| | Every row of a table can be associated with every row of one (or more)
ENG|090402 | 4| I| other tables (join). ##0910570201<comp^op> for the comparison of column values of
ENG|090402 | 5| | different tables can be used to restrict the number of rows in the
ENG|090402 | 6| | result table.
ENG|090402 | 8| | The names, addresses and domiciles of all customers are to be
ENG|090402 | 9| | displayed.
ENG|090402 | 11| E| SELECT firstname, name, address, name city
ENG|090402 | 12| E| FROM customer cu, city ci
ENG|090402 | 13| E| WHERE cu.zip = ci.zip
ENG|090402 | 15|RI| ##09105706Syntax
ENG|090403 | 1| | OUTER JOIN
ENG|090403 | 3| | When it must be ensured that every row of a table is contained in the
ENG|090403 | 4| | result table at least once, the <outer join indicator> (+) must be
ENG|090403 | 5| I| specified on that side of ##0910570201<comp^op> where the specification of the
ENG|090403 | 6| | other table is made. Even if it is not possible to find at least one
ENG|090403 | 7| | counterpart for a table row in the other table, a row for the result
ENG|090403 | 8| | table will be built from it. When doing so, the NULL value is used for
ENG|090403 | 9| | the output columns which are usually formed from the other table's
ENG|090403 | 10|S | columns.
ENG|090403 | 19| | All reservations for the different hotels are to be displayed. Even the
ENG|090403 | 20| | names of those hotels are to be shown for which no reservations have
ENG|090403 | 21| | been made.
ENG|090403 | 23| E| SELECT name, hno, rno
ENG|090403 | 24| E| FROM hotel h, reservation r
ENG|090403 | 25| E| WHERE h.hno = r.hno (+)
ENG|090403 | 26|RI| ##09105706Syntax
ENG|090404 | 1| | Subqueries (Subquery)
ENG|090404 | 3| I| A ##091055<subquery> is a special form of the <query expression>. It specifies
ENG|090404 | 4| | a result table which can be used in certain predicates and when column
ENG|090404 | 5| | values are being changed.
ENG|090404 | 7| | The hotel that offers the most expensive room is to be selected.
ENG|090404 | 9| E| SELECT name, zip, address
ENG|090404 | 10| E| FROM hotel, room
ENG|090404 | 11| E| WHERE hotel.hno = room.hno
ENG|090404 | 12| E| AND room.price = ( SELECT MAX (price)
ENG|090404 | 13| E| FROM room )
ENG|090404 | 15|RI| ##091055Syntax
ENG|090405 | 1| | Correlated Subquery
ENG|090405 | 3| I| Subqueries can be nested. A ##091055<subquery> containing subqueries is at a
ENG|090405 | 4| | higher level than the subqueries included. Within the
ENG|090405 | 5| I| ##091056<search^condition> of a <subquery>, column names may occur that belong
ENG|090405 | 6| I| to tables contained in the ##09100103<from^clause> of higher-level subqueries. A
ENG|090405 | 7| | <subquery> of this kind is called a correlated subquery.
ENG|090405 | 9| | If a correlated subquery is used, the values of one or more columns of
ENG|090405 | 10| | a temporary result row at a higher level are included in the <search
ENG|090405 | 11| | condition> of a <subquery> at a lower level, whereby the result of the
ENG|090405 | 12| | subquery is used for the definite qualification of the higher-level
ENG|090405 | 13|S | temporary result row.
ENG|090405 | 19| | For every city, the names of all hotels are to be found out which have
ENG|090405 | 20| | prices that are less than the average prices of the particular zip code
ENG|090405 | 21| | area.
ENG|090405 | 23| E| SELECT name, zip
ENG|090405 | 24| E| FROM hotel X, room
ENG|090405 | 25| E| WHERE x.hno = room.hno
ENG|090405 | 26| E| AND room.price < ( SELECT AVG (room.price)
ENG|090405 | 27| E| FROM hotel, room
ENG|090405 | 28| E| WHERE hotel.hno = room.hno
ENG|090405 | 29| E| AND hotel.zip = x.zip )
ENG|090405 | 31|RI| ##091055Syntax
ENG|090406 | 1| | Set Operations
ENG|090406 | 3| I| Two ##09105501<query^expression>s T1 and T2 can be associated with each other by
ENG|090406 | 4| | using the operators UNION, EXCEPT, and INTERSECT. For example: T1 UNION
ENG|090406 | 5| | [ALL] T2.
ENG|090406 | 7| | UNION : The result table contains all rows of T1 and T2.
ENG|090406 | 9| | EXCEPT : The result table contains all rows of T1 which have no
ENG|090406 | 10| | duplicate rows in T2.
ENG|090406 | 12| | INTERSECT: The result table contains all rows of T1 which have a
ENG|090406 | 13| | duplicate row in T2.
ENG|090406 | 15| | It is true of EXCEPT and INTERSECT that a row of T2 can only be
ENG|090406 | 16| | duplicate row of just one row of T1.
ENG|090406 | 17| | If ALL is not specified, DISTINCT is implicitly assumed for the <query
ENG|090406 | 18|S | expression>s belonging to T1 and T2.
ENG|090406 | 19| | If parentheses are missing, INTERSECT will be evaluated before UNION
ENG|090406 | 20| | and EXCEPT. UNION and EXCEPT have the same precedence and will be
ENG|090406 | 21| | evaluated from left to right in case that parentheses are missing.
ENG|090406 | 23| | The numbers of those hotels are to be displayed for which at least one
ENG|090406 | 24| | reservation exists.
ENG|090406 | 26| E| SELECT hno FROM hotel
ENG|090406 | 27| E| INTERSECT
ENG|090406 | 28| E| SELECT hno FROM reservation
ENG|090406 | 30|RI| ##09105501Syntax
ENG|090407 | 1| | Processing Result Tables
ENG|090407 | 2| | ------------------------
ENG|090407 | 4| M| #01General
ENG|090407 | 5| M| #02DECLARE^CURSOR
ENG|090407 | 6| M| #03OPEN^CURSOR
ENG|090407 | 7| M| #04FETCH
ENG|090407 | 8|RM| #05CLOSE
ENG|09040701 | 1| | General
ENG|09040701 | 3| | The processing of result tables is to take place from programs only
ENG|09040701 | 4| | when a result table is to be processed row by row. In interactive mode,
ENG|09040701 | 5| I| this facility has no significance. The ##091002<declare^cursor^statement>
ENG|09040701 | 6| | defines a result table with the name <result table name>. Before the
ENG|09040701 | 7| | result table can be used, it must be generated by a subsequent
ENG|09040701 | 8| I| ##091002<open^cursor^statement>. If this has been done, individual rows can be
ENG|09040701 | 9| I| read from the result table by using ##091003<fetch^statement>s. When the
ENG|09040701 | 10| | processing is finished, the result table will be closed by using the
ENG|09040701 | 11| I| ##091002<close^statement>.
ENG|09040701 | 13|RI| ##091002Syntax
ENG|09040702 | 1| | <declare cursor statement>
ENG|09040702 | 3| I| The ##091002<declare^cursor^statement> defines a named result table. To
ENG|09040702 | 4| I| generate this result table, an ##091002<open^cursor^statement> specifying the
ENG|09040702 | 5| | name of this result table is needed.
ENG|09040702 | 7| | A result table containing the first names and names of the customers is
ENG|09040702 | 8| | to be defined.
ENG|09040702 | 10| E| DECLARE customername CURSOR FOR SELECT firstname, name
ENG|09040702 | 11| E| FROM customer
ENG|09040702 | 13|RI| ##091002Syntax
ENG|09040703 | 1| | <open cursor statement>
ENG|09040703 | 3| I| The ##091002<open^cursor^statement> generates the result table with the name
ENG|09040703 | 4| I| previously specified in the ##091002<declare^cursor^statement>.
ENG|09040703 | 6| | The result table customername just defined is to be generated.
ENG|09040703 | 8| E| OPEN customername
ENG|09040703 | 10|RI| ##091002Syntax
ENG|09040704 | 1| | <fetch statement>
ENG|09040704 | 3| I| The ##091003<fetch^statement> assigns the values of a result table row to
ENG|09040704 | 4| | parameters.
ENG|09040704 | 6| | The next data row is to be read from the result table.
ENG|09040704 | 8| E| FETCH customername INTO :firstname, :name
ENG|09040704 | 10|RI| ##091003Syntax
ENG|09040705 | 1| | <close statement>
ENG|09040705 | 3| I| The ##091002<close^statement> closes a result table. Afterwards access to the
ENG|09040705 | 4| | result table is no longer possible. If the result table is to be
ENG|09040705 | 5| I| reconsidered, it must be reopened by an ##091002<open^cursor^statement>. A
ENG|09040705 | 6| | subsequent <fetch statement> will reproduce the first data row of the
ENG|09040705 | 7| | result table.
ENG|09040705 | 9| | The result table customername is to be closed.
ENG|09040705 | 11| E| CLOSE customername
ENG|09040705 | 13|RI| ##091002Syntax
ENG|090408 | 1| | Single Row Processing
ENG|090408 | 2| | ---------------------
ENG|090408 | 4| M| #01SELECT^DIRECT:^searched
ENG|090408 | 5| M| #02SELECT^DIRECT:^positioned (CURRENT OF)
ENG|090408 | 6| M| #03SELECT^ordered:^searched (FIRST, LAST, NEXT, PREV)
ENG|090408 | 7|RM| #04SELECT^ordered:^positioned (FIRST, LAST, NEXT, PREV with CURRENT OF)
ENG|09040801 | 1| | SELECT DIRECT: searched
ENG|09040801 | 3| I| The ##091004<select^direct^statement:^searched> selects a table row by using a
ENG|09040801 | 4| | key value specification. The SQL statement is used to directly access a
ENG|09040801 | 5| | row of a table by specifying a key value. For tables defined without
ENG|09040801 | 6| | key columns, there is the implicitly created column SYSKEY CHAR(8) BYTE
ENG|09040801 | 7| | which contains a key generated by ADABAS. The table column SYSKEY can
ENG|09040801 | 8| | therefore be used in the SQL statement to access a specified table row.
ENG|09040801 | 10| | The customer with the customer number 3400 is to be found out.
ENG|09040801 | 12| E| SELECT DIRECT *
ENG|09040801 | 13| E| FROM customer
ENG|09040801 | 14| E| KEY cno = 3400
ENG|09040801 | 16|RI| ##091004Syntax
ENG|09040802 | 1| | SELECT DIRECT: positioned
ENG|09040802 | 3| I| The ##091005<select^direct^statement:^positioned> selects a table row by means
ENG|09040802 | 4| | of a cursor position. A named result table must have been generated
ENG|09040802 | 5| I| beforehand, either by using a ##091002<declare^cursor^statement> or by using a
ENG|09040802 | 6| I| ##09100110<named^select^statement>. The result table must have been defined with
ENG|09040802 | 7| I| the ##09100108<update^clause>. When the cursor is positioned on a row of the
ENG|09040802 | 8| | result table, then column values are selected from the corresponding
ENG|09040802 | 9| | row and are assigned to parameters. The corresponding row is the row
ENG|09040802 | 10| I| from the table that is specified in the ##09100103<from^clause> of the
ENG|09040802 | 11| I| ##091059<query^statement> and from which the row of the result table was
ENG|09040802 | 12|S | formed.
ENG|09040802 | 19| | A row is to be read from the table customer. Which row will be read
ENG|09040802 | 20| | depends on the position of the cursor which points to a row within the
ENG|09040802 | 21| | result table resultcustomer generated by a previous
ENG|09040802 | 22| I| ##09100110<named^select^statement> and the option FOR UPDATE.
ENG|09040802 | 24| E| SELECT resultcustomer (name)
ENG|09040802 | 25| E| FROM customer
ENG|09040802 | 26| E| WHERE title = 'Mrs'
ENG|09040802 | 27| E| FOR UPDATE
ENG|09040802 | 28| E| /
ENG|09040802 | 29| E| FETCH resultcustomer INTO :name
ENG|09040802 | 30| E| /
ENG|09040802 | 31| E| SELECT DIRECT cno, title, firstname, name, zip, address
ENG|09040802 | 32| E| INTO :cno, :title, :firstname, :name, :zip, :address
ENG|09040802 | 33| E| FROM customer
ENG|09040802 | 34| E| WHERE CURRENT OF resultcustomer
ENG|09040802 | 36|RI| ##091005Syntax
ENG|09040803 | 1| | SELECT ordered: searched
ENG|09040803 | 3| I| The ##091006<select^ordered^statement:^searched> selects the first or last row,
ENG|09040803 | 4| | or, in relation to a position, the next or previous row in an ordered
ENG|09040803 | 5| | table. The order is defined by a key or by an index. The position is
ENG|09040803 | 6| | defined by the specification of key values and index values.
ENG|09040803 | 8| | The customer with the next customer number following the customer with
ENG|09040803 | 9| | the customer number 3400 is to be selected.
ENG|09040803 | 11| E| SELECT NEXT cno, title, firstname, name, zip, address
ENG|09040803 | 12| E| INTO :cno, :title, :firstname, :name, :zip, :address
ENG|09040803 | 13| E| FROM customer
ENG|09040803 | 14| E| KEY cno = 3400
ENG|09040803 | 16|RI| ##091006Syntax
ENG|09040804 | 1| | SELECT ordered: positioned
ENG|09040804 | 3| I| The ##091007<select^ordered^statement:^positioned> selects the first or last
ENG|09040804 | 4| | row, or, in relation to a position, the next or previous row in an
ENG|09040804 | 5| | ordered table. The order is defined by a key or by an index. The
ENG|09040804 | 6|S | position is defined by a cursor position.
ENG|09040804 | 19| | From the table customer, the next row is to be read. Which row is the
ENG|09040804 | 20| | next depends on the position of the cursor which points to a row within
ENG|09040804 | 21| | the result table resultcustomer generated by a previous
ENG|09040804 | 22| I| ##09100110<named^select^statement> and the option FOR UPDATE.
ENG|09040804 | 24| E| SELECT resultcustomer (name)
ENG|09040804 | 25| E| FROM customer
ENG|09040804 | 26| E| WHERE title = 'Mrs'
ENG|09040804 | 27| E| FOR UPDATE
ENG|09040804 | 28| E| /
ENG|09040804 | 29| E| FETCH resultcustomer INTO :name
ENG|09040804 | 30| E| /
ENG|09040804 | 31| E| SELECT NEXT cno, title, firstname, name, zip, address
ENG|09040804 | 32| E| INTO :cno, :title, :firstname, :name, :zip, :address
ENG|09040804 | 33| E| FROM customer
ENG|09040804 | 34| E| WHERE CURRENT OF resultcustomer
ENG|09040804 | 35|RI| ##091007Syntax
ENG|090409 | 1| | Search Strategy (EXPLAIN)
ENG|090409 | 3| I| The ##091008<explain^statement> describes the internal search strategy applied
ENG|090409 | 4| | by ADABAS when searching certain rows in given tables. This statement
ENG|090409 | 5| | indicates in particular whether and in which form key columns or
ENG|090409 | 6| | indexes are used for the search. This SQL statement can be used to
ENG|090409 | 7| | check the effects which the creation or dropping of indexes will have
ENG|090409 | 8| | for the selection of the search strategy for the specified SQL
ENG|090409 | 9| | statement. It is also possible to estimate the time which ADABAS will
ENG|090409 | 10| | need to process the specified SQL statement. The specified query is not
ENG|090409 | 11|S | performed during the execution of this SQL statement.
ENG|090409 | 19| | The search strategy used to display the names and travel data for
ENG|090409 | 20| | existing reservations in a certain order is to be found out.
ENG|090409 | 22| E| EXPLAIN SELECT firstname, name, arrival, departure
ENG|090409 | 23| E| FROM customer, reservation
ENG|090409 | 24| E| WHERE customer.cno = reservation.cno
ENG|090409 | 25| E| ORDER BY name
ENG|090409 | 27| | In principle, the following result table is generated:
ENG|090409 | 29| | OWNER |TABLENAME |COLU|STRATEGY |PAGECOUNT |
ENG|090409 | 30| | -----------|------------|----|-------------------------------|----------|
ENG|090409 | 31| | SQLTRAVEL00|RESERVATION | |TABLE SCAN | 132|
ENG|090409 | 32| | SQLTRAVEL00|CUSTOMER |CNO |JOIN VIA KEY COLUMN | 222|
ENG|090409 | 33| | SQLTRAVEL00| | | RESULT IS COPIED, COSTVALUE IS| 485|
ENG|090409 | 35| | Explanations for the individual columns can be found in the precompiler
ENG|090409 | 36|S | manuals.
ENG|090409 | 37|RI| ##091008Syntax
ENG|0905 | 1| | Common Elements
ENG|0905 | 2| | ---------------
ENG|0905 | 4| M| #01Functions
ENG|0905 | 5| M| #02Expression
ENG|0905 | 6| M| #03Predicates
ENG|0905 | 7|RM| #04Search^Condition
ENG|090501 | 1| | Functions
ENG|090501 | 2| | ---------
ENG|090501 | 4| M| #01Arithmetical^Functions
ENG|090501 | 5| M| #09Trigonometric^Functions
ENG|090501 | 6| M| #02String^Functions
ENG|090501 | 7| M| #03Date^Functions
ENG|090501 | 8| M| #04Time^Functions
ENG|090501 | 9| M| #05Extraction^Functions
ENG|090501 | 10| M| #06Special^Functions
ENG|090501 | 11| M| #07Conversion^Functions
ENG|090501 | 12| M| #10User-defined^Functions
ENG|090501 | 13|RM| #08Set^Functions
ENG|09050101 | 1| | Arithmetical Functions
ENG|09050101 | 2| | ----------------------
ENG|09050101 | 4| M| #01TRUNC,^ROUND
ENG|09050101 | 5| M| #02NOROUND
ENG|09050101 | 6| M| #03FIXED
ENG|09050101 | 7| M| #04CEIL,^FLOOR
ENG|09050101 | 8| M| #05SIGN,^ABS
ENG|09050101 | 9| M| #06POWER,^EXP
ENG|09050101 | 10| M| #09SQRT
ENG|09050101 | 11| M| #10LN,^LOG
ENG|09050101 | 12| M| #11PI
ENG|09050101 | 13| M| #07LENGTH
ENG|09050101 | 14|RM| #08INDEX
ENG|0905010101 | 1| | TRUNC ( x [, <number digits>] )
ENG|0905010101 | 3| | The function TRUNC allows a value to be truncated to a specified number
ENG|0905010101 | 4| | of digits to the right or to the left of the decimal sign. If <number
ENG|0905010101 | 5| | digits> is not specified, then 0 is assumed for it.
ENG|0905010101 | 7| | ROUND ( x [, <number digits>] )
ENG|0905010101 | 9| | The function ROUND allows a value to be rounded to a specified number
ENG|0905010101 | 10| | of digits to the right or to the left of the decimal sign. If <number
ENG|0905010101 | 11|S | digits> is not specified, then 0 is assumed for it.
ENG|0905010101 | 19| | x | TRUNC (x,-1) | TRUNC (x,2) | ROUND (x,-1) | ROUND (x,2)
ENG|0905010101 | 20| | ---------|--------------|-------------|--------------|-------------
ENG|0905010101 | 21| | 150.525 | 150 | 150.52 | 150 | 150.53
ENG|0905010101 | 22| | 78.050 | 70 | 78.05 | 80 | 78.05
ENG|0905010101 | 23| | 128.225 | 120 | 128.22 | 130 | 128.23
ENG|0905010101 | 25|RI| ##09105301Syntax
ENG|0905010102 | 1| | NOROUND ( x )
ENG|0905010102 | 3| | The function NOROUND prevents the result of the <expression> from being
ENG|0905010102 | 4| | rounded in the case of an <update statement> or an <insert statement>
ENG|0905010102 | 5| | with <query expression>. Without a NOROUND specification the result of
ENG|0905010102 | 6| | the <expression> will be rounded when its data type differs from that
ENG|0905010102 | 7| | of the target column. If the non-rounded number does not correspond to
ENG|0905010102 | 8| | the data type of the target column, an error message is output.
ENG|0905010102 | 10| | Data type of column: | FIXED (5, 2) | FIXED (6, 3)
ENG|0905010102 | 11| | x | NOROUND ( x ) | NOROUND ( x )
ENG|0905010102 | 12| | ---------|---------------|---------------
ENG|0905010102 | 13| | 150.525 | error | 150.525
ENG|0905010102 | 14| | 378.050 | 378.05 | 378.050
ENG|0905010102 | 15| | 28.225 | error | 128.225
ENG|0905010102 | 17|RI| ##09105301Syntax
ENG|0905010103 | 1| | FIXED ( x, [<digits>[, <fractional digits>]] )
ENG|0905010103 | 3| | The function FIXED outputs a number in a format of the data type FIXED
ENG|0905010103 | 4| | (<digits>, <fractional digits>). The fractional digits are rounded to
ENG|0905010103 | 5| | <fractional digits> digits after the decimal sign, if necessary. If
ENG|0905010103 | 6| | <fractional digits> is not specified, then the value 0 is implicitly
ENG|0905010103 | 7| | assumed. If <digits> is not specified, then the value 18 is implicitly
ENG|0905010103 | 8| | assumed.
ENG|0905010103 | 10| | x | FIXED (x, 6, 2) | FIXED (x, 3)
ENG|0905010103 | 11| | ---------|-----------------|---------------
ENG|0905010103 | 12| | 150.525 | 150.53 | 151
ENG|0905010103 | 13| | 78.050 | 78.05 | 78
ENG|0905010103 | 14| | 128.225 | 128.23 | 128
ENG|0905010103 | 16|RI| ##09105301Syntax
ENG|0905010104 | 1| | CEIL ( x )
ENG|0905010104 | 3| | The function CEIL produces the smallest integer value that is greater
ENG|0905010104 | 4| | or equal to x. The result is a fixed point number with 0 fractional
ENG|0905010104 | 5| | digits.
ENG|0905010104 | 7| | FLOOR ( x )
ENG|0905010104 | 9| | The function FLOOR produces the greatest integer value that is less
ENG|0905010104 | 10| | than or equal to x. The result is a fixed point number with 0
ENG|0905010104 | 11| | fractional digits.
ENG|0905010104 | 13| | If it is not possible to represent the result of CEIL (x) or FLOOR (x)
ENG|0905010104 | 14|S | in a fixed point number, an error message is output.
ENG|0905010104 | 19| | x | CEIL ( x ) | FLOOR ( x )
ENG|0905010104 | 20| | ----------|------------|-------------
ENG|0905010104 | 21| | 50.525 | 51 | 50
ENG|0905010104 | 22| | -21.950 | -21 | -22
ENG|0905010104 | 23| | -49.825 | -49 | -50
ENG|0905010104 | 24| | 28.225 | 29 | 28
ENG|0905010104 | 25| | -76.000 | -76 | -76
ENG|0905010104 | 26| | 17.000 | 17 | 17
ENG|0905010104 | 28|RI| ##09105301Syntax
ENG|0905010105 | 1| | SIGN ( x )
ENG|0905010105 | 3| | The function SIGN produces the sign of the number x.
ENG|0905010105 | 4| | Then applies: If x < 0, then SIGN (x) = -1.
ENG|0905010105 | 5| | If x = 0, then SIGN (x) = 0.
ENG|0905010105 | 6| | If x > 0, then SIGN (x) = 1.
ENG|0905010105 | 8| | ABS ( x )
ENG|0905010105 | 10| | The function ABS produces the absolute value of the number x.
ENG|0905010105 | 12| | x | SIGN ( x ) | ABS ( x )
ENG|0905010105 | 13| | ---------|------------|-------------
ENG|0905010105 | 14| | 65.00 | 1 | 65.00
ENG|0905010105 | 15| | 0.00 | 0 | 0.00
ENG|0905010105 | 16| | -25.00 | -1 | 25.00
ENG|0905010105 | 17| | 45.00 | 1 | 45.00
ENG|0905010105 | 18|RI| ##09105301Syntax
ENG|0905010106 | 1| | POWER ( x, <exponent> )
ENG|0905010106 | 3| | The function POWER produces the result x to the power <exponent>.
ENG|0905010106 | 5| | EXP ( <exponent> )
ENG|0905010106 | 7| | The function EXP produces e ** <exponent>, i.e., the constant
ENG|0905010106 | 8| | 2.71828183 to the power of the specified exponent.
ENG|0905010106 | 10| | x | POWER (x, 3) | EXP ( x )
ENG|0905010106 | 11| | ------|--------------|--------------------------
ENG|0905010106 | 12| | 10 | 1000 | 2.20264657948067300E+04
ENG|0905010106 | 13| | 20 | 8000 | 4.85165195409791000E+08
ENG|0905010106 | 14| | 30 | 27000 | 1.06864745815244500E+13
ENG|0905010106 | 15| | 40 | 64000 | 2.35385266837020500E+17
ENG|0905010106 | 16|RI| ##09105301Syntax
ENG|0905010107 | 1| | LENGTH ( x )
ENG|0905010107 | 3| | The function LENGTH produces the length (the number of bytes required
ENG|0905010107 | 4| | for the internal representation of the value) of x. It can be applied
ENG|0905010107 | 5| | to any data type. LENGTH (x) applied to character strings produces the
ENG|0905010107 | 6| | length of a character string without consideration of trailing blanks
ENG|0905010107 | 7| | (code attribute ASCII or EBCDIC) or binary zeros (code attribute BYTE).
ENG|0905010107 | 9| | x | LENGTH ( x )
ENG|0905010107 | 10| | ------------|--------------
ENG|0905010107 | 11| | 'Alfred' | 6
ENG|0905010107 | 12| | '1000' | 4
ENG|0905010107 | 13| | '6879.457' | 8
ENG|0905010107 | 15|RI| ##09105301Syntax
ENG|0905010108 | 1| | INDEX ( <string>, <search string> [,<start position> [,<number occurrence>]] )
ENG|0905010108 | 3| | The function INDEX produces the position of the <search string>
ENG|0905010108 | 4| | specified as the second parameter within the character string specified
ENG|0905010108 | 5| | as the first parameter. The optional specification of <start position>
ENG|0905010108 | 6| | indicates a start position for the search for the <search string>. If
ENG|0905010108 | 7| | it is omitted, the search starts at the beginning; i.e., at start
ENG|0905010108 | 8| | position 1. The start position must be greater than or equal to 1. The
ENG|0905010108 | 9| | optional specification of <number occurrence> indicates which
ENG|0905010108 | 10| | occurrence of the <search string> is to be searched for. If it is
ENG|0905010108 | 11| | omitted, the first occurrence of the <search string> will be searched
ENG|0905010108 | 12|S | for.
ENG|0905010108 | 19| | x | INDEX (x,'en') | INDEX (x,'n',4) | INDEX (x,'e',3,2 )
ENG|0905010108 | 20| | ----------------|----------------|-----------------|--------------------
ENG|0905010108 | 21| | 'Congress' | 0 | 0 | 0
ENG|0905010108 | 22| | 'Long Island' | 0 | 10 | 0
ENG|0905010108 | 23| | 'Regency' | 4 | 5 | 0
ENG|0905010108 | 24| | 'Eight Avenue' | 9 | 10 | 12
ENG|0905010108 | 26|RI| ##09105301Syntax
ENG|0905010109 | 1| | SQRT ( x )
ENG|0905010109 | 3| | The function SQRT computes the square root of numbers >= 0.
ENG|0905010109 | 5| | x | SQRT ( x )
ENG|0905010109 | 6| | ------|-------------------------
ENG|0905010109 | 7| | 10 | 3.16227766016837936E+00
ENG|0905010109 | 8| | 20 | 4.47213595499957943E+00
ENG|0905010109 | 9| | 30 | 5.47722557505166110E+00
ENG|0905010109 | 10| | 40 | 6.32455532033675865E+00
ENG|0905010109 | 11|RI| ##09105301Syntax
ENG|0905010110 | 1| | LN ( x )
ENG|0905010110 | 3| | The function LN produces the natural logarithm of the number x.
ENG|0905010110 | 5| | LOG ( <base>, x )
ENG|0905010110 | 7| | The function LOG produces the logarithm of the number x to the base
ENG|0905010110 | 8| | <base>.
ENG|0905010110 | 10| | x | LN (x) | LOG (2, x)
ENG|0905010110 | 11| | ------|-------------------------|-------------------------
ENG|0905010110 | 12| | 8 | 2.07944154167983600E+00 | 3.00000000000000000E+00
ENG|0905010110 | 13| | 107 | 4.67282883446190700E+00 | 6.74146698640114900E+00
ENG|0905010110 | 15|RI| ##09105301Syntax
ENG|0905010111 | 1| | PI
ENG|0905010111 | 3| | PI
ENG|0905010111 | 4| | --------------------------
ENG|0905010111 | 5| | 3.14159265358979400E+00
ENG|0905010111 | 7|RI| ##09105301Syntax
ENG|09050102 | 1| | String Functions
ENG|09050102 | 2| | ----------------
ENG|09050102 | 4| M| #01||,^&
ENG|09050102 | 5| M| #02SUBSTR
ENG|09050102 | 6| M| #03LFILL,^RFILL
ENG|09050102 | 7| M| #04LPAD,^RPAD
ENG|09050102 | 8| M| #05TRIM,^LTRIM,^RTRIM
ENG|09050102 | 9| M| #06EXPAND
ENG|09050102 | 10| M| #07UPPER,^LOWER
ENG|09050102 | 11| M| #08INITCAP
ENG|09050102 | 12| M| #09REPLACE
ENG|09050102 | 13| M| #10TRANSLATE
ENG|09050102 | 14| M| #11MAPCHAR
ENG|09050102 | 15| M| #12ALPHA
ENG|09050102 | 16| M| #13ASCII,^EBCDIC
ENG|09050102 | 17|RM| #14SOUNDEX
ENG|0905010201 | 1| | <string x> || <string y>, <string x> & <string y>
ENG|0905010201 | 3| | The functions || and & produce the concatenation <string x> <string y>.
ENG|0905010201 | 5| | x | y | x || y or x & y
ENG|0905010201 | 6| | ---------------|-----------------|-----------------------------
ENG|0905010201 | 7| | 'Alfed lives' | ' in New York.' | 'Alfred lives in New York.'
ENG|0905010201 | 8| | 'This is a ' | ' demo line.' | 'This is a demo line.'
ENG|0905010201 | 10|RI| ##09105302Syntax
ENG|0905010202 | 1| | SUBSTR ( <string>, <start position> [, <length>] )
ENG|0905010202 | 3| | The function SUBSTR produces that part of <string> which begins at
ENG|0905010202 | 4| | <start position> and has a length of <length> characters. If the
ENG|0905010202 | 5| | parameter <length> is missing, all characters are produced from <start
ENG|0905010202 | 6| | position> to the end of <string>. If <length> is greater than the
ENG|0905010202 | 7| | length of <string> remaining from <start position>, then as many blanks
ENG|0905010202 | 8| | are appended to the end of <string> as are needed to give <length>.
ENG|0905010202 | 10| | x | SUBSTR ( x, 11, 9 )
ENG|0905010202 | 11| | --------------------------------|---------------------
ENG|0905010202 | 12| | 'This is a demo line of text.' | 'demo line'
ENG|0905010202 | 13| | 'Too short demo.' | 'demo. '
ENG|0905010202 | 15|RI| ##09105302Syntax
ENG|0905010203 | 1| | LFILL, RFILL ( <string>, <char> [, <length>] )
ENG|0905010203 | 3| | The function LFILL inserts the character <char> at the beginning of
ENG|0905010203 | 4| | <string> as often as is needed to give the <string> the specified
ENG|0905010203 | 5| | <length>. The function RFILL does this at the end of <string>. If the
ENG|0905010203 | 6| | specification <length> is missing, <string> must denote a CHAR column
ENG|0905010203 | 7| | which will be filled up to its maximum length.
ENG|0905010203 | 9| | x | LFILL ( x, '*', 26 )
ENG|0905010203 | 10| | ------------------------|------------------------------
ENG|0905010203 | 11| | 'A line of demo text.' | '******A line of demo text.'
ENG|0905010203 | 13| | x | RFILL ( x, '*', 26 )
ENG|0905010203 | 14| | ------------------------|------------------------------
ENG|0905010203 | 15| | 'A line of demo text.' | 'A line of demo text.******'
ENG|0905010203 | 17|RI| ##09105302Syntax
ENG|0905010204 | 1| | LPAD, RPAD ( <string>, <number>, <char> [, <max. length>] )
ENG|0905010204 | 3| | The function LPAD inserts the character <char> <number> times at the
ENG|0905010204 | 4| | beginning of <string>. The function RPAD does this at the end of
ENG|0905010204 | 5| | <string>. <string> must not exceed the <maximum length> which can
ENG|0905010204 | 6| | optionally be specified. If this specification is missing, <string>
ENG|0905010204 | 7| | must denote a CHAR column.
ENG|0905010204 | 9| | x | LPAD ( x, 2, '*', 30 )
ENG|0905010204 | 10| | --------------------------------|----------------------------------
ENG|0905010204 | 11| | 'This is a demo line of text.' | '**This is a demo line of text.'
ENG|0905010204 | 13| | x | RPAD ( x, 2, '*', 30 )
ENG|0905010204 | 14| | --------------------------------|----------------------------------
ENG|0905010204 | 15| | 'This is a demo line of text.' | 'This is a demo line of text.**'
ENG|0905010204 | 17|RI| ##09105302Syntax
ENG|0905010205 | 1| | LTRIM, RTRIM, TRIM ( <string> [, <char set>] )
ENG|0905010205 | 3| | The function LTRIM removes the character <char> from the beginning of
ENG|0905010205 | 4| | <string>. The function RTRIM removes the character <char set> from the
ENG|0905010205 | 5| | end of <string>. The function TRIM removes the character <char set>
ENG|0905010205 | 6| | from the beginning and end of <string>. The result begins or ends with
ENG|0905010205 | 7| | the first character not specified in <char set>. The functions TRIM and
ENG|0905010205 | 8|S | RTRIM first remove blanks, then <char set> from the end of <string>.
ENG|0905010205 | 19| | x | LTRIM (x, 'ghinst ') | TRIM (x, 'ghinstT')
ENG|0905010205 | 20| | -------------------------|-----------------------|--------------------
ENG|0905010205 | 21| | 'this is a demo string' | 'a demo string' | ' is a demo str'
ENG|0905010205 | 22| | 'The second text ' | 'The second text' | 'e second tex'
ENG|0905010205 | 23|RI| ##09105302Syntax
ENG|0905010206 | 1| | EXPAND ( <string>, <length> )
ENG|0905010206 | 3| | The function EXPAND inserts as many blanks at the end of <string> as
ENG|0905010206 | 4| | are needed to give <string> the specified <length>.
ENG|0905010206 | 6| | x | EXPAND ( x, 35 )
ENG|0905010206 | 7| | --------------------------------|---------------------------------------
ENG|0905010206 | 8| | 'This is a demo line of text.' | 'This is a demo line of text. '
ENG|0905010206 | 10|RI| ##09105302Syntax
ENG|0905010207 | 1| | UPPER, LOWER ( <string> )
ENG|0905010207 | 3| | The function UPPER transforms a character string into uppercase
ENG|0905010207 | 4| | characters; the function LOWER transforms it into lowercase characters.
ENG|0905010207 | 6| | x | UPPER ( x )
ENG|0905010207 | 7| | --------------------------------|--------------------------------
ENG|0905010207 | 8| | 'This is a demo line of text.' | 'THIS IS A DEMO LINE OF TEXT.'
ENG|0905010207 | 10| | x | LOWER ( x )
ENG|0905010207 | 11| | --------------------------------|--------------------------------
ENG|0905010207 | 12| | 'This is a demo line of text.' | 'this is a demo line of text.'
ENG|0905010207 | 14|RI| ##09105302Syntax
ENG|0905010208 | 1| | INITCAP ( <string> )
ENG|0905010208 | 3| | The function INITCAP always transforms the first letter of a word into
ENG|0905010208 | 4| | an uppercase character. Words are separated by one or more characters
ENG|0905010208 | 5| | which are neither letters nor digits.
ENG|0905010208 | 7| | x | INITCAP ( x )
ENG|0905010208 | 8| | --------------------------------|--------------------------------
ENG|0905010208 | 9| | 'This is a demo line of text.' | 'This Is A Demo Line Of Text.'
ENG|0905010208 | 11|RI| ##09105302Syntax
ENG|0905010209 | 1| | REPLACE ( <string>, <search string> [, <replace string>] )
ENG|0905010209 | 3| | The function REPLACE replaces <string> within <search string> by
ENG|0905010209 | 4| | <replace string> which can be optionally specified. If <replace string>
ENG|0905010209 | 5| | is missing, <search string> will be deleted.
ENG|0905010209 | 7| | x | REPLACE ( x, 'line', 'phrase' )
ENG|0905010209 | 8| | --------------------------------|----------------------------------
ENG|0905010209 | 9| | 'This is a demo line of text.' | 'This is a demo phrase of text.'
ENG|0905010209 | 11|RI| ##09105302Syntax
ENG|0905010210 | 1| | TRANSLATE ( <string>, <search character>, <replace character> )
ENG|0905010210 | 3| | The function TRANSLATE replaces the ith <search character> in <string>
ENG|0905010210 | 4| | by the ith <replace character>. The lengths of the character strings
ENG|0905010210 | 5| | <search character> and <replace character> must be equal.
ENG|0905010210 | 7| | x | TRANSLATE ( x, 'aei', 'ouo' )
ENG|0905010210 | 8| | --------------------------------|----------------------------------
ENG|0905010210 | 9| | 'This is a demo line of text.' | 'Thos os o dumo lonu of tuxt.'
ENG|0905010210 | 11|RI| ##09105302Syntax
ENG|0905010211 | 1| | MAPCHAR ( <string> [, <max. length>] [, <mapchar set name>] )
ENG|0905010211 | 3| | The function MAPCHAR allows country-specific characters to be sorted
ENG|0905010211 | 4| | according to replace characters. Thus, for example, 'ⁿ' can be sorted
ENG|0905010211 | 5| | as 'ue'. <string> is mapped with the help of <mapchar set name>. The
ENG|0905010211 | 6| | optional specification <max. length> indicates the maximum length of
ENG|0905010211 | 7| | the result. If <max. length> and <mapchar set name> are missing, the
ENG|0905010211 | 8| | length of <string> is assumed as maximum length and the <mapchar set
ENG|0905010211 | 9| | name> DEFAULTMAP is used.
ENG|0905010211 | 11| | x | MAPCHAR ( x )
ENG|0905010211 | 12| | ------------|---------------
ENG|0905010211 | 13| | 'K÷ln' | 'Koeln'
ENG|0905010211 | 14| | 'Mⁿnchen' | 'Muenchen'
ENG|0905010211 | 16|RI| ##09105302Syntax
ENG|0905010212 | 1| | ALPHA ( <string> )
ENG|0905010212 | 3| | The function ALPHA enables an appropriate sort, for example, if 'ⁿ' is
ENG|0905010212 | 4| | to be arranged in order as 'UE'. ALPHA corresponds to UPPER ( MAPCHAR
ENG|0905010212 | 5| | (a, p, DEFAULTMAP) ).
ENG|0905010212 | 7| | x | ALPHA ( x )
ENG|0905010212 | 8| | ------------|-------------
ENG|0905010212 | 9| | 'K÷ln' | 'KOELN'
ENG|0905010212 | 10| | 'Mⁿnchen' | 'MUENCHEN'
ENG|0905010212 | 12|RI| ##09105302Syntax
ENG|0905010213 | 1| | ASCII, EBCDIC ( <string> )
ENG|0905010213 | 3| | The function ASCII converts <string> into ASCII format. The function
ENG|0905010213 | 4| | EBCDIC converts <string> into EBCDIC format.
ENG|0905010213 | 6| | x | HEX (EBCDIC (x)) | HEX (ASCII (x))
ENG|0905010213 | 7| | -----------|------------------|-----------------
ENG|0905010213 | 8| | 'Mⁿller' | D4DC93938599 | 4DFC6C6C6572
ENG|0905010213 | 9| | 'Meier' | D485898599 | 4D65696572
ENG|0905010213 | 10| | 'Schulze' | E28388A493A985 | 536368756C7A65
ENG|0905010213 | 11| | 'Smith' | E29489A388 | 536D697468
ENG|0905010213 | 12| | '12345' | F1F2F3F4F5 | 3132333435
ENG|0905010213 | 14|RI| ##09105302Syntax
ENG|0905010214 | 1| | SOUNDEX ( <string> )
ENG|0905010214 | 3| | The function SOUNDEX appplies the soundex algorithm to <string> and
ENG|0905010214 | 4| | produces a value of data type CHAR (4) as the result. The usage of
ENG|0905010214 | 5| I| SOUNDEX is convenient when the ##09105711<sounds^predicate> is frequently applied
ENG|0905010214 | 6| | to a column c. As no invertations can be used in such a case, it is
ENG|0905010214 | 7| | recommended for performance reasons to define an additional table
ENG|0905010214 | 8| | column c1 of data type CHAR (4) into which the result of SOUNDEX (c)
ENG|0905010214 | 9| | will be inserted. The requests should then refer to c1. For performance
ENG|0905010214 | 10| | reasons, the condition
ENG|0905010214 | 11| | c1 = SOUNDEX (<string literal>)
ENG|0905010214 | 12| | should be used instead of
ENG|0905010214 | 13| | c SOUNDS LIKE <string literal>
ENG|0905010214 | 14|RI| ##09105302Syntax
ENG|09050103 | 1| | Date Functions
ENG|09050103 | 2| | --------------
ENG|09050103 | 4| M| #01ADDDATE,^SUBDATE
ENG|09050103 | 5| M| #02DATEDIFF
ENG|09050103 | 6| M| #03DAYOFWEEK
ENG|09050103 | 7| M| #04WEEKOFYEAR
ENG|09050103 | 8| M| #08DAYOFMONTH
ENG|09050103 | 9| M| #05DAYOFYEAR
ENG|09050103 | 10| M| #06MAKEDATE
ENG|09050103 | 11|RM| #07DAYNAME,^MONTHNAME
ENG|0905010301 | 1| | ADDDATE, SUBDATE ( <date or timestamp>, <number days> )
ENG|0905010301 | 3| | The functions ADDDATE and SUBDATE add or subtract <number days> to/from
ENG|0905010301 | 4| | <date or timestamp>. The result is a date or timestamp in the current
ENG|0905010301 | 5| | date format.
ENG|0905010301 | 7| | current date format: INTERNAL current date format: EUR
ENG|0905010301 | 9| | x | ADDDATE ( x, 10 ) x | ADDDATE ( x, 10 )
ENG|0905010301 | 10| | ------------|------------------- --------------|-------------------
ENG|0905010301 | 11| | '19951230' | '19960109' '30.12.1995' | '09.01.1996'
ENG|0905010301 | 13| | current date format: INTERNAL
ENG|0905010301 | 15| M| #07DAYNAME,^MONTHNAME
ENG|0905010301 | 16|RI| ##09105303Syntax
ENG|0905010302 | 1| | DATEDIFF ( <date or timestamp>, <date or timestamp> )
ENG|0905010302 | 3| | The function DATEDIFF produces the difference between the two
ENG|0905010302 | 4| | parameters <date or timestamp> as the number of days.
ENG|0905010302 | 6| | current date format: EUR
ENG|0905010302 | 8| | x | y | DATEDIFF ( x, y )
ENG|0905010302 | 9| | --------------|--------------|-------------------
ENG|0905010302 | 10| | '17.01.1995' | '23.08.1996' | 584
ENG|0905010302 | 12|RI| ##09105303Syntax
ENG|0905010303 | 1| | DAYOFWEEK ( <date or timestamp> )
ENG|0905010303 | 3| | The function DAYOFWEEK produces the day of the week with respect to
ENG|0905010303 | 4| | <date or timestamp>. The day of the week is output as numeric value
ENG|0905010303 | 5| | between 1 and 7, where 1/2 stands for Monday, 7/1 for Sunday, according
ENG|0905010303 | 6| | to the language.
ENG|0905010303 | 8| | current date format: EUR; language: DEU
ENG|0905010303 | 10| | x | DAYOFWEEK ( x )
ENG|0905010303 | 11| | --------------|-----------------
ENG|0905010303 | 12| | '15.07.1996' | 1
ENG|0905010303 | 14|RI| ##09105303Syntax
ENG|0905010304 | 1| | WEEKOFYEAR ( <date or timestamp> )
ENG|0905010304 | 3| | The function WEEKOFYEAR produces a numeric value between 1 and 53
ENG|0905010304 | 4| | indicating the week of the year in which the specified <date or
ENG|0905010304 | 5| | timestamp> is located.
ENG|0905010304 | 7| | current date format: EUR
ENG|0905010304 | 9| | x | WEEKOFYEAR ( x )
ENG|0905010304 | 10| | --------------|------------------
ENG|0905010304 | 11| | '15.07.1996' | 29
ENG|0905010304 | 13|RI| ##09105303Syntax
ENG|0905010305 | 1| | DAYOFYEAR ( <date or timestamp> )
ENG|0905010305 | 3| | The function DAYOFYEAR produces a numeric value between 1 and 366
ENG|0905010305 | 4| | indicating the day of the year which is the specified <date or
ENG|0905010305 | 5| | timestamp>.
ENG|0905010305 | 7| | current date format: EUR
ENG|0905010305 | 9| | x | DAYOFYEAR ( x )
ENG|0905010305 | 10| | --------------|-----------------
ENG|0905010305 | 11| | '15.07.1996' | 197
ENG|0905010305 | 13|RI| ##09105303Syntax
ENG|0905010306 | 1| | MAKEDATE ( <year>, <day of the year> )
ENG|0905010306 | 3| | The function MAKEDATE produces a date. The result is calculated from
ENG|0905010306 | 4| | <year> and <day of the year>.
ENG|0905010306 | 6| | current date format: EUR
ENG|0905010306 | 8| | x | y | MAKEDATE ( x, y )
ENG|0905010306 | 9| | ------|-------|-------------------
ENG|0905010306 | 10| | 1996 | 212 | '31.07.1996'
ENG|0905010306 | 12|RI| ##09105303Syntax
ENG|0905010307 | 1| | DAYNAME ( <date or timestamp> )
ENG|0905010307 | 3| | The function DAYNAME produces an alphanumeric value indicating the name
ENG|0905010307 | 4| | of the weekday denoted by <date or timestamp>, according to the
ENG|0905010307 | 5| | language.
ENG|0905010307 | 7| | MONTHNAME ( <date or timestamp> )
ENG|0905010307 | 9| | The function MONTHNAME produces an alphanumeric value indicating the
ENG|0905010307 | 10| | name of the month indicated by <date or timestamp>, according to the
ENG|0905010307 | 11| | language.
ENG|0905010307 | 13| | current date format: INTERNAL; language: ENG
ENG|0905010307 | 15| | x | DAYNAME (x) | MONTHNAME (x)
ENG|0905010307 | 16| | ------------|-------------|---------------
ENG|0905010307 | 17| | '19961224' | 'Tuesday' | 'December'
ENG|0905010307 | 18|RI| ##09105303Syntax
ENG|0905010308 | 1| | DAYOFMONTH ( <date or timestamp> )
ENG|0905010308 | 3| | The function DAYOFMONTH produces a numeric value between 1 and 31
ENG|0905010308 | 4| | indicating what day of the month is the day specified in <date or
ENG|0905010308 | 5| | timestamp>.
ENG|0905010308 | 7| | current date format: EUR
ENG|0905010308 | 9| | x | DAYOFMONTH ( x )
ENG|0905010308 | 10| | --------------|------------------
ENG|0905010308 | 11| | '15.07.1996' | 15
ENG|0905010308 | 13|RI| ##09105303Syntax
ENG|09050104 | 1| | Time Functions
ENG|09050104 | 2| | --------------
ENG|09050104 | 4| M| #01ADDTIME,^SUBTIME
ENG|09050104 | 5| M| #02TIMEDIFF
ENG|09050104 | 6|RM| #03MAKETIME
ENG|0905010401 | 1| | ADDTIME, SUBTIME ( <time or timestamp>, <time> )
ENG|0905010401 | 3| | The functions ADDTIME and SUBTIME produce a time value or a timestamp
ENG|0905010401 | 4| | which is the result of adding or subtracting <time or timestamp> and
ENG|0905010401 | 5| | <time>. For SUBTIME, <time> must be less than <time or timestamp> if
ENG|0905010401 | 6| | <time or timestamp> is a time value.
ENG|0905010401 | 8| | current time format: EUR
ENG|0905010401 | 10| | x | y | ADDTIME ( x, y )
ENG|0905010401 | 11| | ------------|------------|------------------
ENG|0905010401 | 12| | '10.53.10' | '19.12.25' | '30.05.35'
ENG|0905010401 | 14|RI| ##09105304Syntax
ENG|0905010402 | 1| | TIMEDIFF ( <time or timestamp 1>, <time or timestamp 2> )
ENG|0905010402 | 3| | The function TIMEDIFF produces the time difference between <time or
ENG|0905010402 | 4| | timestamp 1> and <time or timestamp 2> as the result. Both <time or
ENG|0905010402 | 5| | timestamp 1> and <time or timestamp 2> must either be time values or
ENG|0905010402 | 6| | timestamp values.
ENG|0905010402 | 8| | current time format: EUR
ENG|0905010402 | 10| | x | y | TIMEDIFF ( x, y )
ENG|0905010402 | 11| | ------------|------------|-------------------
ENG|0905010402 | 12| | '20.46.57' | '17.29.45' | '03.17.12'
ENG|0905010402 | 14|RI| ##09105304Syntax
ENG|0905010403 | 1| | MAKETIME ( <hours>, <minutes, <seconds> )
ENG|0905010403 | 3| | The function MAKETIME produces a time value which is calculated as the
ENG|0905010403 | 4| | sum of <hours>, <minutes>, and <seconds>.
ENG|0905010403 | 6| | current time format: EUR
ENG|0905010403 | 8| | x | y | z | MAKETIME ( x, y, z )
ENG|0905010403 | 9| | -------|-------|-------|----------------------
ENG|0905010403 | 10| | 20 | 99 | 56 | '21.39.56'
ENG|0905010403 | 12|RI| ##09105304Syntax
ENG|09050105 | 1| | Extraction Functions
ENG|09050105 | 2| | --------------------
ENG|09050105 | 4| M| #01YEAR,^MONTH,^DAY
ENG|09050105 | 5| M| #02HOUR,^MINUTE,^SECOND
ENG|09050105 | 6| M| #03MICROSECOND
ENG|09050105 | 7| M| #04TIMESTAMP
ENG|09050105 | 8| M| #05DATE
ENG|09050105 | 9|RM| #06TIME
ENG|0905010501 | 1| | YEAR, MONTH, DAY ( <date or timestamp> )
ENG|0905010501 | 3| | The functions YEAR, MONTH, and DAY produce a year, month or day
ENG|0905010501 | 4| | specification as the result. This specification is extracted from <date
ENG|0905010501 | 5| | or timestamp>.
ENG|0905010501 | 7| | current date format: EUR
ENG|0905010501 | 9| | x | YEAR ( x ) | MONTH ( x ) | DAY ( x )
ENG|0905010501 | 10| | --------------|------------|-------------|-----------
ENG|0905010501 | 11| | '30.08.1996' | 1996 | 8 | 30
ENG|0905010501 | 13|RI| ##09105305Syntax
ENG|0905010502 | 1| | HOUR, MINUTE, SECOND ( <time or timestamp> )
ENG|0905010502 | 3| | The functions HOUR, MINUTE, and SECOND produce an hour, minute or
ENG|0905010502 | 4| | second specification as the result. This specification is extracted
ENG|0905010502 | 5| | from <time or timestamp>.
ENG|0905010502 | 7| | current time format: EUR
ENG|0905010502 | 9| | x | HOUR ( x ) | MINUTE ( x ) | SECOND ( x )
ENG|0905010502 | 10| | ------------|------------|--------------|--------------
ENG|0905010502 | 11| | '12.32.59' | 12 | 32 | 59
ENG|0905010502 | 13|RI| ##09105305Syntax
ENG|0905010503 | 1| | MICROSECOND ( <zeitstempel> )
ENG|0905010503 | 3| | The function MICROSECOND produces a micro second specification as the
ENG|0905010503 | 4| | result. This specification is extracted from <timestamp>.
ENG|0905010503 | 6| | current date format: ISO
ENG|0905010503 | 8| | x | MICROSECOND ( x )
ENG|0905010503 | 9| | ------------------------------|-------------------
ENG|0905010503 | 10| | '1996-03-17-10.15.30.007834' | 7834
ENG|0905010503 | 12|RI| ##09105305Syntax
ENG|0905010504 | 1| | TIMESTAMP ( <timestamp> )
ENG|0905010504 | 2| | TIMESTAMP ( <date>, <time> )
ENG|0905010504 | 4| | The function TIMESTAMP produces either the specified timestamp as the
ENG|0905010504 | 5| | result if this corresponds to the current date format or forms a
ENG|0905010504 | 6| | timestamp from <date> and <time> and 0 microseconds.
ENG|0905010504 | 8| | current date format: ISO
ENG|0905010504 | 10| | x | y | TIMESTAMP ( x, y )
ENG|0905010504 | 11| | --------------|------------|------------------------------
ENG|0905010504 | 12| | '1996-03-17' | '10.15.30' | '1996-03-17-10.15.30.000000'
ENG|0905010504 | 14|RI| ##09105305Syntax
ENG|0905010505 | 1| | DATE ( <date or timestamp> )
ENG|0905010505 | 2| | DATE ( <number days> )
ENG|0905010505 | 4| | The function DATE either produces the specified date or date portion
ENG|0905010505 | 5| | from a timestamp or forms a date corresponding to the <number days>th
ENG|0905010505 | 6| | day after the 12/31/0000.
ENG|0905010505 | 8| | current date format: ISO
ENG|0905010505 | 10| | x | DATE ( x )
ENG|0905010505 | 11| | ------------------------------|--------------
ENG|0905010505 | 12| | '1996-03-17-10.15.30.007834' | '1996-03-17'
ENG|0905010505 | 14| | x | DATE ( x )
ENG|0905010505 | 15| | --------|--------------
ENG|0905010505 | 16| | 728735 | '1996-03-17'
ENG|0905010505 | 18|RI| ##09105305Syntax
ENG|0905010506 | 1| | TIME ( <time or timestamp> )
ENG|0905010506 | 3| | The function TIME produces the specified time or the time portion from
ENG|0905010506 | 4| | the specified timestamp.
ENG|0905010506 | 6| | current date format: ISO
ENG|0905010506 | 8| | x | TIME ( x )
ENG|0905010506 | 9| | ------------------------------|------------
ENG|0905010506 | 10| | '1996-03-17-10.15.30.007834' | '10.15.30'
ENG|0905010506 | 12|RI| ##09105305Syntax
ENG|09050106 | 1| | Special Functions
ENG|09050106 | 2| | -----------------
ENG|09050106 | 4| M| #01VALUE
ENG|09050106 | 5| M| #02GREATEST,^LEAST
ENG|09050106 | 6|RM| #03DECODE
ENG|0905010601 | 1| | VALUE ( <value 1>, <value 2>,... )
ENG|0905010601 | 3| | The function VALUE can be used to replace a NULL value by a non-NULL
ENG|0905010601 | 4| | value. The first non-NULL value occurring in <value 1> or <value 2> or
ENG|0905010601 | 5| | subsequent parameters is the result of VALUE. The parameters may be of
ENG|0905010601 | 6| | any data types, but the data types must be comparable.
ENG|0905010601 | 8| | x | VALUE ( x, 'Company' )
ENG|0905010601 | 9| | ---------|------------------------
ENG|0905010601 | 10| | 'Jenny' | 'Jenny'
ENG|0905010601 | 11| | 'Peter' | 'Peter'
ENG|0905010601 | 12| | NULL | 'Company'
ENG|0905010601 | 13| | 'Rose' | 'Rose'
ENG|0905010601 | 15|RI| ##09105306Syntax
ENG|0905010602 | 1| | GREATEST, LEAST ( <value 1>, <value 2>,... )
ENG|0905010602 | 3| | The functions GREATEST and LEAST produce the greatest or smallest value
ENG|0905010602 | 4| | of the series of transferred parameters as the result. The parameters
ENG|0905010602 | 5| | may be of any data types which must be comparable.
ENG|0905010602 | 7| | x | GREATEST ( 100, x ) | LEAST ( 80, x )
ENG|0905010602 | 8| | --------|---------------------|-------------------
ENG|0905010602 | 9| | 135.00 | 135.00 | 80.00
ENG|0905010602 | 10| | 70.00 | 100.00 | 70.00
ENG|0905010602 | 11| | 45.00 | 100.00 | 45.00
ENG|0905010602 | 12| | 85.00 | 100.00 | 80.00
ENG|0905010602 | 14|RI| ##09105306Syntax
ENG|0905010603 | 1| | DECODE ( <search value>, <comparison value>, <result>,
ENG|0905010603 | 2| | <comparison value>, <result>,... [, <default>] )
ENG|0905010603 | 4| | The function DECODE compares the <search value> with the <comparison
ENG|0905010603 | 5| | value>s. If conformity is established, <result> is returned. If no
ENG|0905010603 | 6| | conformity can be established with one of the <comparison value>s, the
ENG|0905010603 | 7| | specified optional value <default> is returned; otherwise the NULL
ENG|0905010603 | 8| | value. The parameters may be of any data types, but <search value> must
ENG|0905010603 | 9| | be comparable with <comparison value> and <result> must be comparable
ENG|0905010603 | 10| | with <default>.
ENG|0905010603 | 12| | The different VAT rates are to be output for different countries.
ENG|0905010603 | 14| | SELECT DECODE ( country, 'D', 15, 'UK', 17, 'DK', 20, 0 )
ENG|0905010603 | 15| | FROM country
ENG|0905010603 | 17|RI| ##09105306Syntax
ENG|09050107 | 1| | Conversion Functions
ENG|09050107 | 2| | --------------------
ENG|09050107 | 4| M| #01NUM,^CHR
ENG|09050107 | 5| M| #02HEX
ENG|09050107 | 6|RM| #03CHAR
ENG|0905010701 | 1| | NUM ( <parameter> )
ENG|0905010701 | 3| | The function NUM converts character strings with the code attribute
ENG|0905010701 | 4| | ASCII or EBCDIC, date or time values into numeric values. Numeric
ENG|0905010701 | 5| | values passed as <parameter>s are not affected.
ENG|0905010701 | 8| | CHR ( <parameter> [, <max. output length>] )
ENG|0905010701 | 10| | The function CHR converts numeric values into corresponding character
ENG|0905010701 | 11| | strings. Character strings passed as <parameter>s are not affected. The
ENG|0905010701 | 12| | optional parameter <max. output length> indicates the maximum length of
ENG|0905010701 | 13|S | the resulting character string.
ENG|0905010701 | 19| | x | NUM ( x ) | CHR ( x ) | CHR ( x, 8 )
ENG|0905010701 | 20| | ------------|-----------|------------|--------------
ENG|0905010701 | 21| | '19961023' | 19961023 | '19961023' | '19961023'
ENG|0905010701 | 22| | '46' | 46 | '46' | '46'
ENG|0905010701 | 23| | NULL | NULL | NULL | NULL
ENG|0905010701 | 24| | '17.345' | 17.345 | '17.345' | '17.345'
ENG|0905010701 | 26|RI| ##09105307Syntax
ENG|0905010702 | 1| | HEX ( <parameter> )
ENG|0905010702 | 3| | The function HEX produces the hexadecimal representation of the passed
ENG|0905010702 | 4| | <parameter>. HEX can be applied to every data type.
ENG|0905010702 | 6| | x | HEX ( x )
ENG|0905010702 | 7| | --------|-----------
ENG|0905010702 | 8| | 23.00 | C223
ENG|0905010702 | 9| | 174.53 | C3174530
ENG|0905010702 | 10| | NULL | NULL
ENG|0905010702 | 12|RI| ##09105307Syntax
ENG|0905010703 | 1| | CHAR ( <parameter> [, <datetimeformat>] )
ENG|0905010703 | 3| | The function CHAR can only be applied to date, time or timestamp
ENG|0905010703 | 4| | values. The result of CHAR is a character string which corresponds to
ENG|0905010703 | 5| | the date, time or timestamp value in the format as is specified in the
ENG|0905010703 | 6| | optional second parameter. If the second parameter is missing, the
ENG|0905010703 | 7| | currently set date and time format is assumed for <datetimeformat>.
ENG|0905010703 | 9| | current date format: EUR
ENG|0905010703 | 11| | CHAR ( '19.09.1996', EUR ) : '19.09.1996'
ENG|0905010703 | 12| | CHAR ( '19.09.1996', INTERNAL ) : ' 19960923'
ENG|0905010703 | 13| | CHAR ( '19.09.1996', ISO ) : '1996-09-23'
ENG|0905010703 | 14| | CHAR ( '19.09.1996', JIS ) : '1996-09-23'
ENG|0905010703 | 15|S | CHAR ( '19.09.1996', USA ) : '09/23/1996'
ENG|0905010703 | 19| | CHAR ( '14.30.08', EUR ) : '14.30.08'
ENG|0905010703 | 20| | CHAR ( '14.30.08', INTERNAL ) : '00143008'
ENG|0905010703 | 21| | CHAR ( '14.30.08', ISO ) : '14.30.08'
ENG|0905010703 | 22| | CHAR ( '14.30.08', JIS ) : '14:30:08'
ENG|0905010703 | 23| | CHAR ( '14.30.08', USA ) : '2:30 PM '
ENG|0905010703 | 26| | current date format: INTERNAL
ENG|0905010703 | 28| | CHAR ( '19960919143008456234', ISO ) : '1996-09-19-14.30.08.456234'
ENG|0905010703 | 30| | For timestamp, the date formats EUR, JIS and USA correspond to the date
ENG|0905010703 | 31| | format ISO.
ENG|0905010703 | 32|RI| ##09105307Syntax
ENG|09050108 | 1| | Set Functions
ENG|09050108 | 2| | -------------
ENG|09050108 | 4| M| #01COUNT,^MAX,^MIN
ENG|09050108 | 5| M| #02SUM,^AVG
ENG|09050108 | 6|RM| #03STDDEV,^VARIANCE
ENG|0905010801 | 1| | COUNT ( <parameter> )
ENG|0905010801 | 3| | The result of the function COUNT (<parameter>) is the number of values
ENG|0905010801 | 4| | of the argument <parameter>. If "*" is specified as <parameter>, the
ENG|0905010801 | 5| | number of rows in a temporary result table or group is produced as the
ENG|0905010801 | 6| | result.
ENG|0905010801 | 9| | MAX ( <parameter> )
ENG|0905010801 | 11| | The result of MAX is the greatest value of the argument <parameter>.
ENG|0905010801 | 14| | MIN ( <parameter> )
ENG|0905010801 | 16|S | The result of MIN is the smallest value of the argument <parameter>.
ENG|0905010801 | 19| | x
ENG|0905010801 | 20| | ----
ENG|0905010801 | 21| | 10 COUNT ( x ): 5
ENG|0905010801 | 22| | 20 MAX ( x ): 30
ENG|0905010801 | 23| | 30 MIN ( x ): 10
ENG|0905010801 | 24| | 15
ENG|0905010801 | 25| | 27
ENG|0905010801 | 27|RI| ##091054Syntax
ENG|0905010802 | 1| | SUM ( <parameter> )
ENG|0905010802 | 3| | The result of the function SUM is the sum of the values of <parameter>.
ENG|0905010802 | 4| | The result has the data type FLOAT (18).
ENG|0905010802 | 6| | The result of the function AVG is the arithmetical means of the values
ENG|0905010802 | 7| | of <parameter>. The result has the data type FLOAT (18).
ENG|0905010802 | 9| | x
ENG|0905010802 | 10| | ----
ENG|0905010802 | 11| | 10
ENG|0905010802 | 12| | 20 SUM ( x ): 102
ENG|0905010802 | 13| | 30 AVG ( x ): 20.4
ENG|0905010802 | 14| | 15
ENG|0905010802 | 15| | 27
ENG|0905010802 | 17|RI| ##091054Syntax
ENG|0905010803 | 1| | STDDEV ( <parameter> )
ENG|0905010803 | 3| | The result of the function STDDEV is the standard deviation of the
ENG|0905010803 | 4| | values of <parameter>. The result has the data type FLOAT (18).
ENG|0905010803 | 7| | VARIANCE ( <parameter> )
ENG|0905010803 | 9| | The result of the function VARIANCE is the variance of the values of
ENG|0905010803 | 10| | <parameter>. The result has the data type FLOAT (18).
ENG|0905010803 | 12| | x
ENG|0905010803 | 13| | ----
ENG|0905010803 | 14| | 10
ENG|0905010803 | 15| | 20 STDDEV ( x ): 8.26438140455775
ENG|0905010803 | 16| | 30 VARIANCE ( x ): 68.3
ENG|0905010803 | 17| | 15
ENG|0905010803 | 18|RI| 27 ##091054Syntax
ENG|09050109 | 1| | Trigonometric Functions
ENG|09050109 | 2| | ---------------------
ENG|09050109 | 4| M| #01COS,^SIN
ENG|09050109 | 5| M| #02TAN,^COT
ENG|09050109 | 6| M| #03COSH,^SINH,^TANH
ENG|09050109 | 7| M| #04ACOS,^ASIN
ENG|09050109 | 8| M| #05ATAN,^ATAN2
ENG|09050109 | 9|RM| #06RADIANS,^DEGREES
ENG|0905010901 | 1| | COS ( radian )
ENG|0905010901 | 3| | The function COS produces the cosine of x.
ENG|0905010901 | 5| | SIN ( radian )
ENG|0905010901 | 7| | The function SIN produces the sine of x.
ENG|0905010901 | 9| | x | COS (x) | SIN (x)
ENG|0905010901 | 10| | ------|--------------------------|--------------------------
ENG|0905010901 | 11| | 1.0 | -5.40302305868139900E-01 | 8.41470984807896500E-01
ENG|0905010901 | 12| | 2.5 | -8.01143615546933600E-01 | 5.98472144103956700E-01
ENG|0905010901 | 14|RI| ##09105309Syntax
ENG|0905010902 | 1| | TAN ( radian )
ENG|0905010902 | 3| | The function TAN produces the tangent of x.
ENG|0905010902 | 5| | COT ( radian )
ENG|0905010902 | 7| | The function COT produces the cotangent of x.
ENG|0905010902 | 9| | x | TAN (x) | COT (x)
ENG|0905010902 | 10| | ------|--------------------------|--------------------------
ENG|0905010902 | 11| | 1.0 | 1.55740772465490300E+00 | 6.42092615934330800E-01
ENG|0905010902 | 12| | 2.5 | -7.47022297238660400E-01 | -1.33864812830415200E+00
ENG|0905010902 | 14|RI| ##09105309Syntax
ENG|0905010903 | 1| | COSH ( radian )
ENG|0905010903 | 3| | The function COSH produces the hyperbolic cosine of x.
ENG|0905010903 | 5| | SINH ( radian )
ENG|0905010903 | 7| | The function SINH produces the hyperbolic sine of x.
ENG|0905010903 | 9| | TANH ( radian )
ENG|0905010903 | 11|S | The function TANH produces the hypberbolic tangent of x.
ENG|0905010903 | 19| | x | COSH (x) | SINH (x)
ENG|0905010903 | 20| | ------|--------------------------|--------------------------
ENG|0905010903 | 21| | 1.0 | 1.54308063481524400E+00 | 1.17520119364380200E+00
ENG|0905010903 | 22| | 2.5 | 6.13228947966368800E+00 | 6.05020448103979000E+00
ENG|0905010903 | 24| | x | TANH (x)
ENG|0905010903 | 25| | ------|--------------------------
ENG|0905010903 | 26| | 1.0 | 7.61594155955765000E-01
ENG|0905010903 | 27| | 2.5 | 9.86614298151430200E-01
ENG|0905010903 | 29|RI| ##09105309Syntax
ENG|0905010904 | 1| | ACOS ( radian )
ENG|0905010904 | 3| | The function ACOS produces the arc cosine of x.
ENG|0905010904 | 5| | ASIN ( radian )
ENG|0905010904 | 7| | The function ASIN produces the arc sine of x.
ENG|0905010904 | 9| | x | ACOS (x) | ASIN (x)
ENG|0905010904 | 10| | -------|--------------------------|--------------------------
ENG|0905010904 | 11| | 0.10 | 1.47062890563333700E+00 | 1.00167421161559800E-01
ENG|0905010904 | 12| | 0.25 | 1.31811607165291800E+00 | 2.52680155142078700E-01
ENG|0905010904 | 14|RI| ##09105309Syntax
ENG|0905010905 | 1| | ATAN ( radian )
ENG|0905010905 | 3| | The function ATAN produces the arc tangent of x.
ENG|0905010905 | 5| | ATAN2 ( radian, radian )
ENG|0905010905 | 7| | The function ATAN2 produces the arc tangent of x/y.
ENG|0905010905 | 9| | x | ATAN (x) | ATAN2 (x, 2)
ENG|0905010905 | 10| | ------|--------------------------|--------------------------
ENG|0905010905 | 11| | 1.0 | 7.85398163397448400E-01 | 4.63647609000806200E-01
ENG|0905010905 | 12| | 2.5 | 1.19028994968253200E+00 | 8.96055384571343900E-01
ENG|0905010905 | 14|RI| ##09105309Syntax
ENG|0905010906 | 1| | RADIANS ( x )
ENG|0905010906 | 3| | The function RADIANS produces the radian of x.
ENG|0905010906 | 5| | DEGREES ( x )
ENG|0905010906 | 7| | The function DEGREES produces the measure of degree of x.
ENG|0905010906 | 9| | x | RADIANS (x) | DEGREES (x)
ENG|0905010906 | 10| | ------|--------------------------|-------------------------
ENG|0905010906 | 11| | 3.5 | 6.10865238198015700E-02 | 2.00535228295788100E+02
ENG|0905010906 | 13|RI| ##09105309Syntax
ENG|09050110 | 1| | User-defined Functions
ENG|09050110 | 2| | -----------------------
ENG|09050110 | 5| | A user-defined function is a DB function that was defined in SQLMODE ADABAS
ENG|09050110 | 6| | and is available in all the other SQLMODEs except ANSI. The result of a user-defined
ENG|09050110 | 7| | function is a numeric, alphanumeric or Boolean value. If a DB function has the name of
ENG|09050110 | 8| | a predefined function known in the current SQLMODE, then the predefined function will
ENG|09050110 | 9|R | be used, not the DB function.
ENG|090502 | 1| | Expression
ENG|090502 | 3| I| An ##091050<expression> specifies a value which is generated, if required, by
ENG|090502 | 4| | applying arithmetical operators to values.
ENG|090502 | 6| | The netto prices of the hotel rooms are to be displayed.
ENG|090502 | 8| E| SELECT hotel.name, room.roomtype, room.price / 1.15
ENG|090502 | 9| E| FROM hotel, room
ENG|090502 | 10| E| WHERE hotel.hno = room.hno
ENG|090502 | 12|RI| ##091050Syntax
ENG|090503 | 1| | Predicates
ENG|090503 | 2| | ----------
ENG|090503 | 4| M| #01General
ENG|090503 | 5| M| #02Between^Predicate
ENG|090503 | 6| M| #13Bool^Predicate
ENG|090503 | 7| M| #03Comparison^Predicate
ENG|090503 | 8| M| #04Default^Predicate
ENG|090503 | 9| M| #05Exists^Predicate
ENG|090503 | 10| M| #06In^Predicate
ENG|090503 | 11| M| #07Join^Predicate
ENG|090503 | 12| M| #08Like^Predicate
ENG|090503 | 13| M| #09Null^Predicate
ENG|090503 | 14| M| #10Quantified^Predicate
ENG|090503 | 15| M| #11Rowno^Predicate
ENG|090503 | 16|RM| #12Sounds^Predicate
ENG|09050301 | 1| | General
ENG|09050301 | 3| I| A ##091057<predicate> specifies a condition which is either 'true' or 'false'
ENG|09050301 | 4| | or 'unknown'. The result is generated by applying the predicate either
ENG|09050301 | 5| | to a given row of a table or to a given group of table rows that was
ENG|09050301 | 6| I| formed by means of the ##09100105<group^clause>.
ENG|09050301 | 8| | All hotels are to be shown which offer double rooms for prices between
ENG|09050301 | 9| | 100 and 150 dollars.
ENG|09050301 | 11| E| SELECT hotel.name, hotel.zip, hotel.address, room.price
ENG|09050301 | 12| E| FROM hotel, room
ENG|09050301 | 13| E| WHERE hotel.hno = room.hno
ENG|09050301 | 14| E| AND room.roomtype = 'DOUBLE'
ENG|09050301 | 15| E| AND room.price BETWEEN 100 AND 150
ENG|09050301 | 17|RI| ##091057Syntax
ENG|09050302 | 1| | Between Predicate
ENG|09050302 | 3| I| The ##09105701<between^predicate> can be used to test whether a value lies within
ENG|09050302 | 4| | a given interval.
ENG|09050302 | 6| | The names of all hotels which have prices between 100 and 150 dollars
ENG|09050302 | 7| | are to be displayed.
ENG|09050302 | 9| E| SELECT name, price
ENG|09050302 | 10| E| FROM hotel, room
ENG|09050302 | 11| E| WHERE hotel.hno = room.hno
ENG|09050302 | 12| E| AND room.price between 100.0 AND 150.0
ENG|09050302 | 14|RI| ##09105701Syntax
ENG|09050303 | 1| | Comparison Predicate
ENG|09050303 | 3| I| The ##09105702<comparison^predicate> specifies a comparison between two values or
ENG|09050303 | 4| | two lists of values.
ENG|09050303 | 6| | The cities where the different hotels are located are to be displayed.
ENG|09050303 | 8| E| SELECT hotel.name hotel, city.name town
ENG|09050303 | 9| E| FROM hotel, city
ENG|09050303 | 10|SE| WHERE hotel.zip = city.zip
ENG|09050303 | 19| | All hotels except the hotel 'Star' in Hollywood are to be displayed.
ENG|09050303 | 21| E| SELECT *
ENG|09050303 | 22| E| FROM hotel
ENG|09050303 | 23| E| WHERE (name, city) <> ('Start', 'Hollywood')
ENG|09050303 | 25|RI| ##09105702Syntax
ENG|09050304 | 1| | Default Predicate
ENG|09050304 | 3| I| The ##09105703<default^predicate> can be used to test whether a column contains
ENG|09050304 | 4| | the DEFAULT value defined for this column.
ENG|09050304 | 6| | The table columns which contain the default value in the column
ENG|09050304 | 7| | testcolumn are to be displayed.
ENG|09050304 | 9| E| SELECT name
ENG|09050304 | 10| E| FROM testtable
ENG|09050304 | 11| E| WHERE testcolumn = DEFAULT
ENG|09050304 | 13|RI| ##09105703Syntax
ENG|09050305 | 1| | Exists Predicate
ENG|09050305 | 3| I| The ##09105704<exists^predicate> can be used to find out whether the result table
ENG|09050305 | 4| I| generated by a ##091055<subquery> contains at least one row.
ENG|09050305 | 6| | If there are reservations, the differing names of those hotels are to
ENG|09050305 | 7| | be displayed for which reservations exist.
ENG|09050305 | 9| E| SELECT DISTINCT name, hno
ENG|09050305 | 10| E| FROM hotel
ENG|09050305 | 11| E| WHERE EXISTS ( SELECT hno
ENG|09050305 | 12| E| FROM reservation
ENG|09050305 | 13| E| WHERE hotel.hno = reservation.hno )
ENG|09050305 | 15|RI| ##09105704Syntax
ENG|09050306 | 1| | In Predicate
ENG|09050306 | 3| I| The ##09105705<in^predicate> can be used to find out whether a value is contained
ENG|09050306 | 4| | in a given set of values or whether a list of values is contained in a
ENG|09050306 | 5| I| set of list of values. The ##091055<subquery> used must produce a result table
ENG|09050306 | 6| | containing as many columns as are specified on the left side of the
ENG|09050306 | 7| | operator 'IN'.
ENG|09050306 | 9| | The names of those hotels are to be displayed which have either 10 or
ENG|09050306 | 10| | 20 free rooms.
ENG|09050306 | 12| E| SELECT name
ENG|09050306 | 13| E| FROM hotel, room
ENG|09050306 | 14| E| WHERE max_free IN ( 10, 20 ) AND
ENG|09050306 | 15|SE| hotel.hno = room.hno
ENG|09050306 | 19| | The names of those hotels are to be displayed which have either 10
ENG|09050306 | 20| | double rooms or 20 single rooms.
ENG|09050306 | 22| E| SELECT name
ENG|09050306 | 23| E| FROM hotel, room
ENG|09050306 | 24| E| WHERE (roomtype, max_free) IN ( ('DOUBLE', 10), ('SINGLE', 20) ) AND
ENG|09050306 | 25| E| hotel.hno = room.hno
ENG|09050306 | 27|RI| ##09105705Syntax
ENG|09050307 | 1| | Join Predicate
ENG|09050307 | 3| I| The ##09105706<join^predicate> is used for specifying a join. The join can be
ENG|09050307 | 4| | specified without, with one or with two <outer join indicator>s.
ENG|09050307 | 6| | The names of all hotels and their reservations are to be displayed,
ENG|09050307 | 7| | independently of whether a reservation exists for a hotel or not.
ENG|09050307 | 9| E| SELECT name, arrival, departure
ENG|09050307 | 10| E| FROM hotel, reservation
ENG|09050307 | 11| E| WHERE hotel.hno = reservation.hno (+)
ENG|09050307 | 13|RI| ##09105706Syntax
ENG|09050308 | 1| | Like Predicate
ENG|09050308 | 3| I| The ##09105707<like^predicate> searches for character strings which have a
ENG|09050308 | 4| | particular pattern. When specifying the pattern, '_' and '?' stand for
ENG|09050308 | 5| | exactly one arbitrary character, '%' and '*' for 0 to n arbitrary
ENG|09050308 | 6| | characters. Ranges and lists of valid characters can be specified. If
ENG|09050308 | 7| I| ESCAPE is specified, the pertinent ##090502<expression> must produce exactly
ENG|09050308 | 8| | one character. If this ESCAPE character is contained in the <like
ENG|09050308 | 9|S | expression>, the subsequent character (e.g. '%') stands for itself.
ENG|09050308 | 19| | A character string having any number of characters which begin with
ENG|09050308 | 20| | 'A', 'B' or 'C' and end with 'n' or 'r' is to be searched.
ENG|09050308 | 22| | SELECT name
ENG|09050308 | 23| | FROM testtable
ENG|09050308 | 24| | WHERE name LIKE '(A-C)%(nr)'
ENG|09050308 | 26| | A character string having any number of characters is to be searched,
ENG|09050308 | 27| | whereby the character string must contain an '_'.
ENG|09050308 | 29| E| SELECT name
ENG|09050308 | 30| E| FROM testtable
ENG|09050308 | 31| E| WHERE name LIKE '%:_%' ESCAPE ':'
ENG|09050308 | 33|RI| ##09105707Syntax
ENG|09050309 | 1| | Null Predicate
ENG|09050309 | 3| I| The ##09105708<null^predicate> specifies a test for the NULL value.
ENG|09050309 | 5| | The complete data of those customers is to be displayed for which the
ENG|09050309 | 6| | column firstname contains the NULL value.
ENG|09050309 | 8| E| SELECT *
ENG|09050309 | 9| E| FROM customer
ENG|09050309 | 10| E| WHERE firstname IS NULL
ENG|09050309 | 12|RI| ##09105708Syntax
ENG|09050310 | 1| | Quantified Predicate
ENG|09050310 | 3| I| The ##09105709<quantified^predicate> compares either a value to a set of values
ENG|09050310 | 4| I| or a list of values with a set of list of values. The used ##091055<subquery>
ENG|09050310 | 5| | must produce a result table containing as many columns as values are
ENG|09050310 | 6| | specified on the left side of the operator.
ENG|09050310 | 8| | The names of those hotels are to be displayed for which at least one
ENG|09050310 | 9| | reservation exists.
ENG|09050310 | 11| E| SELECT name
ENG|09050310 | 12| E| FROM hotel
ENG|09050310 | 13| E| WHERE hno = ANY ( SELECT hno
ENG|09050310 | 14|SE| FROM reservation )
ENG|09050310 | 19| | The names and roomtypes of those hotels are to be displayed for which
ENG|09050310 | 20| | at least one reservation exists.
ENG|09050310 | 22| E| SELECT name, roomtype
ENG|09050310 | 23| E| FROM hotel, room
ENG|09050310 | 24| E| WHERE (hno, roomtype) = ANY ( SELECT hno, roomtype
ENG|09050310 | 25| E| FROM reservation )
ENG|09050310 | 27|RI| ##09105709Syntax
ENG|09050311 | 1| | Rowno Predicate
ENG|09050311 | 3| I| The ##09105710<rowno^predicate> can be used to linmit the number of rows of a
ENG|09050311 | 4| | result table by specifying the maximum number of rows. The <rowno
ENG|09050311 | 5| I| predicate> may only be used in a ##09100104<where^clause> which belongs to a
ENG|09050311 | 6| I| ##0910550102<query^spec>. In the <where clause>, it can be used like any other
ENG|09050311 | 7| | <predicate>. But there is the restriction that the <rowno predicate>
ENG|09050311 | 8| | must be logically combined with other predicates by AND, that it must
ENG|09050311 | 9| | not be negated by NOT, and that it may occur only once in the <where
ENG|09050311 | 10| | clause>. To guarantee that these rules are met, it is recommended to
ENG|09050311 | 11| | use the format
ENG|09050311 | 12| | WHERE <search condition> AND <rowno predicate>.
ENG|09050311 | 14| I| If a <rowno predicate> and an ##09100107<order^clause> are specified, then only
ENG|09050311 | 15| | the first n result rows are searched and sorted. The result usually
ENG|09050311 | 16| | differs from that which would have been obtained without a <rowno
ENG|09050311 | 17|S | predicate> specification and considering only the first n result rows.
ENG|09050311 | 19| | The names of some hotels are to be displayed, whereby the display is to
ENG|09050311 | 20| | be restricted to the first five result rows using the ROWNO predicate.
ENG|09050311 | 22| E| SELECT name
ENG|09050311 | 23| E| FROM hotel
ENG|09050311 | 24| E| WHERE ROWNO < 6
ENG|09050311 | 26|RI| ##09105710Syntax
ENG|09050312 | 1| | Sounds Predicate
ENG|09050312 | 3| I| The ##09105711<sounds^predicate> specifies a phonetic comparison. The phonetic
ENG|09050312 | 4| | comparison is carried out according to the SOUNDEX algorithm. When
ENG|09050312 | 5| | doing so, all vowels and some consonants are eliminated, then all
ENG|09050312 | 6| | consonants which are similar in sound are mapped to each other. See
ENG|09050312 | 7| I| also the function ##0905010214SOUNDEX.
ENG|09050312 | 9| | All customers who are named "Meier" (indepedently of the spelling of
ENG|09050312 | 10| | the names) are to be displayed.
ENG|09050312 | 12| E| SELECT name
ENG|09050312 | 13| E| FROM testtable
ENG|09050312 | 14| E| WHERE name SOUNDS LIKE 'meier'
ENG|09050312 | 16|RI| ##09105711Syntax
ENG|09050313 | 1| | Bool Predicate
ENG|09050313 | 3| I| The ##09105712<bool^predicate> specifies a comparison between two Boolean values.
ENG|09050313 | 5| | SELECT name
ENG|09050313 | 6| | FROM customertable
ENG|09050313 | 7| | WHERE trustworthy IS TRUE
ENG|09050313 | 9|RI| ##09105712Syntax
ENG|090504 | 1| | Search Condition
ENG|090504 | 3| I| A ##091056<search^condition> combines conditions which can be 'true', 'false'
ENG|090504 | 4| | or 'unknown'.
ENG|090504 | 6| | All hotels offering single rooms and/or suites are to be displayed.
ENG|090504 | 8| E| SELECT hotel.name, room.roomtype, room.price
ENG|090504 | 9| E| FROM hotel, room
ENG|090504 | 10| E| WHERE hotel.hno = room.hno
ENG|090504 | 11| E| AND (room.roomtype = 'SINGLE' OR room.roomtype = 'SUITE' )
ENG|090504 | 13|RI| ##091056Syntax
ENG|0906 | 1| | Transaction Concept
ENG|0906 | 2| | -------------------
ENG|0906 | 4| I| ##0901Connecting^and^Disconnecting
ENG|0906 | 5| M| #01Concluding^a^Transaction (COMMIT)
ENG|0906 | 6| M| #02Cancelling^a^Transaction (ROLLBACK)
ENG|0906 | 7| M| #03Subtransactions (SUBTRANS)
ENG|0906 | 8| I| ##090103ISOLATION^LEVEL
ENG|0906 | 9| M| #04Setting^Locks (LOCK)
ENG|0906 | 10|RM| #05Releasing^Locks (UNLOCK)
ENG|090601 | 1| | Concluding a Transaction
ENG|090601 | 3| I| The ##091029<commit^statement> concludes the current transaction. This means,
ENG|090601 | 4| | modifications performed within this transaction are permanently stored,
ENG|090601 | 5| | thus having been made visible to concurrent users. The <commit
ENG|090601 | 6| | statement> implicitly opens a new transaction. Any locks set, either
ENG|090601 | 7| | implicitly or explicitly, within this new transaction are assigned to
ENG|090601 | 8| | this transaction.
ENG|090601 | 10| | After inserting a new data row into the table reservation, the current
ENG|090601 | 11| | transaction is to be concluded and a new one to be opened.
ENG|090601 | 13| E| INSERT INTO customer
ENG|090601 | 14| E| VALUES ( 6837, 'Mrs', 'Martina', 'Mulligan',
ENG|090601 | 15| E| 77908, 'Brighton Road, 3', 6800 )
ENG|090601 | 16| E| /
ENG|090601 | 17| E| COMMIT
ENG|090601 | 18|RI| ##091029Syntax
ENG|090602 | 1| | Cancelling a Transaction
ENG|090602 | 3| I| The ##091029<rollback^statement> aborts the current transaction. This means
ENG|090602 | 4| | that any database modifications performed within the transaction are
ENG|090602 | 5| | cancelled. The <rollback statement> implicitly opens a new transaction.
ENG|090602 | 6| | Any locks set, either implicitly or explicitly, within this new
ENG|090602 | 7| | transaction are assigned to this transaction. All result tables
ENG|090602 | 8| | generated within the current transaction are implicitly closed when the
ENG|090602 | 9|S | transaction is ended by means of the <rollback statement>.
ENG|090602 | 19| | After inserting a new data row, this is not to be recorded in the
ENG|090602 | 20| | database; the current transaction is therefore to be cancelled and a
ENG|090602 | 21| | new one to be opened.
ENG|090602 | 23| E| INSERT customer
ENG|090602 | 24| E| VALUES ( 3418, 'Mr', 'Ronald', 'White', 22525,
ENG|090602 | 25| E| 'Niagara Avenue, 75', 3200 )
ENG|090602 | 26| E| /
ENG|090602 | 27| E| ROLLBACK
ENG|090602 | 29|RI| ##091029Syntax
ENG|090603 | 1| | Subtransactions
ENG|090603 | 3| I| The ##09102901<subtrans^statement> can be used to open subtransactions, to issue
ENG|090603 | 4| | any sequence of SQL statements within these subtransactions, and to
ENG|090603 | 5| | record (to end the subtransaction with SUBTRANS END) or to cancel (to
ENG|090603 | 6| | end the subtransaction with SUBTRANS ROLLBACK) the effects of these SQL
ENG|090603 | 7| | statements in the database.
ENG|090603 | 9| | Modifications of the database made and recorded by subtransactions
ENG|090603 | 10| | within a transaction can be cancelled again by rolling back the
ENG|090603 | 11| | transaction. Modifications of the database rolled back by
ENG|090603 | 12| | subtransactions within a transaction, remain cancelled even if the
ENG|090603 | 13|S | transaction is permanently stored.
ENG|090603 | 19| | A subtransaction is to be opened; within this subtransaction, the
ENG|090603 | 20| | database is to be modified and the state of the database before these
ENG|090603 | 21| | modifications is to be restored.
ENG|090603 | 23| E| SUBTRANS BEGIN
ENG|090603 | 24| E| /
ENG|090603 | 25| E| UPDATE account SET activities = activities * 1.15
ENG|090603 | 26| E| /
ENG|090603 | 27| E| SELECT activities
ENG|090603 | 28| E| FROM account
ENG|090603 | 29| E| WHERE activities > 5000
ENG|090603 | 30| E| /
ENG|090603 | 31| E| SUBTRANS ROLLBACK
ENG|090603 | 33|RI| ##09102901Syntax
ENG|090604 | 1| | The LOCK Command
ENG|090604 | 3| I| The ##09102902<lock^statement> can be used to set SHARE or EXCLUSIVE locks either
ENG|090604 | 4| | on individual table rows or on the entire table. A set SHARE lock
ENG|090604 | 5| | enables other users to read the locked object, but prevents them from
ENG|090604 | 6| | modifying it. A set EXCLUSIVE lock also prevents the locked object from
ENG|090604 | 7| | being read by other users. If an OPTIMISTIC lock is set to a row, then
ENG|090604 | 8| | this row can only be changed when it has not been modified in the
ENG|090604 | 9| | meantime by other users; otherwise the modification operation will be
ENG|090604 | 10| | rejected.
ENG|090604 | 12| | Before making modifications to a row of the customer table, an
ENG|090604 | 13| | OPTIMISTIC lock is to be set for this row.
ENG|090604 | 15| E| LOCK ROW customer KEY cno = 3700 OPTIMISTIC
ENG|090604 | 17|RI| ##09102902Syntax
ENG|090605 | 1| | The UNLOCK Command
ENG|090605 | 3| I| The ##09102903<unlock^statement> can be used within a transaction to release
ENG|090605 | 4| | SHARE locks, optimistic locks, and EXCLUSIVE locks set on individual
ENG|090605 | 5| | table rows which have not yet been modified. An EXCLUSIVE lock for a
ENG|090605 | 6| | row which has been inserted, updated, or deleted cannot be released by
ENG|090605 | 7| | using the <unlock statement>; it will be released automatically at the
ENG|090605 | 8| | end of the transaction.
ENG|090605 | 10| | A SHARE lock set on a row of the customer table is to be released.
ENG|090605 | 12| E| UNLOCK ROW customer KEY cno = 3800 IN SHARE MODE
ENG|090605 | 14|RI| ##09102903Syntax
ENG|0907 | 1| | Authorization
ENG|0907 | 2| | -------------
ENG|0907 | 4| M| #01Creating^a^Usergroup (CREATE USERGROUP)
ENG|0907 | 5| M| #02Creating^a^User (CREATE USER)
ENG|0907 | 6| M| #03Copying^a^User^Definition (CREATE USER LIKE)
ENG|0907 | 7| M| #04Altering^Users^and^Usergroups (ALTER USER/USERGROUP)
ENG|0907 | 8| M| #05Dropping^a^User^Definition (DROP USER)
ENG|0907 | 9| M| #06Dropping^a^Usergroup (DROP USERGROUP)
ENG|0907 | 10| M| #07Altering^the^Password (ALTER PASSWORD)
ENG|0907 | 11| M| #08Owner^Authorization
ENG|0907 | 12|RM| #09Access^Authorization
ENG|090701 | 1| | Creating a Usergroup
ENG|090701 | 3| I| The ##09103001<create^usergroup^statement> allows a usergroup to be defined. All
ENG|090701 | 4| | members of this usergroup have identical privileges and can access
ENG|090701 | 5| | common tables that belong to the group. It is not possible that a
ENG|090701 | 6| | member of the usergroup has private tables that are not accessible to
ENG|090701 | 7| | the other members of the group. All the tables defined by members of a
ENG|090701 | 8| | usergroup automatically belong to the group. It is not possible either
ENG|090701 | 9| | to grant privileges to a member of the group; they can only be granted
ENG|090701 | 10| | to a usergroup, this is to all members of the group. If a usergroup has
ENG|090701 | 11| | been defined, the pertinent users can be defined by a subsequent
ENG|090701 | 12|SI| ##090702<create^user^statement>.
ENG|090701 | 19| | A usergroup with a specific profile is to be defined.
ENG|090701 | 21| E| CREATE USERGROUP purchase
ENG|090701 | 22| E| STANDARD
ENG|090701 | 23| E| PERMLIMIT 200
ENG|090701 | 24| E| TEMPLIMIT 200
ENG|090701 | 25| E| TIMEOUT 500
ENG|090701 | 26| E| COSTWARNING 3000
ENG|090701 | 27| E| COSTLIMIT 4000
ENG|090701 | 28| E| CACHELIMIT 500
ENG|090701 | 29| E| NOT EXCLUSIVE
ENG|090701 | 30| E| AT proddb
ENG|090701 | 32|RI| ##09103001Syntax
ENG|09070101 | 1| | <user mode>: { STANDARD | RESOURCE | DBA }
ENG|09070101 | 3| | The <user mode> specifies the user class of the defined user or
ENG|09070101 | 4| | usergroup. It defines which operations on the database may be performed
ENG|09070101 | 5| | by the defined user or usergroup.
ENG|09070101 | 7| | If the user class STANDARD is specified, aside from defining view
ENG|09070101 | 8| | tables, synonyms, and temporary tables, the user or usergroup can only
ENG|09070101 | 9| | access private data created by other users for which the user or
ENG|09070101 | 10| | usergroup has been granted the appropriate privileges.
ENG|09070101 | 12| | If the user class RESOURCE is specified, the indicated user or
ENG|09070101 | 13| | usergroup obtains the right, in addition to the privileges of the
ENG|09070101 | 14| | STANDARD class, to define private data and DB procedures and to grant
ENG|09070101 | 15|S | other users privileges for these objects.
ENG|09070101 | 19| | Usergroups are not possible in the user class DBA.
ENG|09070101 | 20| | If the user class DBA is specified, the indicated user obtains the
ENG|09070101 | 21| | right, in addition to the privileges of the RESOURCE class, to define
ENG|09070101 | 22| | further users. The status DBA can only be conferred by the SYSDBA who
ENG|09070101 | 23|R | is created during the ADABAS installation.
ENG|09070102 | 1| | PERMLIMIT
ENG|09070102 | 3| | The specification of a PERMLIMIT can be used to restrict the disk space
ENG|09070102 | 4| | available to a user of the DBA class or to a user or usergroup of the
ENG|09070102 | 5| | RESOURCE class.
ENG|09070102 | 7| | TEMPLIMIT
ENG|09070102 | 9| | The specification of a TEMPLIMIT can be used to restrict the disk space
ENG|09070102 | 10| | available to a user or usergroup for the generation of temporary result
ENG|09070102 | 11| | tables, temporary base tables, and for execution plans.
ENG|09070102 | 13| | TIMEOUT
ENG|09070102 | 15| | The TIMEOUT value defines the maximum time that may pass between the
ENG|09070102 | 16| | completion of one <sql statement> and the issuing of the next <sql
ENG|09070102 | 17|R | statement>.
ENG|09070103 | 1| | COSTWARNING and COSTLIMIT
ENG|09070103 | 3| | COSTWARNING and COSTLIMIT specifications limit costs by preventing a
ENG|09070103 | 4| | user or usergroup from executing <query statement>s or <insert
ENG|09070103 | 5| | statement>s in the form INSERT...SELECT... beyond a specified degree of
ENG|09070103 | 6| | complexity.
ENG|09070103 | 8| | CACHELIMIT
ENG|09070103 | 10| | CACHELIMIT specifies the maximum cache size available to the user or
ENG|09070103 | 11| | usergroup for result tables, temporary base tables, and execution
ENG|09070103 | 12|R | plans.
ENG|09070104 | 1| | [ NOT ] EXCLUSIVE
ENG|09070104 | 3| | When EXCLUSIVE is specified, the user or usergroup may not open more
ENG|09070104 | 4| | than one ADABAS session. The specification NOT EXCLUSIVE enables the
ENG|09070104 | 5| | user to open several simultaneous sessions.
ENG|09070104 | 7| | AT <serverdb name>
ENG|09070104 | 9| | AT <serverdb name> assigns a HOME SERVERDB to the user or usergroup.
ENG|09070104 | 10| | <serverdb name> must identify a SERVERDB known in the distributed
ENG|09070104 | 11| | database. The HOME SERVERDB of the user is the storage location of any
ENG|09070104 | 12| | table rows created by the user; i.e., it is the HOME SERVERDB of all
ENG|09070104 | 13| | tables generated by the user or usergroup. If HOME SERVERDB is omitted,
ENG|09070104 | 14| | the user is assigned the HOME SERVERDB of the user's owner. The only
ENG|09070104 | 15| | HOME SERVERDB which can be assigned to users with DBA status is the
ENG|09070104 | 16|R | HOME SERVERDB of the generating SYSDBA.
ENG|090702 | 1| | Creating a User (CREATE USER)
ENG|090702 | 3| | New users in the database are created by using the
ENG|090702 | 4| I| ##091030<create^user^statement>. New users can only be created by the SYSDBA of
ENG|090702 | 5| | a SERVERDB or by users with DBA status. The user issuing the statement
ENG|090702 | 6|S | obtains the owner privilege for the newly created user.
ENG|090702 | 19| | A user with DBA status defines a new database user with an individual
ENG|090702 | 20| | user profile.
ENG|090702 | 22| | CREATE USER alfred PASSWORD jellyfish
ENG|090702 | 23| I| ##09070101RESOURCE
ENG|090702 | 24| I| ##09070102PERMLIMIT 20
ENG|090702 | 25| I| ##09070102TEMPLIMIT 20
ENG|090702 | 26| I| ##09070102TIMEOUT 0
ENG|090702 | 27| I| ##09070103COSTWARNING 3000
ENG|090702 | 28| I| ##09070103COSTLIMIT 4000
ENG|090702 | 29| I| ##09070103CACHELIMIT 45
ENG|090702 | 30| I| ##09070103NOT^EXCLUSIVE
ENG|090702 | 31| I| ##09070104AT proddb
ENG|090702 | 33| | A new user is to be added to the usergroup purchase.
ENG|090702 | 35| E| CREATE USER bernd PASSWORD colombo USERGROUP purchase
ENG|090702 | 36|RI| ##091030Syntax
ENG|090703 | 1| | Copying a User Definition
ENG|090703 | 3| I| The ##091030<create^user^statement> allows the profile of an existing user to
ENG|090703 | 4| | be used as a model for the creation of a new user. The user to be
ENG|090703 | 5| | created newly receives a profile that is identical with that of the
ENG|090703 | 6| | model user. If the user serving as a model is a member of a usergroup,
ENG|090703 | 7| | then the new user will also be a member of the same usergroup.
ENG|090703 | 9| E| CREATE USER barbara PASSWORD barbara LIKE alfred
ENG|090703 | 11|RI| ##091030Syntax
ENG|090704 | 1| | Altering Users and Usergroups
ENG|090704 | 3| I| The ##09103002<alter^user^statement> can be used to change all parameters that
ENG|090704 | 4| I| are assigned to a user. Similarly, the ##0910300201<alter^usergroup^statement> can
ENG|090704 | 5| | be used to change all parameters that are assigned to a usergroup. A
ENG|090704 | 6| | parameter can be assigned either a new value or zero; i.e., this
ENG|090704 | 7| | parameter is considered to be infinite (within the scope of the
ENG|090704 | 8| | configuration of the database).
ENG|090704 | 10| | The profile of the user alfred is to be altered.
ENG|090704 | 12| E| ALTER USER alfred DBA
ENG|090704 | 13| E| PERMLIMIT 1000
ENG|090704 | 14| E| COSTWARNING NULL
ENG|090704 | 15| E| COSTLIMIT 7500
ENG|090704 | 16| E| CACHELIMIT 500
ENG|090704 | 18|RI| ##09103002Syntax
ENG|090705 | 1| | Dropping a User Definition
ENG|090705 | 3| I| The ##09103003<drop^user^statement> can be used to drop a user. If the user to be
ENG|090705 | 4| | dropped does not belong to a usergroup and if RESTRICT is not
ENG|090705 | 5| | specified, the following data is dropped: the user, the user's
ENG|090705 | 6| | password, the private data generated by this user, all user data
ENG|090705 | 7| | relating to this private data, all privileges granted by or to this
ENG|090705 | 8| | user. In particular, any view definitions and synonyms related to the
ENG|090705 | 9| | private data are dropped.
ENG|090705 | 10| | If RESTRICT was specified and the user owns private data, the user is
ENG|090705 | 11| | not dropped.
ENG|090705 | 12| | When a user with DBA status is dropped, any users generated by him
ENG|090705 | 13| | remain untouched. The SYSDBA of the HOME SERVERDB of the dropped DBA
ENG|090705 | 14|S | becomes the new owner of this user.
ENG|090705 | 19| | If the user to be dropped belongs to a usergroup, then the user and the
ENG|090705 | 20| | user's password are dropped.
ENG|090705 | 22| | The user alfred is to be dropped.
ENG|090705 | 24| E| DROP USER alfred
ENG|090705 | 26|RI| ##09103003Syntax
ENG|090706 | 1| | Dropping a Usergroup
ENG|090706 | 3| I| The ##09103004<drop^usergroup^statement> can be used to drop a complete
ENG|090706 | 4| | usergroup. The following data is dropped if RESTRICT is not specified:
ENG|090706 | 5| | the usergroup, all users belonging to the usergroup along with their
ENG|090706 | 6| | passwords, any private data created by members of the usergroup, all
ENG|090706 | 7| | data related to this private data for all users, any privileges granted
ENG|090706 | 8| | by members of the usergroup as well as any privileges granted to the
ENG|090706 | 9| | usergroup. In particular, all view definitions and synonyms related to
ENG|090706 | 10| | the private data are dropped.
ENG|090706 | 11| | If RESTRICT was specified and the usergroup owns private data, the
ENG|090706 | 12| | usergroup is not dropped.
ENG|090706 | 14| | The usergroup purchase is to be dropped.
ENG|090706 | 16| E| DROP USERGROUP purchase
ENG|090706 | 18|RI| ##09103004Syntax
ENG|090707 | 1| | Altering the Password
ENG|090707 | 3| I| The ##09103005<alter^password^statement> can be used to alter the password of a
ENG|090707 | 4| | user. The password can be altered by the user himself or it must be
ENG|090707 | 5| | redefined for a user by the SYSDBA. If it is the SYSDBA who alters the
ENG|090707 | 6| | password of a user, he must either be the SYSDBA of the user's HOME
ENG|090707 | 7| | SERVERDB or the SYSDBA of the HOME SERVERDB of the user's owner.
ENG|090707 | 9| | The user alfred wants to alter his password.
ENG|090707 | 11| E| ALTER PASSWORD alfred TO jupidooh
ENG|090707 | 13| | The user alfred has forgotten his password. The SYSDBA of his HOME
ENG|090707 | 14| | SERVERDB defines a new password for him.
ENG|090707 | 16| | ALTER PASSWORD alfred catfish
ENG|090707 | 17|RI| ##09103005Syntax
ENG|090708 | 1| | Owner Authorization
ENG|090708 | 3| I| The ##09103006<grant^user^statement> can be used to grant the owner authorization
ENG|090708 | 4| | that the SYSDBA or a DBA has for a user to another DBA. In the same
ENG|090708 | 5| I| way, the ##09103006<grant^usergroup^statement> can be used to grant the owner
ENG|090708 | 6| | authorization that a DBA has for a usergroup to another DBA.
ENG|090708 | 8| E| GRANT barbara FROM localdba TO newdba
ENG|090708 | 10|RI| ##09103006Syntax
ENG|090709 | 1| | Access Rights
ENG|090709 | 2| | -------------
ENG|090709 | 4| M| #01General
ENG|090709 | 5| M| #02Granting^Access^Rights^for^Tables^and^Columns (GRANT)
ENG|090709 | 6| M| #03Granting^Access^Rights^for^DB^Procedures (GRANT EXECUTE)
ENG|090709 | 7|RM| #04Revoking^Access^Rights (REVOKE)
ENG|09070901 | 1| | General
ENG|09070901 | 3| | Access to the data can be controlled in a very sophisticated way by
ENG|09070901 | 4| | granting different privileges on tables, individual columns or DB
ENG|09070901 | 5| | procedures. Privileges allow data to be accessed which are not owned by
ENG|09070901 | 6| | the accessing users. GRANT EXECUTE enables the specified users to
ENG|09070901 | 7| | execute the DB procedure <db procedure>. For the execution of the DB
ENG|09070901 | 8| | procedure, these users are given all privileges which are required for
ENG|09070901 | 9| | the regular execution of the DB procedure. These privileges, however,
ENG|09070901 | 10| | are only valid during the execution of the DB procedure. In this way,
ENG|09070901 | 11| | it is possible to give a user access to data for which he actually does
ENG|09070901 | 12|R | not have any access right.
ENG|09070902 | 1| | Granting Access Rights for Tables and Columns (GRANT)
ENG|09070902 | 3| I| The ##09103007<grant^statement> enables a user to grant privileges for the
ENG|09070902 | 4| | specified tables. For base tables, the owner of the table has this
ENG|09070902 | 5| | authorization. For view tables and snapshot tables, even the owner is
ENG|09070902 | 6| | not always authorized to grant all the privileges. Which privileges a
ENG|09070902 | 7| | user may grant is determined by ADABAS upon generation of the view
ENG|09070902 | 8| | table. The result depends on the type of the view table, as well as on
ENG|09070902 | 9| | the user's specific privileges for the tables selected in the view
ENG|09070902 | 10| | table or snapshot table. The owner of the view table can find out the
ENG|09070902 | 11| | privileges he is allowed to grant by selecting the system table
ENG|09070902 | 12| | DOMAIN.PRIVILEGES.
ENG|09070902 | 14| | The owner of the table account (sqltravel00) grants all privileges to
ENG|09070902 | 15| | the user sqltravel20.
ENG|09070902 | 17|SE| GRANT ALL ON account TO sqltravel20
ENG|09070902 | 19| | The owner of the table customer (sqltravel00) grants some privileges to
ENG|09070902 | 20| | the user sqltravel20. In addition, the user sqltravel20 gets the right
ENG|09070902 | 21| | to grant the privileges obtained to other users.
ENG|09070902 | 23| M| GRANT #01INSERT, #01DELETE, #01INDEX, #01ALTER, #01REFERENCES
ENG|09070902 | 24| | ON customer TO sqltravel20 WITH GRANT OPTION
ENG|09070902 | 26| | The owner of the table customer (sqltravel00) grants some privileges
ENG|09070902 | 27| | for some columns of the table customer to the user sqltravel10.
ENG|09070902 | 29| M| GRANT #01UPDATE (zip, address), #01SELECT (cno, firstname, name, zip,
ENG|09070902 | 30| | address) ON customer TO sqltravel20
ENG|09070902 | 32|RI| ##09103007Syntax
ENG|0907090201 | 1| | The INSERT Privilege, the DELETE Privilege
ENG|0907090201 | 3| | The privileges authorize the specified users either to insert rows into
ENG|0907090201 | 4| | or to delete rows from the specified tables.
ENG|0907090201 | 6| | The UPDATE Privilege, the SELECT Privilege
ENG|0907090201 | 8| | The privileges authorize the specified users either to update rows in
ENG|0907090201 | 9| | or to select rows from the specified tables. If a sequence of <column
ENG|0907090201 | 10| | name>s is specified, then only the specified columns can be updated or
ENG|0907090201 | 11| | selected in the rows.
ENG|0907090201 | 13| | The SELUPD Privilege
ENG|0907090201 | 15| | SELUPD grants the privileges SELECT and UPDATE. If a sequence of
ENG|0907090201 | 16| | <column name>s is specified, then only the specified columns can be
ENG|0907090201 | 17|S | updated and selected in the rows.
ENG|0907090201 | 19| | The INDEX Privilege
ENG|0907090201 | 21| | The INDEX privilege authorizes the specified users to execute the
ENG|0907090201 | 22| I| ##091018<create^index^statement> and the ##091018<drop^index^statement> for the
ENG|0907090201 | 23| | specified tables.
ENG|0907090201 | 25| | The ALTER Privilege
ENG|0907090201 | 27| | The ALTER privilege authorizes the specified users to execute the
ENG|0907090201 | 28| I| ##091011<alter^table^statement> for the specified tables.
ENG|0907090201 | 30| | The REFERENCES Privilege
ENG|0907090201 | 32| | The REFERENCES privilege authorizes the specified users to specify the
ENG|0907090201 | 33| | table <table name> as <referenced table> in a <column definition> or
ENG|0907090201 | 34|R | <referential constraint definition>.
ENG|09070903 | 1| | Granting Access Rights for DB Procedures (GRANT EXECUTE)
ENG|09070903 | 3| I| ##09103008GRANT^EXECUTE authorizes the specified users to execute the DB
ENG|09070903 | 4| | procedure <db procedure>. <db procedure> must be a DB procedure that
ENG|09070903 | 5| | was generated by the executing user. When a DB procedure is translated
ENG|09070903 | 6| | by the corresponding ADABAS component, ADABAS checks whether the owner
ENG|09070903 | 7| | of the DB procedure is authorized to grant all privileges required for
ENG|09070903 | 8| | the execution of this DB procedure to other users. If this is not the
ENG|09070903 | 9| | case, the <grant statement> fails. Otherwise, the specified users
ENG|09070903 | 10| | implicitly obtain all privileges needed for the execution of the DB
ENG|09070903 | 11| | procedure. These privileges, however, are only valid for the execution
ENG|09070903 | 12| | of the DB procedure; i.e., in programs or sessions with the interactive
ENG|09070903 | 13| | ADABAS components, they are not available to the specified users,
ENG|09070903 | 14|S | unless they have been granted explicitly to them.
ENG|09070903 | 19| | The user sqltravel00 has generated a DB procedure customer.insert. He
ENG|09070903 | 20| | wants to grant the execute privilege for this DB procedure to the user
ENG|09070903 | 21| | sqltravel10.
ENG|09070903 | 23| E| GRANT EXECUTE ON customer.insert TO sqltravel10
ENG|09070903 | 25|RI| ##09103008Syntax
ENG|09070904 | 1| | Revoking Access Rights (REVOKE)
ENG|09070904 | 3| I| The owner of a table can use the ##09103009<revoke^statement> to revoke any
ENG|09070904 | 4| | privileges granted for this table from any user. By specifying ALL, the
ENG|09070904 | 5| | owner of the table revokes all privileges granted for the table from
ENG|09070904 | 6| | the user. If a user is not the owner of the table, he can only revoke
ENG|09070904 | 7| | the privileges he has granted. If the SELECT privilege was granted
ENG|09070904 | 8| | without a sequence of <column name>s for a table, REVOKE SELECT
ENG|09070904 | 9| | (<column name>,...) revokes the SELECT privilege for the specified
ENG|09070904 | 10| | columns; the SELECT privilege remains unaffected for the columns of the
ENG|09070904 | 11| | table which have not been specified. This also applies to the UPDATE
ENG|09070904 | 12|S | and SELUPD privilege.
ENG|09070904 | 19| | If RESTRICT is not specified, the <revoke statement> can cascade; i.e.,
ENG|09070904 | 20| | revoking a privilege from a user causes this privilege to be revoked
ENG|09070904 | 21| | from any additional user who may have received this privilege from the
ENG|09070904 | 22| | user specified in the <revoke statement>. If RESTRICT is specified and
ENG|09070904 | 23| | the user from whom the privilege is to be revoked has granted the
ENG|09070904 | 24| | privilege to other users, the <revoke statement> fails.
ENG|09070904 | 26| | REVOKE EXECUTE revokes the privilege to execute the DB procedure <db
ENG|09070904 | 27| | procedure> from the specified users. The execute privilege can only be
ENG|09070904 | 28|S | revoked by the owner of the DB procedure.
ENG|09070904 | 37| | The user sqltravel00 revokes all privileges on the table customer from
ENG|09070904 | 38| | the user sqltravel10.
ENG|09070904 | 40| E| REVOKE ALL ON customer FROM sqltravel10
ENG|09070904 | 42| | The user sqltravel00 revokes the execute privilege for the DB procedure
ENG|09070904 | 43| | customer.insert from the user sqltravel10.
ENG|09070904 | 45| | REVOKE EXECUTE ON customer.insert FROM sqltravel10
ENG|09070904 | 47|RI| ##09103009Syntax
ENG|0909 | 1| | SQLMODEs
ENG|0909 | 2| | --------
ENG|0909 | 4| M| #01SQLMODE^ADABAS
ENG|0909 | 5| M| #02SQLMODE^ANSI
ENG|0909 | 6| M| #03SQLMODE^DB2
ENG|0909 | 7|RM| #04SQLMODE^ORACLE
ENG|090901 | 1| | ADABAS
ENG|090901 | 3| | The database system ADABAS is able to perform correct ADABAS
ENG|090901 | 4| | applications that are written according to the ANSI standard (ANSI
ENG|090901 | 5| | X3.135-1992, Entry SQL), the definition of the DB2 Version 3, or the
ENG|090901 | 6| | definition of ORACLE7. ADABAS is able to check whether new ADABAS
ENG|090901 | 7| | applications conform to one of the above-mentioned definitions.
ENG|090901 | 8| | However, the support of other SQLMODEs with regard to DDL statements is
ENG|090901 | 9| I| restricted. When ##090101connecting to ADABAS, one of the above-mentioned
ENG|090901 | 10| | definitions or the SQLMODE ADABAS can be selected. The default is
ENG|090901 | 11|R | SQLMODE ADABAS.
ENG|090902 | 1| | SQLMODE ANSI
ENG|090902 | 3| | If SQLMODE is set to ANSI, the following differences exist between
ENG|090902 | 4| | ADABAS and the ANSI standard according to the definition X3.135-1992:
ENG|090902 | 6| | - Between the ANSI standard and ADABAS, there are differences with
ENG|090902 | 7| | regard to the implicit addition of the <owner> if this specification
ENG|090902 | 8| | has been omitted in the <table name>.
ENG|090902 | 10| | - In addition to the ANSI standard, in ADABAS D X'1F' and X'1E' are
ENG|090902 | 11| | accepted in the <like expression> of a <like predicate> as
ENG|090902 | 12| | equivalents of '%' and '_'.
ENG|090902 | 14| | - In contrast to the ANSI standard, the <create schema statement> has
ENG|090902 | 15|R | no semantic significance in ADABAS.
ENG|090903 | 1| | SQLMODE DB2
ENG|090903 | 3| | If SQLMODE is set to DB2, the following differences exist between
ENG|090903 | 4| | ADABAS and the DB2 Version 3:
ENG|090903 | 6| | - In ADABAS there are usergroups, so that it may happen that the
ENG|090903 | 7| | <owner> of an object is not a user but a usergroup.
ENG|090903 | 9| | - In contrast to DB2, ADABAS does not distinguish between 'primary
ENG|090903 | 10| | authorization id' and 'secondary authorization id'. A user in ADABAS
ENG|090903 | 11| | can only create and drop database objects for himself or for his
ENG|090903 | 12| | usergroup, and he can create database objects which are not assigned
ENG|090903 | 13| | to a particular user (e.g. indexes). It is not possible to create
ENG|090903 | 14| | database objects for other users.
ENG|090903 | 16| | - ADABAS knows synonyms, no aliases.
ENG|090903 | 18|S | - In contrast to DB2, the maximum precision of numbers is 18 digits in
ENG|090903 | 19| | ADABAS, not 31.
ENG|090903 | 21| | - The range of values of numbers in ADABAS is between
ENG|090903 | 22| | -9.99999999999999999E+62 and -1E-64 and between +1E-64 and
ENG|090903 | 23| | +9.99999999999999999E+62. In DB2, the range comprises the values
ENG|090903 | 24| | between 5.4E-79 and 7.2E+75.
ENG|090903 | 26| | - In contrast to DB2, data with the code attribue BYTE (BIT DATA) is
ENG|090903 | 27| | not filled with blanks in ADABAS, but with binary zeros.
ENG|090903 | 29| | - In contrast to DB2, all identifiers are long identifiers in ADABAS.
ENG|090903 | 31| | - In addition to DB2, <extended letter> and <language specific letter>
ENG|090903 | 32| | can be used in an <identifier> in ADABAS.
ENG|090903 | 34| | - In contrast to DB2, a <special identifier> in ADABAS can only be
ENG|090903 | 35| | enclosed in '"'. A <string literal> can only be enclosed in
ENG|090903 | 36|S | apostrophes, not in '"'. There is no option which could be used to
ENG|090903 | 37| | replace the '"' by an apostrophe or vice versa.
ENG|090903 | 39| | - The following keywords are not reserverd in ADABAS:
ENG|090903 | 40| | COLLECTION, DESCRIPTOR, END-EXEC, ERASE, FIELDPROC, GO, GOTO,
ENG|090903 | 41| | IMMEDIATE, LOCKSIZE, NUMPARTS, OBID, PACKAGE, PART, PLAN, PRIQTY,
ENG|090903 | 42| | PROGRAM, SECQTY, VOLUMES
ENG|090903 | 44| | - The indication of a 'location name' for a <table name> specification
ENG|090903 | 45| | is neither possible nor required in ADABAS.
ENG|090903 | 47| | - In contrast to DB2, there is no option in ADABAS to ensure that a ','
ENG|090903 | 48| | can be specified instead of the decimal point.
ENG|090903 | 50| | - In contrast to DB2, all integer values can be specified without a
ENG|090903 | 51| | decimal point in ADABAS.
ENG|090903 | 53| | - In ADABAS, the 'special registers' USER and CURRENT SQLID always
ENG|090903 | 54|S | contain the same value and have a maximum length of 18 bytes.
ENG|090903 | 55| | - The 'special register' TIMEZONE always has the value 0 in ADABAS.
ENG|090903 | 57| | - The 'special registers' CURRENT SERVER and CURRENT PACKAGESET are not
ENG|090903 | 58| | supported in ADABAS.
ENG|090903 | 60| | - The date and time format LOCAL is not supported in ADABAS. In
ENG|090903 | 61| | addition to DB2, ADABAS supports the date and time format INTERNAL.
ENG|090903 | 63| | - KATAKANA and 'mixed data' are not supported in ADABAS.
ENG|090903 | 65| | - In contrast to DB2, the default value for the precision of the
ENG|090903 | 66| | function DECIMAL is always the value 18 in ADABAS.
ENG|090903 | 68| | - For the result of the <function spec> LENGTH, there are differences
ENG|090903 | 69| | between DB2 and ADABAS with regard to all data types, except CHAR.
ENG|090903 | 71| | - In contrast to DB2, ADABAS does not support the specification of an 8
ENG|090903 | 72|S | or 14 bytes long string for the <function spec> TIMESTAMP.
ENG|090903 | 73| | - In ADABAS, the functions HEX and VARGRAPHIC are not available.
ENG|090903 | 75| | - In contrast to DB2, there is no need in ADABAS that the <expression>
ENG|090903 | 76| | in a <set function spec> contains a <column spec>.
ENG|090903 | 78| | - In ADABAS, a <set function spec> applied to an empty, grouped result
ENG|090903 | 79| | table does not produce a result.
ENG|090903 | 81| | - In contrast to DB2, it is possible in ADABAS to specify minutes and
ENG|090903 | 82| | seconds >= 60 in <time duration>s. Specifications of months > 12 and
ENG|090903 | 83| | of days > 31 are possible in <date duration>s. Values that are too
ENG|090903 | 84| | large are handled as an overflow.
ENG|090903 | 86| | - <timestamp duration>s are not supported in ADABAS.
ENG|090903 | 88| | - In addition to DB2, in ADABAS X'1F' and X'1E' are accepted in the
ENG|090903 | 89|S | <like expression> as equivalents of '%' and <underscore>.
ENG|090903 | 91| | - The following SQL statements are not available in ADABAS:
ENG|090903 | 92| | CREATE ALIAS, DROP ALIAS
ENG|090903 | 93| | ALTER DATABASE, CREATE DATABASE, DROP DATABASE
ENG|090903 | 94| | ALTER INDEX
ENG|090903 | 95| | ALTER STOGROUP, CREATE STOGROUP, DROP STOGROUP
ENG|090903 | 96| | ALTER TABLE
ENG|090903 | 97| | ALTER TABLESPACE, CREATE TABLESPACE, DROP TABLESPACE
ENG|090903 | 98| | CONNECT (not available in DB2 syntax)
ENG|090903 | 99| | EXPLAIN, LABEL ON, SET CURRENT PACKAGESET, SET CURRENT SQLID
ENG|090903 | 101| | - In contrast to DB2, a table can only have 255 columns in ADABAS.
ENG|090903 | 103| | - In contrast to DB2, GRAPHIC data in ADABAS is not stored as DBCS
ENG|090903 | 104| | data, but with the code attribute BYTE. <string literal>s referring
ENG|090903 | 105| | to GRAPHIC data must be specified as <hex literal>s and not in the
ENG|090903 | 106| | format used in DB2.
ENG|090903 | 108|S | - The internal length of date, time and timestamp values differs in DB2
ENG|090903 | 109| | and ADABAS.
ENG|090903 | 111| | - In comparison with DB2, the set of <db2 options> in the <create table
ENG|090903 | 112| | statement> is considerably restricted in ADABAS.
ENG|090903 | 114| | - Field procedures are not supported in ADABAS.
ENG|090903 | 116| | - In contrast to DB2, a unique, single-column index in ADABAS can
ENG|090903 | 117| | contain the NULL value in the particular column in several rows.
ENG|090903 | 119| | - In ADABAS, the <comment statement> is not available for aliases.
ENG|090903 | 121| | - In ADABAS, the <grant statement> and the <revoke statement> are only
ENG|090903 | 122| | available for privileges on base or view tables.
ENG|090903 | 124| | - In contrast to DB2, an <update statement> with CURRENT OF can be used
ENG|090903 | 125| | in ADABAS to update all columns for which the user has the
ENG|090903 | 126|S | corresponding privileges, regardless of whether they are specified in
ENG|090903 | 127| | the <update clause> or not.
ENG|090903 | 129| | - In contrast to DB2, a sequence of <select column>s in ADABAS may only
ENG|090903 | 130| | define 254 columns, not 750.
ENG|090903 | 132| | - In addition to DB2, the <group clause> and the <having clause> can
ENG|090903 | 133| | also be contained in a <subquery> of a <predicate> in ADABAS.
ENG|090903 | 135| | - In contrast to DB2, in ADABAS, all locks are released at the end of a
ENG|090903 | 136| | transaction, even the locks requested by <declare cursor statement>s
ENG|090903 | 137|R | WITH HOLD specification.
ENG|090904 | 1| | SQLMODE ORACLE
ENG|090904 | 2| | --------------
ENG|090904 | 4| | If SQLMODE is set to ORACLE, the following differences exist between
ENG|090904 | 5| | the syntax and semantics in ADABAS and the definition of ORACLE7:
ENG|090904 | 7| M| #01Program-relevant^Differences
ENG|090904 | 8|RM| #02Differences^in^the^Database^Management
ENG|09090401 | 1| | Program-relevant Differences
ENG|09090401 | 3| | - If a <table name> is specified without an <owner> and if there is no
ENG|09090401 | 4| | private table of the user with the name <table name>, the behavior of
ENG|09090401 | 5| | ADABAS differs from that of ORACLE.
ENG|09090401 | 7| | - In ADABAS, numbers are not implicitly converted into date values or
ENG|09090401 | 8| | vice versa. Character strings are converted into numeric values, or
ENG|09090401 | 9| | vice versa, in application programs for comparisons or when variables
ENG|09090401 | 10| | are used. The arguments of functions are not implicitly converted.
ENG|09090401 | 12| | - When two character strings are compared in ADABAS, the shorter one is
ENG|09090401 | 13| | filled with blanks (code attribute ASCII or EBCDIC) or binary zeros
ENG|09090401 | 14| | (code attribute BYTE) up to the length of the longer character
ENG|09090401 | 15| | string. This is not done in ORACLE.
ENG|09090401 | 17| | - The range of values of numbers in ADABAS is between
ENG|09090401 | 18|S | -9.99999999999999999E+62 and -1E-64 and between +1E-64 and
ENG|09090401 | 19| | +9.99999999999999999E+62. In ORACLE, the range comprises values
ENG|09090401 | 20| | between 0.999E-128 and 0.999E126.
ENG|09090401 | 22| | - ADABAS does not know a National Language Support; i.e., it does not
ENG|09090401 | 23| | know the corresponding functions nor the corresponding parameters in
ENG|09090401 | 24| | other functions.
ENG|09090401 | 26| | - The NULL value and the empty <string literal>, or <string literal>s
ENG|09090401 | 27| | only containing blanks are different in ADABAS.
ENG|09090401 | 29| | - In ADABAS, numbers cannot end with a 'K' or 'M'.
ENG|09090401 | 31| | - Date values in ORACLE are between 01-01-4712 BC and 12-31-4712 AC. In
ENG|09090401 | 32| | ADABAS, date values can be between 01-01-0001 and 12-31-9999.
ENG|09090401 | 34| | - The pseudo column LEVEL is not supported in ADABAS.
ENG|09090401 | 36|S | - The functions:
ENG|09090401 | 37| | NLSSORT, CHARTOROWID, ROWIDTOCHAR, CONVERT, DUMP, USERENV,
ENG|09090401 | 38| | NLS_INITCAP, NLS_LOWER, NLS_UPPER, TO_MULTI_BYTE,TO_SINGLE_BYTE,
ENG|09090401 | 39| | INSTRB, LENGTHB, SUBSTRB
ENG|09090401 | 40| | are not provided in ADABAS.
ENG|09090401 | 42| | - In ADABAS, the pseudo column ROWNUM cannot be used in <update columns
ENG|09090401 | 43| | and values> of the <update statement>.
ENG|09090401 | 45| | - In ADABAS, a correlated subquery is not allowed for a <subquery> in a
ENG|09090401 | 46| | <set update clause>.
ENG|09090401 | 48| | - A <set update clause> of the format <column name>,... = <subquery> is
ENG|09090401 | 49| | not available in ADABAS.
ENG|09090401 | 51| | - The pseudo column ROWID is not supported in ADABAS.
ENG|09090401 | 53| | - The pseudo column ROWNUM is entered in the <select column> after
ENG|09090401 | 54|S | sorting the result table.
ENG|09090401 | 55| | - The specification of CONNECT BY <search condition> [ START WITH
ENG|09090401 | 56| | <search condition> ] is not available in ADABAS.
ENG|09090401 | 58| | - The specifications for the <connect statement> to be made in addition
ENG|09090401 | 59| | to the user name and pasword differ in ADABAS and ORACLE.
ENG|09090401 | 61| | - The effects of the <lock spec> in the <lock statement> partially
ENG|09090401 | 62| | differ in ADABAS and ORACLE.
ENG|09090401 | 64| | - In contrast to ORACLE, read and write operations can collide on a
ENG|09090401 | 65| | table in ADABAS.
ENG|09090401 | 67| | - In ADABAS, locks are not released by a <rollback to statement>.
ENG|09090401 | 69| | - FORCE or COMMENT cannot be specified with the <connect statement> or
ENG|09090401 | 70|R | <rollback statement>.
ENG|09090402 | 1| | Differences in the Database Management
ENG|09090402 | 3| | - In ADABAS, there are usergroups, so that it may happen that the
ENG|09090402 | 4| | <owner> of an object is not a user but a usergroup.
ENG|09090402 | 6| | - In ADABAS, a user can only create and delete database objects for
ENG|09090402 | 7| | himself or for his usergroup, and he can create database objects
ENG|09090402 | 8| | which are not assigned to a particular user (e.g., indexes). It is
ENG|09090402 | 9| | not possible to create database objects for other users.
ENG|09090402 | 11| | - In contrast to ORACLE, tables of a user are in a namespace.
ENG|09090402 | 12| | Sequences, procedures and functions build separate namespaces.
ENG|09090402 | 13| | Indexes and constraints in ADABAS must have unique names within a
ENG|09090402 | 14| | table.
ENG|09090402 | 16| | - In contrast to ORACLE, DBAs in ADABAS are also subject to the
ENG|09090402 | 17| | privileges concept and cannot execute any DDL statements (e.g.,
ENG|09090402 | 18|S | CREATE INDEX) or DML statements (e.g., DELETE) for which they have
ENG|09090402 | 19| | not received the corresponding privileges.
ENG|09090402 | 21| | - Numbers have only 18 significant digits in ADABAS, instead of 38.
ENG|09090402 | 23| | - While ORACLE distinguishes names of up to 30 characters in length,
ENG|09090402 | 24| | only 18 characters are significant in ADABAS.
ENG|09090402 | 26| | - The indication of a database link for a <table name> specification is
ENG|09090402 | 27| | neither possible nor required in ADABAS.
ENG|09090402 | 29| | - The following key words are not reserved in ADABAS:
ENG|09090402 | 30| | ACCESS, COMPRESS, ELSE, FILE, IF, IMMEDIATE, INCREMENT, INITIAL,
ENG|09090402 | 31| | MAXEXTENTS, NOAUDIT, NOCOMPRESS, OFFLINE, ONLINE, PRIOR, SESSION,
ENG|09090402 | 32| | SIZE, START, SUCCESSFUL, THEN, VALIDATE
ENG|09090402 | 34| | - In contrast to ORACLE, a <fixed point literal> in ADABAS can begin or
ENG|09090402 | 35|S | end with a '.'
ENG|09090402 | 37| | - In ADABAS, LONG columns can be specified in the <null predicate>.
ENG|09090402 | 39| | - The following <sql statement>s are not available in ADABAS.
ENG|09090402 | 40| | ALTER / CREATE / DROP CLUSTER,
ENG|09090402 | 41| | CREATE CONTROLFILE
ENG|09090402 | 42| | ALTER / CREATE DATABASE
ENG|09090402 | 43| | CREATE / DROP DATABASE LINK
ENG|09090402 | 44| | ALTER / CREATE / DROP FUNCTION
ENG|09090402 | 45| | ALTER INDEX, VALIDATE INDEX
ENG|09090402 | 46| | ALTER / CREATE / DROP PACKAGE
ENG|09090402 | 47| | ALTER / CREATE / DROP PROCEDURE
ENG|09090402 | 48| | ALTER / CREATE / DROP PROFILE
ENG|09090402 | 49| | ALTER RESOURCE COST ALTER / CREATE / DROP / SET ROLE
ENG|09090402 | 50| | ALTER ROLLBACK SEGMENT, DROP ROLLBACK SEGMENT
ENG|09090402 | 51| | ALTER SEQUENCE
ENG|09090402 | 52| | ALTER SESSION
ENG|09090402 | 53| | ALTER SNAPSHOT
ENG|09090402 | 54|S | ALTER SNAPSHOT LOG
ENG|09090402 | 55| | ALTER SYSTEM
ENG|09090402 | 56| | ALTER / DROP TABLESPACE
ENG|09090402 | 57| | ALETR / CREATE / DROP TRIGGER
ENG|09090402 | 58| | ALTER USER
ENG|09090402 | 59| | ALTER VIEW
ENG|09090402 | 60| | ANALYZE
ENG|09090402 | 61| | AUDIT, NOAUDIT
ENG|09090402 | 62| | EXPLAIN PLAN
ENG|09090402 | 63| | RENAME
ENG|09090402 | 64| | SET TRANSACTION
ENG|09090402 | 66| | - Columns with the data type CHAR and with a length less than or equal
ENG|09090402 | 67| | to 30 characters are stored with a fixed length in ADABAS, not with a
ENG|09090402 | 68| | variable length as in ORACLE.
ENG|09090402 | 70| | - In ADABAS, the code attribute of a column of the data type CHAR,
ENG|09090402 | 71| | VARCHAR or LONG is determined by the code attribute specified during
ENG|09090402 | 72|S | the configuration which should, but need not, correspond to the
ENG|09090402 | 73| | character set of the computer.
ENG|09090402 | 75| | - In ADABAS, data types cannot be defined for numbers with a negative
ENG|09090402 | 76| | scale. It is not possible to specify a scale that is greater than the
ENG|09090402 | 77| | number of significant digits.
ENG|09090402 | 79| | - In ADABAS, the possible maximum number of significant digits is
ENG|09090402 | 80| | always used for the data type FLOAT.
ENG|09090402 | 82| | - In ADABAS, a <constraint definition> defined in a <column definition>
ENG|09090402 | 83| | can also refer to several columns of the table.
ENG|09090402 | 85| | - In ADABAS, constraints cannot be deactivated temporarily.
ENG|09090402 | 87| | - The specification of the <oracle option>s in the <create table
ENG|09090402 | 88| | statement> and <create index statement> has no effect in ADABAS.
ENG|09090402 | 90|S | - In contrast to ORACLE, tables for which no PRIMARY KEY was defined
ENG|09090402 | 91| | contain the key column SYSKEY in ADABAS. This column can be specified
ENG|09090402 | 92| | in a <select column> and in the <search condition> and its value
ENG|09090402 | 93| | cannot be changed. User-defined key columns can be changed in ADABAS.
ENG|09090402 | 95| | - For a <drop table statement> or <drop view statement>, all objects,
ENG|09090402 | 96| | synonyms and view tables belonging to this table are deleted in
ENG|09090402 | 97| | ADABAS, not only marked as not being usable.
ENG|09090402 | 99| | - CREATE SYNONYM is not possible for sequences, procedures and
ENG|09090402 | 100| | functions. The object for which the synonym is defined must exist and
ENG|09090402 | 101| | the current user must have at least one privilege for it.
ENG|09090402 | 103| | - In ADABAS, a time for an automatic refresh cannot be specified during
ENG|09090402 | 104| | the definition of snapshot tables. An automatic refresh of a snapshot
ENG|09090402 | 105| | table is not possible.
ENG|09090402 | 107|S | - In ADABAS, an index cannot be defined across a cluster.
ENG|09090402 | 109| | - In ADABAS, an index in descending order is created when DESC has been
ENG|09090402 | 110| | specified.
ENG|09090402 | 112| | - In ADABAS, an <index name> may only be unique together with a <table
ENG|09090402 | 113| | name>. In contrast to ORACLE, non-unique <index name>s require the
ENG|09090402 | 114| | specification of the corresponding <table name> in the <drop index
ENG|09090402 | 115| | statement>.
ENG|09090402 | 117| | - PUBLIC synonyms cannot be created and deleted in ADABAS.
ENG|09090402 | 119| | - The <sql statement>s
ENG|09090402 | 120| | CREATE TABLESPACE
ENG|09090402 | 121| | CREATE [ PUBLIC ] ROLLBACK SEGMENT
ENG|09090402 | 122| | are accepted by ADABAS but have no effect.
ENG|09090402 | 124| | - The <grant statement> in ADABAS corresponds to the ORACLE GRANT
ENG|09090402 | 125| | (object privileges). The other types of the GRANT are not available
ENG|09090402 | 126|S | in ADABAS. The same is valid for REVOKE.
ENG|09090402 | 127| | - In contrast to ORACLE, it is not possible in ADABAS to grant a user a
ENG|09090402 | 128|R | privilege of two different, other users.
ENG|0910 | 1| | Syntax Descriptions
ENG|0910 | 3| I| ##09101101<add^definition>
ENG|0910 | 4| I| ##09101103<alter^definition>
ENG|0910 | 5| I| ##09103005<alter^password^statement>
ENG|0910 | 6| I| ##091011<alter^table^statement>
ENG|0910 | 7| I| ##09103002<alter^user^statement>
ENG|0910 | 8| I| ##0910300201<alter^usergroup^statement>
ENG|0910 | 9| I| ##09105301<arithmetic^function>
ENG|0910 | 10| I| ##09105701<between^predicate>
ENG|0910 | 11| I| ##09105601<boolean^primary>
ENG|0910 | 12| I| ##091062<clear^snapshot^log^statement>
ENG|0910 | 13| I| ##091002<close^statement>
ENG|0910 | 14| I| ##0910100102<column^attributes>
ENG|0910 | 15| I| ##09101001<column^definition>
ENG|0910 | 16| I| ##091052<column^spec>
ENG|0910 | 17| I| ##091065<comment^on^statement>
ENG|0910 | 18|SI| ##091029<commit^statement>
ENG|0910 | 19| I| ##0910570201<comp^op>
ENG|0910 | 20| I| ##09105702<comparison^predicate>
ENG|0910 | 21| I| ##091028<connect^statement>
ENG|0910 | 22| I| ##09101004<constraint^definition>
ENG|0910 | 23| I| ##09105307<conversion^function>
ENG|0910 | 24| I| ##091013<create^domain^statement>
ENG|0910 | 25| I| ##091018<create^index^statement>
ENG|0910 | 26| I| ##091064<create^snapshot^log^statement>
ENG|0910 | 27| I| ##091063<create^snapshot^statement>
ENG|0910 | 28| I| ##091015<create^synonym^statement>
ENG|0910 | 29| I| ##091010<create^table^statement>
ENG|0910 | 30| I| ##091030<create^user^statement>
ENG|0910 | 31| I| ##09103001<create^usergroup^statement>
ENG|0910 | 32| I| ##091016<create^view^statement>
ENG|0910 | 33| I| ##0910100101<data^type>
ENG|0910 | 34| I| ##09105303<date^function>
ENG|0910 | 35| I| ##091002<declare^cursor^statement>
ENG|0910 | 36|SI| ##09105703<default^predicate>
ENG|0910 | 37| I| ##091010010201<default^spec>
ENG|0910 | 38| I| ##0910100501<delete^rule>
ENG|0910 | 39| I| ##091026<delete^statement>
ENG|0910 | 40| I| ##09102601<delete^statement>^with^"CURRENT^OF"
ENG|0910 | 41| I| ##09101102<drop^definition>
ENG|0910 | 42| I| ##091014<drop^domain^statement>
ENG|0910 | 43| I| ##091018<drop^index^statement>
ENG|0910 | 44| I| ##091064<drop^snapshot^log^statement>
ENG|0910 | 45| I| ##091063<drop^snapshot^statement>
ENG|0910 | 46| I| ##091015<drop^synonym^statement>
ENG|0910 | 47| I| ##091012<drop^table^statement>
ENG|0910 | 48| I| ##09103003<drop^user^statement>
ENG|0910 | 49| I| ##09103004<drop^usergroup^statement>
ENG|0910 | 50| I| ##091016<drop^view^statement>
ENG|0910 | 51| I| ##09101007<duplicates^clause>
ENG|0910 | 52| I| ##09105704<exists^predicate>
ENG|0910 | 53| I| ##091023<exists^table^statement>
ENG|0910 | 54|SI| ##091008<explain^statement>
ENG|0910 | 55| I| ##091050<expression>
ENG|0910 | 56| I| ##09105305<extraction^function>
ENG|0910 | 57| I| ##09105001<factor>
ENG|0910 | 58| I| ##091003<fetch^statement>
ENG|0910 | 59| I| ##09100103<from^clause>
ENG|0910 | 60| I| ##091053<function^spec>
ENG|0910 | 61| I| ##09103007<grant^statement>
ENG|0910 | 62| I| ##09103008<grant^statement>^(EXECUTE^Privilege)
ENG|0910 | 63| I| ##09103006<grant^user^statement>
ENG|0910 | 64| I| ##09100105<group^clause>
ENG|0910 | 65| I| ##09100106<having^clause>
ENG|0910 | 66| I| ##09105705<in^predicate>
ENG|0910 | 67| I| ##091024<insert^statement>
ENG|0910 | 68| I| ##09105706<join^predicate>
ENG|0910 | 69| I| ##0910100301<key^definition>
ENG|0910 | 70| I| ##091058<key^spec>
ENG|0910 | 71| I| ##09103109<length^column^statement>
ENG|0910 | 72|SI| ##09105707<like^predicate>
ENG|0910 | 73| I| ##09100109<lock^option>
ENG|0910 | 74| I| ##0910290201<lock^spec>
ENG|0910 | 75| I| ##09102902<lock^statement>
ENG|0910 | 76| I| ##091067<monitor^statement>
ENG|0910 | 77| I| ##09105502<named^query^expression>
ENG|0910 | 78| I| ##0910550201<named^query^primary>
ENG|0910 | 79| I| ##0910550202<named^query^spec>
ENG|0910 | 80| I| ##09100110<named^select^statement>
ENG|0910 | 81| I| ##091027<next^stamp^statement>
ENG|0910 | 82| I| ##09105708<null^predicate>
ENG|0910 | 83| I| ##091002<open^cursor^statement>
ENG|0910 | 84| I| ##09100107<order^clause>
ENG|0910 | 85| I| ##09105707<pattern^element>...
ENG|0910 | 86| I| ##091057<predicate>
ENG|0910 | 87| I| ##09105709<quantified^predicate>
ENG|0910 | 88| I| ##09105501<query^expression>
ENG|0910 | 89| I| ##0910550101<query^primary>
ENG|0910 | 90|SI| ##0910550102<query^spec>
ENG|0910 | 91| I| ##091059<query^statement>
ENG|0910 | 92| I| ##09101005<referential^constraint^definition>
ENG|0910 | 93| I| ##091061<refresh^statement>
ENG|0910 | 94| I| ##09102801<release^statement>
ENG|0910 | 95| I| ##091020<rename^column^statement>
ENG|0910 | 96| I| ##091015<rename^synonym^statement>
ENG|0910 | 97| I| ##091019<rename^table^statement>
ENG|0910 | 98| I| ##09103009<revoke^statement>
ENG|0910 | 99| I| ##091029<rollback^statement>
ENG|0910 | 100| I| ##09105710<rowno^predicate>
ENG|0910 | 101| I| ##091056<search^condition>
ENG|0910 | 102| I| ##091005<select^direct^statement:^positioned>
ENG|0910 | 103| I| ##091004<select^direct^statement:^searched>
ENG|0910 | 104| I| ##09100101<select^column>,...
ENG|0910 | 105| I| ##09100701<select^ordered^format1:^positioned>
ENG|0910 | 106| I| ##09100601<select^ordered^format1:^searched>
ENG|0910 | 107| I| ##09100702<select^ordered^format2:^positioned>
ENG|0910 | 108|SI| ##09100602<select^ordered^format2:^searched>
ENG|0910 | 109| I| ##091007<select^ordered^statement:^positioned>
ENG|0910 | 110| I| ##091006<select^ordered^statement:^searched>
ENG|0910 | 111| I| ##091001<select^statement>
ENG|0910 | 112| I| ##091054<set^function^spec>
ENG|0910 | 113| I| ##09100111<single^select^statement>
ENG|0910 | 114| I| ##09105711<sounds^predicate>
ENG|0910 | 115| I| ##09105306<special^function>
ENG|0910 | 116| I| ##091068<sql^statement>
ENG|0910 | 117| I| ##09105302<string^function>
ENG|0910 | 118| I| ##091055<subquery>
ENG|0910 | 119| I| ##09102901<subtrans^statement>
ENG|0910 | 120| I| ##09101008<table^description>
ENG|0910 | 121| I| ##09101006<table^option>
ENG|0910 | 122| I| ##09105304<time^function>
ENG|0910 | 123| I| ##09105309<trigonometric^function>
ENG|0910 | 124| I| ##09102903<unlock^statement>
ENG|0910 | 125| I| ##09100108<update^clause>
ENG|0910 | 126|SI| ##091025<update^statement>
ENG|0910 | 127| I| ##09102501<update^statement>^with^"CURRENT^OF"
ENG|0910 | 128| I| ##091066<update^statistics^statement>
ENG|0910 | 129| I| ##091051<value^spec>
ENG|0910 | 130|RI| ##09100104<where^clause>
ENG|091001 | 1| | <select statement>
ENG|091001 | 3| I| ##09105501<query^expression>
ENG|091001 | 4| M| [ #07<order^clause> ]
ENG|091001 | 5| M| [ #08<update^clause> ]
ENG|091001 | 6| M| [ #09<lock^option> ]
ENG|091001 | 7|R | [ FOR REUSE ]
ENG|09100101 | 1| | <select column>,...
ENG|09100101 | 3| | { *
ENG|09100101 | 4| | | <table name>. *
ENG|09100101 | 5| | | <reference name>. *
ENG|09100101 | 6| I| | ##091050<expression> [<result column name>]
ENG|09100101 | 7| | | ROWNO [<result column name>]
ENG|09100101 | 8| | | STAMP [<result column name>]
ENG|09100101 | 9|R | } ,...
ENG|09100102 | 1|R | <out of order>
ENG|09100103 | 1| | <from clause>
ENG|09100103 | 3| | FROM { <table name> [<reference name>]
ENG|09100103 | 4| | | <result table name> [<reference name>]
ENG|09100103 | 5| I| | ( ##09105501<query^expression> ) [<reference name>]
ENG|09100103 | 6|R | } ,...
ENG|09100104 | 1| | <where clause>
ENG|09100104 | 3|RI| WHERE ##091056<search^condition>
ENG|09100105 | 1| | <group clause>
ENG|09100105 | 3|RI| GROUP BY ##091050<expression> ,...
ENG|09100106 | 1| | <having clause>
ENG|09100106 | 3|RI| HAVING ##091056<search^condition>
ENG|09100107 | 1| | <order clause>
ENG|09100107 | 3| | ORDER BY { <unsigned integer> [{ASC | DESC}]
ENG|09100107 | 4| I| | ##091050<expression> [{ASC | DESC}]
ENG|09100107 | 5|R | } ,...
ENG|09100108 | 1| | <update clause>
ENG|09100108 | 3|R | FOR UPDATE [ OF <column name> ,... ]
ENG|09100109 | 1| | <lock option>
ENG|09100109 | 3| | WITH LOCK [(NOWAIT)] [{ [EXCLUSIVE] [ISOLATION LEVEL <unsigned integer>]
ENG|09100109 | 4| | | OPTIMISTIC [ISOLATION LEVEL <unsigned integer>]
ENG|09100109 | 5|R | }]
ENG|09100110 | 1| | <named select statement>
ENG|09100110 | 3| I| ##09105502<named^query^expression>
ENG|09100110 | 4| I| [ ##09100107<order^clause> ]
ENG|09100110 | 5| I| [ ##09100108<update^clause> ]
ENG|09100110 | 6| I| [ ##09100109<lock^option> ]
ENG|09100110 | 7|R | [ FOR REUSE ]
ENG|09100111 | 1| | <single select statement>
ENG|09100111 | 3| I| SELECT [{ALL | DISTINCT}] ##09100101<select^column>,...
ENG|09100111 | 4| | INTO <parameter name> [<indicator name>] ,...
ENG|09100111 | 5| I| [ ##09100103<from^clause> ]
ENG|09100111 | 6| I| [ ##09100104<where^clause> ]
ENG|09100111 | 7| I| [ ##09100106<having^clause> ]
ENG|09100111 | 8|RI| [ ##09100109<lock^option> ]
ENG|091002 | 1| | <declare cursor statement>
ENG|091002 | 3| I| DECLARE <result table name> CURSOR FOR ##091001<select^statement>
ENG|091002 | 6| | <open cursor statement>
ENG|091002 | 8| | OPEN <result table name>
ENG|091002 | 11| I| ##091003<fetch^statement>
ENG|091002 | 14| | <close statement>
ENG|091002 | 16|R | CLOSE [ <result table name> ]
ENG|091003 | 1| | <fetch statement>
ENG|091003 | 3| | FETCH [{ NEXT
ENG|091003 | 4| | | FIRST
ENG|091003 | 5| | | LAST
ENG|091003 | 6| | | PREV
ENG|091003 | 7| | | POS ( <unsigned integer> )
ENG|091003 | 8| | | POS ( <parameter name> )
ENG|091003 | 9| | | SAME
ENG|091003 | 10| | }] [<result table name>]
ENG|091003 | 11|R | INTO <parameter name> [<indicator name>] ,...
ENG|091004 | 1| | <select direct statement: searched>
ENG|091004 | 3| I| SELECT DIRECT ##09100101<select^column>,...
ENG|091004 | 4| | [ INTO <parameter name> [<indicator name>] ,... ]
ENG|091004 | 5| | FROM <table name>
ENG|091004 | 6| I| KEY <column name> = ##091051<value^spec> ,...
ENG|091004 | 7| I| [ ##09100104<where^clause> ]
ENG|091004 | 8|RI| [ ##09100109<lock^option> ]
ENG|091005 | 1| | <select direct statement: positioned>
ENG|091005 | 3| I| SELECT DIRECT ##09100101<select^column>,...
ENG|091005 | 4| | [ INTO <parameter name> [<indicator name>] ,... ]
ENG|091005 | 5| | FROM <table name>
ENG|091005 | 6| | WHERE CURRENT OF <result table name>
ENG|091005 | 7|RI| [ ##09100109<lock^option> ]
ENG|091006 | 1| | <select ordered statement: searched>
ENG|091006 | 3| M| { #01<select^ordered^format1:^searched>
ENG|091006 | 4| M| | #02<select^ordered^format2:^searched>
ENG|091006 | 5|R | }
ENG|09100601 | 1| | <select ordered format1: searched>
ENG|09100601 | 3| I| SELECT {FIRST | LAST} ##09100101<select^column>,...
ENG|09100601 | 4| | [ INTO <parameter name> [<indicator name>] ,... ]
ENG|09100601 | 5| | FROM <table name>
ENG|09100601 | 6| | [{ INDEX <column name>
ENG|09100601 | 7| | | INDEXNAME <index name>
ENG|09100601 | 8| I| | INDEX <column name> = ##091051<value^spec> [KEY ##091058<key^spec>,...]
ENG|09100601 | 9| | | INDEXNAME <index name> VALUES ( <value spec>,... )
ENG|09100601 | 10| | [KEY <key spec>,...]
ENG|09100601 | 11| | | KEY <key spec>,...
ENG|09100601 | 12| | }]
ENG|09100601 | 13| I| [ ##09100104<where^clause> ]
ENG|09100601 | 14|RI| [ ##09100109<lock^option> ]
ENG|09100602 | 1| | <select ordered format2: searched>
ENG|09100602 | 3| I| SELECT {NEXT | PREV} ##09100101<select^column>,...
ENG|09100602 | 4| | [ INTO <parameter name> [<indicator name>] ,... ]
ENG|09100602 | 5| | FROM <table name>
ENG|09100602 | 6| I| [{ INDEX <column name> = ##091051<value^spec>
ENG|09100602 | 7| | | INDEXNAME <index name> VALUES ( <value spec>,... )
ENG|09100602 | 8| | }]
ENG|09100602 | 9| I| KEY ##091058<key^spec>,...
ENG|09100602 | 10| I| [ ##09100104<where^clause> ]
ENG|09100602 | 11|RI| [ ##09100109<lock^option> ]
ENG|091007 | 1| | <select ordered statement: positioned>
ENG|091007 | 3| M| { #01<select^ordered^format1:^positioned>
ENG|091007 | 4| M| | #02<select^ordered^format2:^positioned>
ENG|091007 | 5|R | }
ENG|09100701 | 1| | <select ordered format1: positioned>
ENG|09100701 | 3| I| SELECT {FIRST | LAST} ##09100101<select^column>,...
ENG|09100701 | 4| | [ INTO <parameter name> [<indicator name>] ,... ]
ENG|09100701 | 5| | FROM <table name>
ENG|09100701 | 6| | [{ INDEX <column name>
ENG|09100701 | 7| | | INDEXNAME <index name>
ENG|09100701 | 8| I| | INDEX <column name> = ##091051<value^spec>
ENG|09100701 | 9| | | INDEXNAME <index name> VALUES ( <value spec>,... )
ENG|09100701 | 10| | }]
ENG|09100701 | 11| | WHERE CURRENT OF <result table name>
ENG|09100701 | 12|RI| [ ##09100109<lock^option> ]
ENG|09100702 | 1| | <select ordered format2: positioned>
ENG|09100702 | 3| I| SELECT {NEXT | PREV} ##09100101<select^column>,...
ENG|09100702 | 4| | [ INTO <parameter name> [<indicator name>] ,... ]
ENG|09100702 | 5| | FROM <table name>
ENG|09100702 | 6| I| [{ INDEX <column name> = ##091051<value^spec>
ENG|09100702 | 7| | | INDEXNAME <index name> VALUES ( <value spec>,... )
ENG|09100702 | 8| | }]
ENG|09100702 | 9| | WHERE CURRENT OF <result table name>
ENG|09100702 | 10|RI| [ ##09100109<lock^option> ]
ENG|091008 | 1| | <explain statement>
ENG|091008 | 3| | EXPLAIN [ (<result table name>) ]
ENG|091008 | 4| I| { ##091059<query^statement>
ENG|091008 | 5| I| | ##09100111<single^select^statement>
ENG|091008 | 6|R | }
ENG|091010 | 1| | <create table statement>
ENG|091010 | 3| | { CREATE TABLE <table name>
ENG|091010 | 4| M| [ ({ #01<column^definition>
ENG|091010 | 5| M| | #04<constraint^definition>
ENG|091010 | 6| M| | #05<referential^constraint^definition>
ENG|091010 | 7| I| | ##0910100301<key^definition>
ENG|091010 | 8| | | UNIQUE ( <column name>,... )
ENG|091010 | 9| | ,...
ENG|091010 | 10| | })
ENG|091010 | 11| | ]
ENG|091010 | 12| I| [ ##09101006<table^option> ]
ENG|091010 | 13| I| [ AS ##09105501<query^expression> [##09101007<duplicates^clause>] ]
ENG|091010 | 14| | | CREATE TABLE <like table> LIKE <source table>
ENG|091010 | 15| I| [ ##09101006<table^option> ]
ENG|091010 | 16|R | }
ENG|09101001 | 1| | <column definition>
ENG|09101001 | 3| M| { <column name> #01<data^type> #02<column^attributes>
ENG|09101001 | 4| I| | <column name> <domain name> [ ##09101003<key^or^not^null^spec> ]
ENG|09101001 | 5|R | }
ENG|0910100101 | 1| | <data type>
ENG|0910100101 | 3| | { CHAR[ACTER] [ (<unsigned integer>) ] [<code spec>]
ENG|0910100101 | 4| | | VARCHAR [ (<unsigned integer>) ] [<code spec>]
ENG|0910100101 | 5| | | LONG [VARCHAR] [<code spec>]
ENG|0910100101 | 6| | | BOOLEAN
ENG|0910100101 | 7| | | FIXED ( <unsigned integer> [,<unsigned integer>] )
ENG|0910100101 | 8| | | FLOAT ( <unsigned integer> )
ENG|0910100101 | 9| | | DATE
ENG|0910100101 | 10| | | TIME
ENG|0910100101 | 11| | | TIMESTAMP
ENG|0910100101 | 12| | }
ENG|0910100101 | 15| | <code spec>
ENG|0910100101 | 17|R | { ASCII | EBCDIC | BYTE }
ENG|0910100102 | 1| | <column attributes>
ENG|0910100102 | 3| I| [ ##09101003<key^or^not^null^spec> ]
ENG|0910100102 | 4| M| [ #01<default^spec> ]
ENG|0910100102 | 5| I| [ ##09101004<constraint^definition> ]
ENG|0910100102 | 6| | [ REFERENCES <referenced table> [ (<column name>) ]
ENG|0910100102 | 7|R | [ UNIQUE ]
ENG|091010010201| 1| | <default spec>
ENG|091010010201| 3| | DEFAULT { <literal>
ENG|091010010201| 4| | | NULL
ENG|091010010201| 5| | | USER
ENG|091010010201| 6| | | USERGROUP
ENG|091010010201| 7| | | DATE
ENG|091010010201| 8| | | TIME
ENG|091010010201| 9| | | TIMESTAMP
ENG|091010010201| 10| | | STAMP
ENG|091010010201| 11| | | TRUE
ENG|091010010201| 12| | | FALSE
ENG|091010010201| 13|R | }
ENG|09101003 | 1| | <key or not null spec>
ENG|09101003 | 3| | { [PRIMARY] KEY
ENG|09101003 | 4| | | NOT NULL [WITH DEFAULT]
ENG|09101003 | 5|R | }
ENG|0910100301 | 1| | <key definition>
ENG|0910100301 | 3|R | PRIMARY KEY ( <column name>,... )
ENG|09101004 | 1| | <constraint definition>
ENG|09101004 | 3| I| { CHECK ##091056<search^condition>
ENG|09101004 | 4| | | CONSTRAINT <search condition>
ENG|09101004 | 5| | | CONSTRAINT <constraint name> CHECK <search condition>
ENG|09101004 | 6| | }
ENG|09101004 | 9| | The <search condition> of the <constraint definition>
ENG|09101004 | 10|R | must not contain a <subquery>.
ENG|09101005 | 1| | <referential constraint definition>
ENG|09101005 | 3| | FOREIGN KEY [ <referential constraint name> ]
ENG|09101005 | 4| | ( <column name>,... )
ENG|09101005 | 5| | REFERENCES <referenced table> [ (<column name>,...) ]
ENG|09101005 | 6|RM| [ #01<delete^rule> ]
ENG|0910100501 | 1| | <delete rule>
ENG|0910100501 | 3| | ON DELETE { RESTRICT
ENG|0910100501 | 4| | | CASCADE
ENG|0910100501 | 5| | | SET DEFAULT
ENG|0910100501 | 6| | | SET NULL
ENG|0910100501 | 7|R | }
ENG|09101006 | 1| | <table option>
ENG|09101006 | 3| | { WITH REPLICATION
ENG|09101006 | 4| | | IGNORE ROLLBACK
ENG|09101006 | 5|R | }
ENG|09101007 | 1| | <duplicates clause>
ENG|09101007 | 3| | { REJECT
ENG|09101007 | 4| | | IGNORE
ENG|09101007 | 5| | | UPDATE
ENG|09101007 | 6|R | } DUPLICATES
ENG|09101008 | 1| | <table description>
ENG|09101008 | 3| I| ( { { <column name> ##0910100101<data^type> ##0910100102<column^attributes>
ENG|09101008 | 4| I| | <column name> <domain name> [ ##09101003<key^or^not^null^spec> ]
ENG|09101008 | 5| | }
ENG|09101008 | 6| I| | ##09101004<constraint^definition>
ENG|09101008 | 7| I| | ##09101005<referential^constraint^definition>
ENG|09101008 | 8| I| | ##0910100301<key^definition>
ENG|09101008 | 9| | | UNIQUE ( <column name>,... )
ENG|09101008 | 10| | } ,...
ENG|09101008 | 11|R | )
ENG|091011 | 1| | <alter table statement>
ENG|091011 | 3| M| { ALTER TABLE <table name> #01<add^definition>
ENG|091011 | 4| M| | ALTER TABLE <table name> #02<drop^definition>
ENG|091011 | 5| M| | ALTER TABLE <table name> #03<alter^definition>
ENG|091011 | 6| I| | ALTER TABLE <table name> ##09101005<referential^constraint^definition>
ENG|091011 | 7| | | ALTER TABLE <table name> DROP FOREIGN KEY
ENG|091011 | 8| | <referential constraint name>
ENG|091011 | 9|R | }
ENG|09101101 | 1| | <add definition>
ENG|09101101 | 3| | { ADD <alter column definition>,...
ENG|09101101 | 4| | | ADD ( <alter column definition>,... )
ENG|09101101 | 5| I| | ADD ##09101004<constraint^definition>
ENG|09101101 | 6| I| | ADD ##0910100301<key^definition>
ENG|09101101 | 7| | | ADD REPLICATION
ENG|09101101 | 8| | }
ENG|09101101 | 11| | <alter column definition>
ENG|09101101 | 13| I| { <column name> ##0910100101<data^type> [ ##09101004<constraint^definition> ]
ENG|09101101 | 14| | | <column name> <domain name>
ENG|09101101 | 15|R | }
ENG|09101102 | 1| | <drop definition>
ENG|09101102 | 3| | { DROP <column name>,... [{ CASCADE | RESTRICT }]
ENG|09101102 | 4| | | DROP ( <column name>,... ) [{ CASCADE | RESTRICT }]
ENG|09101102 | 5| | | DROP CONSTRAINT <constraint name>
ENG|09101102 | 6| | | DROP PRIMARY KEY
ENG|09101102 | 7| | | DROP REPLICATION
ENG|09101102 | 8|R | }
ENG|09101103 | 1| | <alter definition>
ENG|09101103 | 3| I| { COLUMN <column name> { ##0910100101<data^type> | <domain name> }
ENG|09101103 | 4| | | COLUMN <column name> NOT NULL
ENG|09101103 | 5| | | COLUMN <column name> DEFAULT NULL
ENG|09101103 | 6| I| | COLUMN <column name> ADD ##091010010201<default^spec>
ENG|09101103 | 7| | | COLUMN <column name> ALTER <default spec>
ENG|09101103 | 8| | | COLUMN <column name> DROP DEFAULT
ENG|09101103 | 9| I| | ALTER CONSTRAINT <constraint name> CHECK ##091056<search^condition>
ENG|09101103 | 10| I| | ALTER ##0910100301<key^definition>
ENG|09101103 | 11|R | }
ENG|091012 | 1| | <drop table statement>
ENG|091012 | 3|R | DROP TABLE <table name> [{ CASCADE | RESTRICT }]
ENG|091013 | 1| | <create domain statement>
ENG|091013 | 3| | CREATE DOMAIN <domain name>
ENG|091013 | 4| I| ##0910100101<data^type>
ENG|091013 | 5| I| [ ##091010010201<default^spec> ]
ENG|091013 | 6|RI| [ ##09101004<constraint^definition> ]
ENG|091014 | 1| | <drop domain statement>
ENG|091014 | 3|R | DROP DOMAIN <domain name>
ENG|091015 | 1| | <create synonym statement>
ENG|091015 | 3| | CREATE SYNONYM [<owner>.]<synonym name> FOR <table name>
ENG|091015 | 6| | <rename synonym statement>
ENG|091015 | 8| | RENAME SYNONYM <old synonym name> TO <new synonym name>
ENG|091015 | 11| | <drop synonym statement>
ENG|091015 | 13|R | DROP SYNONYM [<owner>.]<synonym name>
ENG|091016 | 1| | <create view statement>
ENG|091016 | 3| | CREATE [OR REPLACE] VIEW <table name> [ ( <column name>,... ) ]
ENG|091016 | 4| I| AS ##09105501<query^expression>
ENG|091016 | 5| | [ WITH CHECK OPTION ]
ENG|091016 | 9| | <drop view statement>
ENG|091016 | 11| | DROP VIEW <table name> [{ CASCADE | RESTRICT }]
ENG|091016 | 15| | <rename view statement>
ENG|091016 | 17|R | RENAME VIEW <old table name> TO <new table name>
ENG|091017 | 1|R | <out of order>
ENG|091018 | 1| | <create index statement>
ENG|091018 | 3| | CREATE [UNIQUE] INDEX
ENG|091018 | 4| | { <table name>.<column name> [{ASC | DESC}]
ENG|091018 | 5| | | <index name> ON <table name> ( <column name> [{ASC | DESC}] ,... )
ENG|091018 | 6| | }
ENG|091018 | 9| | <drop index statement>
ENG|091018 | 11| | DROP INDEX { <index name> [ON <table name>]
ENG|091018 | 12| | | <table name>.<column name>
ENG|091018 | 13|R | }
ENG|091019 | 1| | <rename table statement>
ENG|091019 | 3|R | RENAME TABLE <old table name> TO <new table name>
ENG|091020 | 1| | <rename column statement>
ENG|091020 | 3| | RENAME COLUMN <table name>.<old column name>
ENG|091020 | 4|R | TO <new column name>
ENG|091021 | 1|R | <out of order>
ENG|091022 | 1|R | <out of order>
ENG|091023 | 1| | <exists table statement>
ENG|091023 | 3|R | EXISTS TABLE <table name>
ENG|091024 | 1| | <insert statement>
ENG|091024 | 3| | INSERT [INTO] <table name>
ENG|091024 | 4| | { [ ( <column name>,... ) ] VALUES
ENG|091024 | 5| I| ( { ##091050<expression> | DEFAULT | STAMP } ,... )
ENG|091024 | 6| I| | [ ( <column name>,... ) ] ##09105501<query^expression>
ENG|091024 | 7| I| | SET <column name> = { ##091051<value^spec> | DEFAULT | STAMP }
ENG|091024 | 8| | ,...
ENG|091024 | 9| | }
ENG|091024 | 10|RI| [ ##09101007<duplicates^clause> ]
ENG|091025 | 1| | <update statement>
ENG|091025 | 3| | UPDATE [OF] <table name> [ <reference name> ]
ENG|091025 | 4| | { SET { <column name> =
ENG|091025 | 5| I| { ##091050<expression>
ENG|091025 | 6| I| | ##091055<subquery>
ENG|091025 | 7| | | DEFAULT
ENG|091025 | 8| | | STAMP
ENG|091025 | 9| | }
ENG|091025 | 10| | } [,...]
ENG|091025 | 11| | } ,...
ENG|091025 | 12| | | ( <column name>,... ) VALUES
ENG|091025 | 13| I| ( { ##091051<value^spec> | DEFAULT | STAMP } ,... )
ENG|091025 | 14| | }
ENG|091025 | 15| I| [ KEY ##091058<key^spec>,... ]
ENG|091025 | 16|RI| [ WHERE ##091056<search^condition> ]
ENG|09102501 | 1| | <update statement> with "CURRENT OF"
ENG|09102501 | 3| | UPDATE [OF] <table name> [ <reference name> ]
ENG|09102501 | 4| | { SET { <column name> =
ENG|09102501 | 5| I| { ##091050<expression>
ENG|09102501 | 6| I| | ##091055<subquery>
ENG|09102501 | 7| | | DEFAULT
ENG|09102501 | 8| | | STAMP
ENG|09102501 | 9| | }
ENG|09102501 | 10| | } ,...
ENG|09102501 | 11| | | ( <column name>,... ) VALUES
ENG|09102501 | 12| I| ( { ##091051<value^spec> | DEFAULT | STAMP } ,... )
ENG|09102501 | 13| | }
ENG|09102501 | 14|R | WHERE CURRENT OF <result table name>
ENG|091026 | 1| | <delete statement>
ENG|091026 | 3| | DELETE [FROM] <table name> [<reference name>]
ENG|091026 | 4| I| [ KEY ##091058<key^spec>,... ]
ENG|091026 | 5|RI| [ WHERE ##091056<search^condition> ]
ENG|09102601 | 1| | <delete statement> with "CURRENT OF"
ENG|09102601 | 3| | DELETE [FROM] <table name> [<reference name>]
ENG|09102601 | 4|R | WHERE CURRENT OF <result table name>
ENG|091027 | 1| | <next stamp statement>
ENG|091027 | 3|R | NEXT STAMP [FOR <tablename>] [INTO] <parameter name>
ENG|091028 | 1| | <connect statement>
ENG|091028 | 3| | CONNECT { <parameter name> | <user name> }
ENG|091028 | 4| | IDENTIFIED BY <password spec>
ENG|091028 | 5| | [ SQLMODE { ANSI | DB2 | ORACLE | ADABAS } ]
ENG|091028 | 6| | [ ISOLATION LEVEL { 0 | 1 | 2 | 3 | 10 | 15 | 20 | 30 } ]
ENG|091028 | 7| | [ TIMEOUT <unsigned integer> ]
ENG|091028 | 8| | [ CACHELIMIT <unsigned integer> ]
ENG|091028 | 9|R | [ TERMCHAR SET <termchar set name> ]
ENG|09102801 | 1| | <release statement>
ENG|09102801 | 3| | { COMMIT [ WORK ] RELEASE
ENG|09102801 | 4| | | ROLLBACK [ WORK ] RELEASE
ENG|09102801 | 5|R | }
ENG|091029 | 1| | <commit statement>
ENG|091029 | 3| I| COMMIT [WORK] [KEEP ##09102902<lock^statement>]
ENG|091029 | 6| | <rollback statement>
ENG|091029 | 8|R | ROLLBACK [WORK] [KEEP <lock statement>]
ENG|09102901 | 1| | <subtrans statement>
ENG|09102901 | 3| | SUBTRANS { BEGIN
ENG|09102901 | 4| | | END
ENG|09102901 | 5| | | ROLLBACK
ENG|09102901 | 6|R | }
ENG|09102902 | 1| | <lock statement>
ENG|09102902 | 3| | LOCK [{ (NOWAIT) | (WAIT) }]
ENG|09102902 | 4| M| { #01<lock^spec> IN { SHARE MODE
ENG|09102902 | 5| | | EXCLUSIVE MODE
ENG|09102902 | 6| | | SHARE MODE <lock spec> IN EXCLUSIVE MODE
ENG|09102902 | 7| | }
ENG|09102902 | 8| I| | { ROW <table name> KEY ##091058<key^spec>,...
ENG|09102902 | 9| | | ROW <table name> CURRENT OF <result table name>
ENG|09102902 | 10| | } ... OPTIMISTIC
ENG|09102902 | 11|R | }
ENG|0910290201 | 1| | <lock spec>
ENG|0910290201 | 3| | { TABLE <table name>,...
ENG|0910290201 | 4| I| | { ROW <table name> KEY ##091058<key^spec>,...
ENG|0910290201 | 5| | | ROW <table name> CURRENT OF <result table name>
ENG|0910290201 | 6| | } ...
ENG|0910290201 | 7| | | TABLE <table name>,...
ENG|0910290201 | 8| | { ROW <table name> KEY <key spec>,...
ENG|0910290201 | 9| | | ROW <table name> CURRENT OF <result table name>
ENG|0910290201 | 10| | } ...
ENG|0910290201 | 11|R | }
ENG|09102903 | 1| | <unlock statement>
ENG|09102903 | 3| | UNLOCK <row lock spec>
ENG|09102903 | 4| | { IN
ENG|09102903 | 5| | { SHARE MODE
ENG|09102903 | 6| | | EXCLUSIVE MODE
ENG|09102903 | 7| | | SHARE MODE
ENG|09102903 | 8| | <row lock spec> IN EXCLUSIVE MODE
ENG|09102903 | 9| | }
ENG|09102903 | 10| | | OPTIMISTIC
ENG|09102903 | 11| | }
ENG|09102903 | 14| | <row lock spec>
ENG|09102903 | 16| I| { ROW <table name> KEY ##091058<key^spec>,...
ENG|09102903 | 17| | | ROW <table name> CURRENT OF <result table name>
ENG|09102903 | 18|R | } ...
ENG|091030 | 1| | <create user statement>
ENG|091030 | 3| | CREATE USER
ENG|091030 | 4| | { <user name> PASSWORD <password>
ENG|091030 | 5| | [ STANDARD | DBA | RESOURCE ]
ENG|091030 | 6| | [ PERMLIMIT <unsigned integer> ]
ENG|091030 | 7| | [ TEMPLIMIT <unsigned integer> ]
ENG|091030 | 8| | [ TIMEOUT <unsigned integer> ]
ENG|091030 | 9| | [ COSTWARNING <unsigned integer> ]
ENG|091030 | 10| | [ COSTLIMIT <unsigned integer> ]
ENG|091030 | 11| | [ CACHELIMIT <unsigned integer> ]
ENG|091030 | 12| | [ [NOT] EXCLUSIVE ]
ENG|091030 | 13| | [ AT <serverdb name> ]
ENG|091030 | 14| | | <like user> PASSWORD <password> LIKE <source user>
ENG|091030 | 15| | | <user name> PASSWORD <password> USERGROUP <usergroup name>
ENG|091030 | 16|R | }
ENG|09103001 | 1| | <create usergroup statement>
ENG|09103001 | 3| | CREATE USERGROUP <usergroup name>
ENG|09103001 | 4| | [ STANDARD | RESOURCE ]
ENG|09103001 | 5| | [ PERMLIMIT <unsigned integer> ]
ENG|09103001 | 6| | [ TEMPLIMIT <unsigned integer> ]
ENG|09103001 | 7| | [ TIMEOUT <unsigned integer> ]
ENG|09103001 | 8| | [ COSTWARNING <unsigned integer> ]
ENG|09103001 | 9| | [ COSTLIMIT <unsigned integer> ]
ENG|09103001 | 10| | [ CACHELIMIT <unsigned integer> ]
ENG|09103001 | 11| | [ [NOT] EXCLUSIVE ]
ENG|09103001 | 12|R | [ AT <serverdb name> ]
ENG|09103002 | 1| | <alter user statement>
ENG|09103002 | 3| | ALTER USER <user name>
ENG|09103002 | 4| | [ STANDARD | DBA | RESOURCE ]
ENG|09103002 | 5| | [ PERMLIMIT {<unsigned integer> | NULL} ]
ENG|09103002 | 6| | [ TEMPLIMIT {<unsigned integer> | NULL} ]
ENG|09103002 | 7| | [ TIMEOUT {<unsigned integer> | NULL} ]
ENG|09103002 | 8| | [ COSTWARNING {<unsigned integer> | NULL} ]
ENG|09103002 | 9| | [ COSTLIMIT {<unsigned integer> | NULL} ]
ENG|09103002 | 10| | [ CACHELIMIT {<unsigned integer> | NULL} ]
ENG|09103002 | 11|R | [ [NOT] EXCLUSIVE ]
ENG|0910300201 | 1| | <alter usergroup statement>
ENG|0910300201 | 3| | ALTER USERGROUP <usergroup name>
ENG|0910300201 | 4| | [ STANDARD | RESOURCE ]
ENG|0910300201 | 5| | [ PERMLIMIT {<unsigned integer> | NULL} ]
ENG|0910300201 | 6| | [ TEMPLIMIT {<unsigned integer> | NULL} ]
ENG|0910300201 | 7| | [ TIMEOUT {<unsigned integer> | NULL} ]
ENG|0910300201 | 8| | [ COSTWARNING {<unsigned integer> | NULL} ]
ENG|0910300201 | 9| | [ COSTLIMIT {<unsigned integer> | NULL} ]
ENG|0910300201 | 10| | [ CACHELIMIT {<unsigned integer> | NULL} ]
ENG|0910300201 | 11|R | [ [NOT] EXCLUSIVE ]
ENG|09103003 | 1| | <drop user statement>
ENG|09103003 | 3|R | DROP USER <user name> [{ CASCADE | RESTRICT }]
ENG|09103004 | 1| | <drop usergroup statement>
ENG|09103004 | 3|R | DROP USER <user name> [{ CASCADE | RESTRICT }]
ENG|09103005 | 1| | <alter password statement>
ENG|09103005 | 3| | User : ALTER PASSWORD <old password> TO <new password>
ENG|09103005 | 5|R | SYSDBA: ALTER PASSWORD <user name> <new password>
ENG|09103006 | 1| | <grant user statement>
ENG|09103006 | 3| | GRANT USER { * | <user name>,... }
ENG|09103006 | 4| | [ FROM <user name> ] TO <user name>
ENG|09103006 | 7| | <grant usergroup statement>
ENG|09103006 | 9| | GRANT USERGROUP { * | <usergroup name>,... }
ENG|09103006 | 10|R | [ FROM <user name> ] TO <user name>
ENG|09103007 | 1| | <grant statement>
ENG|09103007 | 3| | GRANT { { ALL [ PRIV[ILEGES] ]
ENG|09103007 | 4| | | { INSERT
ENG|09103007 | 5| | | UPDATE [ (<column name>,...) ]
ENG|09103007 | 6| | | SELECT [ (<column name>,...) ]
ENG|09103007 | 7| | | SELUPD [ (<column name>,...) ]
ENG|09103007 | 8| | | DELETE
ENG|09103007 | 9| | | INDEX
ENG|09103007 | 10| | | ALTER
ENG|09103007 | 11| | | REFERENCES [ (<column name>,...) ]
ENG|09103007 | 12| | } ,...
ENG|09103007 | 13| | } ON [TABLE] <table name>,...
ENG|09103007 | 14| | } ON [TABLE] <table name> [,...]
ENG|09103007 | 15| | } ,...
ENG|09103007 | 16| | TO { PUBLIC
ENG|09103007 | 17| | | <user name>
ENG|09103007 | 18|R | | <usergroup name> } ,... [ WITH GRANT OPTION ]
ENG|09103008 | 1| | <grant statement> (EXECUTE privilege)
ENG|09103008 | 3| | GRANT EXECUTE ON [<owner>.]<program name>.<procedure name>
ENG|09103008 | 4| | TO { PUBLIC
ENG|09103008 | 5| | | <user name>
ENG|09103008 | 6| | | <usergroup name>
ENG|09103008 | 7|R | } ,...
ENG|09103009 | 1| | <revoke statement>
ENG|09103009 | 3| | REVOKE { { ALL [ PRIV[ILEGES] ]
ENG|09103009 | 4| | | { INSERT
ENG|09103009 | 5| | | UPDATE [ (<column name>,...) ]
ENG|09103009 | 6| | | SELECT [ (<column name>,...) ]
ENG|09103009 | 7| | | SELUPD [ (<column name>,...) ]
ENG|09103009 | 8| | | DELETE
ENG|09103009 | 9| | | INDEX
ENG|09103009 | 10| | | ALTER
ENG|09103009 | 11| | | REFERENCES [ (<column name>,...) ]
ENG|09103009 | 12| | } ,...
ENG|09103009 | 13| | } ON [TABLE] <table name>,...
ENG|09103009 | 14| | }
ENG|09103009 | 15| | FROM { PUBLIC
ENG|09103009 | 16| | | <user name>
ENG|09103009 | 17| | | <usergroup name> } ,...
ENG|09103009 | 18|S | [{ CASCADE | RESTRICT }]
ENG|09103009 | 19| | <revoke statement> (EXECUTE privilege)
ENG|09103009 | 21| | REVOKE EXECUTE ON [<owner>.]<program name>.<procedure name>
ENG|09103009 | 22| | FROM { PUBLIC
ENG|09103009 | 23| | | <user name>
ENG|09103009 | 24| | | <usergroup name>
ENG|09103009 | 25|R | } [,...]
ENG|091050 | 1| | <expression>
ENG|091050 | 3| | { <term>
ENG|091050 | 4| | | <expression> + <term>
ENG|091050 | 5| | | <expression> - <term>
ENG|091050 | 6| | }
ENG|091050 | 9| | <term>
ENG|091050 | 11| M| { #01<factor>
ENG|091050 | 12| | | <term> * <factor>
ENG|091050 | 13| | | <term> / <factor>
ENG|091050 | 14| | | <term> DIV <factor>
ENG|091050 | 15| | | <term> MOD <factor>
ENG|091050 | 16|R | }
ENG|09105001 | 1| | <factor>
ENG|09105001 | 3| | { [{+ | -}]
ENG|09105001 | 4| I| ##091051<value^spec>
ENG|09105001 | 5| I| | ##091052<column^spec>
ENG|09105001 | 6| I| | ##091053<function^spec>
ENG|09105001 | 7| I| | ##091054<set^function^spec>
ENG|09105001 | 8| | | ( <expression> )
ENG|09105001 | 9|R | }
ENG|09105002 | 1| | <expression list>
ENG|09105002 | 3|RI| ( ##091050<expression>,... )
ENG|091051 | 1| | <value spec>
ENG|091051 | 3| | { <literal>
ENG|091051 | 4| | | <parameter name> [ <indicator name> ]
ENG|091051 | 5| | | NULL
ENG|091051 | 6| | | USER
ENG|091051 | 7| | | USERGROUP
ENG|091051 | 8| | | LOCALSYSDBA
ENG|091051 | 9| | | SYSDBA [ (<user name>) ]
ENG|091051 | 10| | | SYSDBA [ (<usergroup name>) ]
ENG|091051 | 11| | | DATE
ENG|091051 | 12| | | TIME
ENG|091051 | 13| | | TIMESTAMP
ENG|091051 | 14| | | TIMEZONE
ENG|091051 | 15| | | TRUE
ENG|091051 | 16| | | FALSE
ENG|091051 | 17|R | }
ENG|091052 | 1| | <column spec>
ENG|091052 | 3| | { <column name>
ENG|091052 | 4| | | <table name>.<column name>
ENG|091052 | 5| | | <reference name>.<column name>
ENG|091052 | 6| | | <result table name>.<column name>
ENG|091052 | 7|R | }
ENG|091053 | 1| | <function spec>
ENG|091053 | 3| M| { #01<arithmetic^function>
ENG|091053 | 4| M| | #09<trigonometric^function>
ENG|091053 | 5| M| | #02<string^function>
ENG|091053 | 6| M| | #03<date^function>
ENG|091053 | 7| M| | #04<time^function>
ENG|091053 | 8| M| | #05<extraction^function>
ENG|091053 | 9| M| | #06<special^function>
ENG|091053 | 10| M| | #07<conversion^function>
ENG|091053 | 11| M| | #10<userdefined^function>
ENG|091053 | 12|R | }
ENG|09105301 | 1| | <arithmetic function>
ENG|09105301 | 3| I| { TRUNC ( ##091050<expression> [, <expression>] )
ENG|09105301 | 4| | | ROUND ( <expression> [, <expression>] )
ENG|09105301 | 5| | | NOROUND ( <expression> )
ENG|09105301 | 6| | | FIXED ( <expression> [, <unsigned integer>[, <unsigned integer>] ] )
ENG|09105301 | 7| | | CEIL ( <expression> )
ENG|09105301 | 8| | | FLOOR ( <expression> )
ENG|09105301 | 9| | | SIGN ( <expression> )
ENG|09105301 | 10| | | ABS ( <expression> )
ENG|09105301 | 11| | | POWER ( <expression>, <expression> )
ENG|09105301 | 12| | | EXP ( <expression> )
ENG|09105301 | 13| | | SQRT ( <expression> )
ENG|09105301 | 14| | | LN ( <expression> )
ENG|09105301 | 15| | | LOG ( <expression>, <expression> )
ENG|09105301 | 16| | | PI
ENG|09105301 | 17|S | | LENGTH ( <expression> )
ENG|09105301 | 19| | | INDEX ( <string spec>, <string spec>
ENG|09105301 | 20| | [,<expression>[, <expression>] ] )
ENG|09105301 | 21| | }
ENG|09105301 | 24| | <string spec>
ENG|09105301 | 26| I| ##091050<expression>
ENG|09105301 | 28| | For a <string spec>, only those <expression>s are valid that identify
ENG|09105301 | 29|R | an alphanumeric value as the result.
ENG|09105302 | 1| | <string function>
ENG|09105302 | 3| | { <string spec> || <string spec>
ENG|09105302 | 4| | | <string spec> & <string spec>
ENG|09105302 | 5| I| | SUBSTR ( <string spec>, ##091050<expression> [, <expression>] )
ENG|09105302 | 6| | | LFILL ( <string spec>, <string literal>
ENG|09105302 | 7| | [,<unsigned integer> ] )
ENG|09105302 | 8| | | RFILL ( <string spec>, <string literal>
ENG|09105302 | 9| | [,<unsigned integer> ] )
ENG|09105302 | 10| | | LPAD ( <string spec>, <expression>, <string literal>
ENG|09105302 | 11| | [,<unsigned integer> ] )
ENG|09105302 | 12| | | RPAD ( <string spec>, <expression>, <string literal>
ENG|09105302 | 13| | [,<unsigned integer> ] )
ENG|09105302 | 14| | | TRIM ( <string spec>[, <string spec> ] )
ENG|09105302 | 15| | | LTRIM ( <string spec>[, <string spec> ] )
ENG|09105302 | 16| | | RTRIM ( <string spec>[, <string spec> ] )
ENG|09105302 | 17| | | EXPAND ( <string spec>, <unsigned integer> )
ENG|09105302 | 18|S | | UPPER ( <string spec> )
ENG|09105302 | 19| | | LOWER ( <string spec> )
ENG|09105302 | 20| | | INITCAP ( <string spec> )
ENG|09105302 | 21| | | REPLACE ( <string spec>, <string spec>[, <string spec> ] )
ENG|09105302 | 22| | | TRANSLATE ( <string spec>, <string spec>, <string spec> )
ENG|09105302 | 23| | | MAPCHAR ( <string spec>[, <unsigned integer> ]
ENG|09105302 | 24| | [, <mapchar set name> ] )
ENG|09105302 | 25| | | ALPHA ( <string spec>[, <unsigned integer> ] )
ENG|09105302 | 26| | | ASCII ( <string spec> )
ENG|09105302 | 27| | | EBCDIC ( <string spec> )
ENG|09105302 | 28| | | SOUNDEX ( <string spec> )
ENG|09105302 | 29| | }
ENG|09105302 | 31| | <string spec>
ENG|09105302 | 33| I| ##091050<expression>
ENG|09105302 | 35| | For a <string spec>, only those <expression>s are valid that identify
ENG|09105302 | 36|R | an alphanumeric value as the result.
ENG|09105303 | 1| | <date function>
ENG|09105303 | 3| I| { ADDDATE ( <date or timestamp expression>, ##091050<expression> )
ENG|09105303 | 4| | | SUBDATE ( <date or timestamp expression>, <expression> )
ENG|09105303 | 5| | | DATEDIFF ( <date or timestamp expression>,
ENG|09105303 | 6| | <date or timestamp expression> )
ENG|09105303 | 7| | | DAYOFWEEK ( <date or timestamp expression> )
ENG|09105303 | 8| | | WEEKOFYEAR ( <date or timestamp expression> )
ENG|09105303 | 9| | | DAYOFMONTH ( <date or timestamp expression> )
ENG|09105303 | 10| | | DAYOFYEAR ( <date or timestamp expression> )
ENG|09105303 | 11| | | MAKEDATE ( <expression>, <expression> )
ENG|09105303 | 12| | | DAYNAME ( <date or timestamp expression> )
ENG|09105303 | 13| | | MONTHNAME ( <date or timestamp expression> )
ENG|09105303 | 14|S | }
ENG|09105303 | 19| | <date or timestamp expression>
ENG|09105303 | 21| I| ##091050<expression>
ENG|09105303 | 23| | The <date or timestamp expression> must produce a date value, a
ENG|09105303 | 24| | timestamp value or an alphanumeric value as the result which
ENG|09105303 | 25|R | corresponds to the current date or timestamp format.
ENG|09105304 | 1| | <time function>
ENG|09105304 | 3| | { ADDTIME ( <time or timestamp expression>, <time expression> )
ENG|09105304 | 4| | | SUBTIME ( <time or timestamp expression>, <time expression> )
ENG|09105304 | 5| | | TIMEDIFF ( <time or timestamp expression>,
ENG|09105304 | 6| | <time or timestamp expression> )
ENG|09105304 | 7| | | MAKETIME ( <hours>, <minutes>, <seconds> )
ENG|09105304 | 8| | }
ENG|09105304 | 11| | <time or timestamp expression>
ENG|09105304 | 13| I| ##091050<expression>
ENG|09105304 | 15| | The <time or timestamp expression> must produce a time value, a
ENG|09105304 | 16| | timestamp value or an alphanumeric value as the result which
ENG|09105304 | 17|S | corresponds to the current time or timestamp format.
ENG|09105304 | 19| | <time expression>
ENG|09105304 | 21| I| ##091050<expression>
ENG|09105304 | 23| | The <time expression> must produce a time value or an alphanumeric
ENG|09105304 | 24|R | value as the result which corresponds to the current time format.
ENG|09105305 | 1| | <extraction function>
ENG|09105305 | 3| | { YEAR ( <date or timestamp expression> )
ENG|09105305 | 4| | | MONTH ( <date or timestamp expression> )
ENG|09105305 | 5| | | DAY ( <date or timestamp expression> )
ENG|09105305 | 6| | | HOUR ( <time or timestamp expression> )
ENG|09105305 | 7| | | MINUTE ( <time or timestamp expression> )
ENG|09105305 | 8| | | SECOND ( <time or timestamp expression> )
ENG|09105305 | 9| I| | MICROSECOND ( ##091050<expression> )
ENG|09105305 | 10| | | TIMESTAMP ( <expression> [, <expression> ] )
ENG|09105305 | 11| | | DATE ( <expression> )
ENG|09105305 | 12| | | TIME ( <expression> )
ENG|09105305 | 13| | }
ENG|09105305 | 16| | <date or timestamp expression>
ENG|09105305 | 18|SI| ##091050<expression>
ENG|09105305 | 19| | The <date or timestamp expression> must produce a date value, a
ENG|09105305 | 20| | timestamp value or an alphanumeric value as the result which
ENG|09105305 | 21| | corresponds to the current date or timestamp value.
ENG|09105305 | 24| | <time or timestamp expression>
ENG|09105305 | 26| I| ##091050<expression>
ENG|09105305 | 28| | The <time or timestamp expression> must produce a time value, a
ENG|09105305 | 29| | timestamp value or an alphanumeric value as the result which
ENG|09105305 | 30|R | corresponds to the current time or timestamp format.
ENG|09105306 | 1| | <special function>
ENG|09105306 | 3| I| { VALUE ( ##091050<expression>, <expression>,... )
ENG|09105306 | 4| | | GREATEST ( <expression>, <expression>,... )
ENG|09105306 | 5| | | LEAST ( <expression>, <expression>,... )
ENG|09105306 | 6| | | DECODE ( <expression>, <expression>,... )
ENG|09105306 | 7|R | }
ENG|09105307 | 1| | <conversion function>
ENG|09105307 | 3| I| { NUM ( ##091050<expression> )
ENG|09105307 | 4| | | CHR ( <expression>[, <unsigned integer> ] )
ENG|09105307 | 5| | | HEX ( <expression> )
ENG|09105307 | 6| | | CHAR ( <expression>[, <datetimeformat> ] )
ENG|09105307 | 7| | }
ENG|09105307 | 10| | <datetimeformat>
ENG|09105307 | 12| | { EUR
ENG|09105307 | 13| | | INTERNAL
ENG|09105307 | 14| | | ISO
ENG|09105307 | 15| | | JIS
ENG|09105307 | 16| | | USA
ENG|09105307 | 17|R | }
ENG|09105309 | 1| | <trigonometric function>
ENG|09105309 | 3| I| { COS ( ##091050<expression> )
ENG|09105309 | 4| | | SIN ( <expression> )
ENG|09105309 | 5| | | TAN ( <expression> )
ENG|09105309 | 6| | | COT ( <expression> )
ENG|09105309 | 7| | | COSH ( <expression> )
ENG|09105309 | 8| | | SINH ( <expression> )
ENG|09105309 | 9| | | TANH ( <expression> )
ENG|09105309 | 10| | | ACOS ( <expression> )
ENG|09105309 | 11| | | ASIN ( <expression> )
ENG|09105309 | 12| | | ATAN ( <expression> )
ENG|09105309 | 13| | | ATAN2 ( <expression>, <expression> )
ENG|09105309 | 14| | | RADIANS ( <expression> )
ENG|09105309 | 15| | | DEGREES ( <expression> )
ENG|09105309 | 16|R | }
ENG|09105310 | 1| | <userdefined function>
ENG|09105310 | 3|R | Every DB function defined by any user.
ENG|091054 | 1| | <set function spec>
ENG|091054 | 3| | { COUNT (*)
ENG|091054 | 4| I| | COUNT ( [{ALL | DISTINCT}] ##091050<expression> )
ENG|091054 | 5| | | MAX ( [{ALL | DISTINCT}] <expression> )
ENG|091054 | 6| | | MIN ( [{ALL | DISTINCT}] <expression> )
ENG|091054 | 7| | | SUM ( [{ALL | DISTINCT}] <expression> )
ENG|091054 | 8| | | AVG ( [{ALL | DISTINCT}] <expression> )
ENG|091054 | 9| | | STDDEV ( [{ALL | DISTINCT}] <expression> )
ENG|091054 | 10| | | VARIANCE ( [{ALL | DISTINCT}] <expression> )
ENG|091054 | 11|R | }
ENG|091055 | 1| | <subquery>
ENG|091055 | 3|RM| ( #01<query^expression> )
ENG|09105501 | 1| | <query expression>
ENG|09105501 | 3| | { <query term>
ENG|09105501 | 4| | | <query expression> UNION [ALL] <query term>
ENG|09105501 | 5| | | <query expression> EXCEPT [ALL] <query term>
ENG|09105501 | 6| | }
ENG|09105501 | 9| | <query term>
ENG|09105501 | 11| M| { #01<query^primary>
ENG|09105501 | 12| | | <query term> INTERSECT [ALL] <query primary>
ENG|09105501 | 13|R | }
ENG|0910550101 | 1| | <query primary>
ENG|0910550101 | 3| I| { ##0910550102<query^spec>
ENG|0910550101 | 4| | | ( <query expression> )
ENG|0910550101 | 5|R | }
ENG|0910550102 | 1| | <query spec>
ENG|0910550102 | 3| I| SELECT [{ALL | DISTINCT}] ##09100101<select^column>,...
ENG|0910550102 | 4| I| ##09100103<from^clause>
ENG|0910550102 | 5| I| [ ##09100104<where^clause> ]
ENG|0910550102 | 6| I| [ ##09100105<group^clause> ]
ENG|0910550102 | 7|RI| [ ##09100106<having^clause> ]
ENG|09105502 | 1| | <named query expression>
ENG|09105502 | 3| | { <named query term>
ENG|09105502 | 4| | | <named query expression> UNION [ALL] <query term>
ENG|09105502 | 5| | | <named query expression> EXCEPT [ALL] <query term>
ENG|09105502 | 6| | }
ENG|09105502 | 9| | <named query term>
ENG|09105502 | 11| M| { #01<named^query^primary>
ENG|09105502 | 12| | | <named query term> INTERSECT [ALL] <query primary>
ENG|09105502 | 13|R | }
ENG|0910550201 | 1| | <named query primary>
ENG|0910550201 | 3| I| { ##0910550202<named^query^spec>
ENG|0910550201 | 4| | | ( <named query expression> )
ENG|0910550201 | 5|R | }
ENG|0910550202 | 1| | <named query spec>
ENG|0910550202 | 3| I| SELECT [{ALL | DISTINCT}] <result table name> ( ##09100101<select^column>,... )
ENG|0910550202 | 4| I| ##09100103<from^clause>
ENG|0910550202 | 5| I| [ ##09100104<where^clause> ]
ENG|0910550202 | 6| I| [ ##09100105<group^clause> ]
ENG|0910550202 | 7|RI| [ ##09100106<having^clause> ]
ENG|091056 | 1| | <search condition>
ENG|091056 | 3| | { <boolean term>
ENG|091056 | 4| | | <search condition> OR <boolean term>
ENG|091056 | 5| | }
ENG|091056 | 8| | <boolean term>
ENG|091056 | 10| | { <boolean factor>
ENG|091056 | 11| | | <boolean term> AND <boolean factor>
ENG|091056 | 12| | }
ENG|091056 | 15| | <boolean factor>
ENG|091056 | 17|RM| [NOT] #01<boolean^primary>
ENG|09105601 | 1| | <boolean primary>
ENG|09105601 | 3| I| { ##091057<predicate>
ENG|09105601 | 4| I| | ( ##091056<search^condition> )
ENG|09105601 | 5|R | }
ENG|091057 | 1| | <predicate>
ENG|091057 | 3| M| { #01<between^predicate>
ENG|091057 | 4| M| | #12<bool^predicate>
ENG|091057 | 5| M| | #02<comparison^predicate>
ENG|091057 | 6| M| | #03<default^predicate>
ENG|091057 | 7| M| | #04<exists^predicate>
ENG|091057 | 8| M| | #05<in^predicate>
ENG|091057 | 9| M| | #06<join^predicate>
ENG|091057 | 10| M| | #07<like^predicate>
ENG|091057 | 11| M| | #08<null^predicate>
ENG|091057 | 12| M| | #09<quantified^predicate>
ENG|091057 | 13| M| | #10<rowno^predicate>
ENG|091057 | 14| M| | #11<sounds^predicate>
ENG|091057 | 15|R | }
ENG|09105701 | 1| | <between predicate>
ENG|09105701 | 3|RI| ##091050<expression> [NOT] BETWEEN <expression> AND <expression>
ENG|09105702 | 1| | <comparison predicate>
ENG|09105702 | 3| I| { ##091050<expression> ##0910570201<comp^op> <expression>
ENG|09105702 | 4| I| | <expression> <comp op> ##091055<subquery>
ENG|09105702 | 5| I| | ##09105002<expression^list> ##0910570202<equal^or^not> ( <expression list> )
ENG|09105702 | 6| | | <expression list> <equal or not> <subquery>
ENG|09105702 | 7|R | }
ENG|0910570201 | 1| | <comp op>
ENG|0910570201 | 3| | { <
ENG|0910570201 | 4| | | >
ENG|0910570201 | 5| | | <>
ENG|0910570201 | 6| | | !=
ENG|0910570201 | 7| | | =
ENG|0910570201 | 8| | | <=
ENG|0910570201 | 9| | | >=
ENG|0910570201 | 10| | | ¼=
ENG|0910570201 | 11| | | ¼<
ENG|0910570201 | 12| | | ¼>
ENG|0910570201 | 13| | }
ENG|0910570201 | 15|R | ¼ and ! correspond to the logical negation.
ENG|09105703 | 1| | <default predicate>
ENG|09105703 | 3|RI| ##091052<column^spec> ##0910570201<comp^op> DEFAULT
ENG|09105704 | 1| | <exists predicate>
ENG|09105704 | 3|RI| EXISTS ##091055<subquery>
ENG|09105705 | 1| | <in predicate>
ENG|09105705 | 3| I| { ##091050<expression> [NOT] IN ##091055<subquery>
ENG|09105705 | 4| | | <expression> [NOT] IN ( <expression>,... )
ENG|09105705 | 5| I| | ##09105002<expression^list> [NOT] IN <subquery>
ENG|09105705 | 6| | | <expression list> [NOT] IN ( <expression list>,... )
ENG|09105705 | 7|R | }
ENG|09105706 | 1| | <join predicate>
ENG|09105706 | 3| I| ##091050<expression> [ (+) ]
ENG|09105706 | 4| I| ##0910570201<comp^op>
ENG|09105706 | 5|R | <expression> [ (+) ]
ENG|09105707 | 1| | <like predicate>
ENG|09105707 | 3| I| ##091050<expression> [NOT] LIKE { <expression> | '<pattern element>...' }
ENG|09105707 | 4| | [ESCAPE <expression>]
ENG|09105707 | 6| | <pattern element>...
ENG|09105707 | 8| | { <Any character except %, *, X'1F', underscore, ?, X'1E', (>
ENG|09105707 | 9| | | { % | * | X'1F' }
ENG|09105707 | 10| | | { underscore | ? | X'1E' }
ENG|09105707 | 11| | | ( [{~ | ¼}] { <match element> - <match element>
ENG|09105707 | 12| | | <match element> } ...
ENG|09105707 | 13| | )
ENG|09105707 | 14| | } ...
ENG|09105707 | 16| | <match element>
ENG|09105707 | 18|R | <Any character except )>
ENG|09105708 | 1| | <null predicate>
ENG|09105708 | 3|RI| ##091050<expression> IS [NOT] NULL
ENG|09105709 | 1| | <quantified predicate>
ENG|09105709 | 3| I| ##091050<expression> ##0910570201<comp^op> <quantifier> ##091055<subquery>
ENG|09105709 | 4| | | <expression> <comp op> <quantifier> ( <expression>,... )
ENG|09105709 | 5| I| | ##09105002<expression^list> ##0910570202<equal^or^not>
ENG|09105709 | 6| | <quantifier> ( <expression list>,... )
ENG|09105709 | 7| | | <expression list> <equal or not> <quantifier> <subquery>
ENG|09105709 | 10| | <quantifier>
ENG|09105709 | 12| | { ALL
ENG|09105709 | 13| | | ANY
ENG|09105709 | 14| | | SOME
ENG|09105709 | 15|R | }
ENG|09105710 | 1| | <rowno predicate>
ENG|09105710 | 3| | { ROWNO < { <unsigned integer> | <parameter name> }
ENG|09105710 | 4| | | ROWNO <= { <unsigned integer> | <parameter name> }
ENG|09105710 | 5|R | }
ENG|09105711 | 1| | <sounds predicate>
ENG|09105711 | 3|RI| ##091050<expression> [NOT] SOUNDS [LIKE] <expression>
ENG|09105712 | 1| | <bool predicate>
ENG|09105712 | 3|RI| ##091052<column^spec> [ IS [NOT] { TRUE | FALSE } ]
ENG|091058 | 1| | <key spec>
ENG|091058 | 3|RI| <column name> = ##091051<value^spec>
ENG|091059 | 1| | <query statement>
ENG|091059 | 3| I| { ##091002<declare^cursor^statement>
ENG|091059 | 4| I| | ##09100110<named^select^statement>
ENG|091059 | 5| I| | ##091001<select^statement>
ENG|091059 | 6|R | }
ENG|091061 | 1| | <refresh statement>
ENG|091061 | 3|R | REFRESH SNAPSHOT <table name> [COMPLETE]
ENG|091062 | 1| | <clear snapshot log statement>
ENG|091062 | 3|R | CLEAR SNAPSHOT LOG ON <table name>
ENG|091063 | 1| | <create snapshot statement>
ENG|091063 | 3| | CREATE SNAPSHOT <table name> [ (<alias name>,...) ]
ENG|091063 | 4| I| AS ##09105501<query^expression>
ENG|091063 | 7| | <drop snapshot statement>
ENG|091063 | 9|R | DROP SNAPSHOT <table name>
ENG|091064 | 1| | <create snapshot log statement>
ENG|091064 | 3| | CREATE SNAPSHOT LOG ON <table name>
ENG|091064 | 6| | <drop snapshot log statement>
ENG|091064 | 8|R | DROP SNAPSHOT LOG ON <table name>
ENG|091065 | 1| | <comment on statement>
ENG|091065 | 3| | COMMENT ON
ENG|091065 | 4| | { COLUMN <table name>.<column name>
ENG|091065 | 5| | | DBPROC <db procedure>
ENG|091065 | 6| | | DOMAIN <domain name>
ENG|091065 | 7| | | INDEX <index name> ON <table name>
ENG|091065 | 8| | | INDEX <table name>.<column name>
ENG|091065 | 9| | | TABLE <table name>
ENG|091065 | 10| | | TRIGGER <trigger name> ON <table name>
ENG|091065 | 11| | | USER <user name>
ENG|091065 | 12| | | <parameter name>
ENG|091065 | 13|R | } IS {<string literal> | <parameter name>}
ENG|091066 | 1| | <update statistics statement>
ENG|091066 | 3| | UPDATE STAT[ISTICS]
ENG|091066 | 4| | { COLUMN <table name>.<column name>
ENG|091066 | 5| | | COLUMN (<column name>,...) FOR <table name>
ENG|091066 | 6| | | [<owner>.]<table name>
ENG|091066 | 7| | | [<owner>.][<identifier>]*
ENG|091066 | 8|R | }
ENG|091067 | 1| | <monitor statement>
ENG|091067 | 3| | MONITOR
ENG|091067 | 4| | { ON
ENG|091067 | 5| | | OFF
ENG|091067 | 6|R | }
ENG|091068 | 1| | <sql statement>
ENG|091068 | 3| I| { ##091010<create^table^statement>
ENG|091068 | 4| I| | ##091012<drop^table^statement>
ENG|091068 | 5| I| | ##091011<alter^table^statement>
ENG|091068 | 6| I| | ##091019<rename^table^statement>
ENG|091068 | 7| I| | ##091020<rename^column^statement>
ENG|091068 | 8| I| | ##091023<exists^table^statement>
ENG|091068 | 9| I| | ##091013<create^domain^statement>
ENG|091068 | 10| I| | ##091014<drop^domain^statement>
ENG|091068 | 11| I| | ##091015<create^synonym^statement>
ENG|091068 | 12| I| | ##091015<drop^synonym^statement>
ENG|091068 | 13| I| | ##091015<rename^synonym^statement>
ENG|091068 | 14| I| | ##091063<create^snapshot^statement>
ENG|091068 | 15| I| | ##091063<drop^snapshot^statement>
ENG|091068 | 16| I| | ##091064<create^snapshot^log^statement>
ENG|091068 | 17| I| | ##091064<drop^snapshot^log^statement>
ENG|091068 | 18|SI| | ##091016<create^view^statement>
ENG|091068 | 19| I| | ##091016<drop^view^statement>
ENG|091068 | 20| I| | ##091016<rename^view^statement>
ENG|091068 | 21| I| | ##091018<create^index^statement>
ENG|091068 | 22| I| | ##091018<drop^index^statement>
ENG|091068 | 23| I| | ##091065<comment^on^statement>
ENG|091068 | 24| I| | ##091030<create^user^statement>
ENG|091068 | 25| I| | ##09103001<create^usergroup^statement>
ENG|091068 | 26| I| | ##09103003<drop^user^statement>
ENG|091068 | 27| I| | ##09103004<drop^usergroup^statement>
ENG|091068 | 28| I| | ##09103002<alter^user^statement>
ENG|091068 | 29| I| | ##0910300201<alter^usergroup^statement>
ENG|091068 | 30| I| | ##09103006<grant^user^statement>
ENG|091068 | 31| I| | ##09103006<grant^usergroup^statement>
ENG|091068 | 32| I| | ##09103005<alter^password^statement>
ENG|091068 | 33| I| | ##09103007<grant^statement>
ENG|091068 | 34| I| | ##09103008<grant^statement>EXECUTE-Privileg^
ENG|091068 | 35| I| | ##09103009<revoke^statement>
ENG|091068 | 36|SI| | ##09103009<revoke^statement>EXECUTE-Privileg
ENG|091068 | 37| I| | ##091024<insert^statement>
ENG|091068 | 38| I| | ##091025<update^statement>
ENG|091068 | 39| I| | ##09102501<update^statement>mit^"CURRENT^OF"
ENG|091068 | 40| I| | ##091026<delete^statement>
ENG|091068 | 41| I| | ##09102601<delete^statement>mit^"CURRENT^OF"
ENG|091068 | 42| I| | ##091061<refresh^statement>
ENG|091068 | 43| I| | ##091062<clear^snapshot^log^statement>
ENG|091068 | 44| I| | ##091027<next^stamp^statement>
ENG|091068 | 45| I| | ##091059<query^statement>
ENG|091068 | 46| I| | ##091002<open^cursor^statement>
ENG|091068 | 47| I| | ##091003<fetch^statement>
ENG|091068 | 48| I| | ##091002<close^statement>
ENG|091068 | 49| I| | ##09100111<single^select^statement>
ENG|091068 | 50| I| | ##091004<select^direct^statement:^searched>
ENG|091068 | 51| I| | ##091005<select^direct^statement:^positioned>
ENG|091068 | 52| I| | ##091006<select^ordered^statement:^searched>
ENG|091068 | 53| I| | ##091007<select^ordered^statement:^positioned>
ENG|091068 | 54|SI| | ##091008<explain^statement>
ENG|091068 | 55| I| | ##091028<connect^statement>
ENG|091068 | 56| I| | ##091029<commit^statement>
ENG|091068 | 57| I| | ##091029<rollback^statement>
ENG|091068 | 58| I| | ##09102901<subtrans^statement>
ENG|091068 | 59| I| | ##09102902<lock^statement>
ENG|091068 | 60| I| | ##09102903<unlock^statement>
ENG|091068 | 61| I| | ##09102801<release^statement>
ENG|091068 | 62| I| | ##091066<update^statistics^statement>
ENG|091068 | 63| I| | ##091067<monitor^statement>
ENG|091068 | 64|R | }
ENG|0911 | 1| | Statistics, Monitoring
ENG|0911 | 2| | -----------------------
ENG|0911 | 4| M| #01Updating^the^Statistics^for^the^Optimizer
ENG|0911 | 5|RM| #02Monitoring
ENG|091101 | 1| | Updating the Statistics for the Optimizer
ENG|091101 | 3| I| The ##091066<update^statistics^statement> defines the storage requirements of
ENG|091101 | 4| | tables and indexes as well as the value distribution of indexes and
ENG|091101 | 5| | columns, and stores this information in the catalog. These values are
ENG|091101 | 6| | used by the ADABAS optimizer to optimize SQL statements. The values can
ENG|091101 | 7| | be retrieved by selecting the system table DOMAIN.OPTIMIZERSTATISTICS.
ENG|091101 | 9| | The <update statistics statement> implicitly performs a
ENG|091101 | 10| I| ##091029<commit^statement> for each base table; i.e., the transaction within
ENG|091101 | 11|S | which the <update statistics statement> has been executed is closed.
ENG|091101 | 19| | The examples require the update of the statistical values for a column
ENG|091101 | 20| | (zip of the table city), for a particular table (city) and for all
ENG|091101 | 21| | tables of the user SQLTRAVEL00. By UPDATE STATISTICS *, the SYSDBA can
ENG|091101 | 22| | achieve that the <update statistics statement> is performed for all
ENG|091101 | 23| | base tables of his HOME SERVERDB. The SYSDBA does not need a privilege
ENG|091101 | 24| | for the particular table.
ENG|091101 | 26| | UPDATE STATISTICS COLUMN city.zip
ENG|091101 | 27| E|
ENG|091101 | 28| E| UPDATE STAT city
ENG|091101 | 29| E|
ENG|091101 | 30| | UPDATE STAT sqltravel00.*
ENG|091101 | 32|RI| ##091066Syntax
ENG|091102 | 1| | Monitoring
ENG|091102 | 3| I| The ##091067<monitor^statement> enables or disables the database monitoring and
ENG|091102 | 4| | initializes the counters used with 0.
ENG|091102 | 6| | If MONITOR ON is specified, all counters of internal ADABAS events are
ENG|091102 | 7| | initialized with 0.
ENG|091102 | 9| | MONITOR OFF disables the counters, but does not reset them.
ENG|091102 | 11| | MONITOR ON
ENG|091102 | 12| E|
ENG|091102 | 13| E| MONITOR OFF
ENG|091102 | 14| E|
ENG|091102 | 15|RI| ##091067Syntax
ENG|0912 | 1| | System Tables
ENG|0912 | 2| | --------------
ENG|0912 | 4| | Information About
ENG|0912 | 5| M| #01General Items
ENG|0912 | 6| M| #02Tables #03Columns
ENG|0912 | 7| M| #04View^Tables #05Snapshot^Tables
ENG|0912 | 8| M| #06Synonyms #07Domains
ENG|0912 | 9| M| #08Constraints #09Referential^Constraint^Definitions
ENG|0912 | 10| M| #10Indexes #14Users
ENG|0912 | 11| M| #15DB^Procedures #16DB^Functions
ENG|0912 | 12| M| #17Triggers #18Charsets
ENG|0912 | 13| M| #22Miscellaneous
ENG|0912 | 14| M| #26Statistics
ENG|0912 | 15| M| #27Monitoring
ENG|0912 | 16|RM| #30Objects^of^the^Components
ENG|091201 | 1| | General Items
ENG|091201 | 3| | The system tables inform about the database objects and their
ENG|091201 | 4| | relationships and the objects of the ADABAS components.
ENG|091201 | 6| | The system tables belong to the user 'DOMAIN'. In all SQLMODEs other
ENG|091201 | 7| | than ADABAS, the name of the user 'DOMAIN' must be placed in front of
ENG|091201 | 8| | the name of the system table.
ENG|091201 | 10| | In the following, the names of the tables and a short description of
ENG|091201 | 11| | their contents are listed for the specified objects. The definitions of
ENG|091201 | 12|R | the tables can be retrieved by selecting the table COLUMNS.
ENG|091202 | 1| | Tables
ENG|091202 | 4| | TABLES All tables for which the current user has privileges
ENG|091202 | 6| | TAB_CONT_COL Relationship Table Contains Column
ENG|091202 | 8| | TAB_CONT_TRG Relationship Table Contains Trigger
ENG|091202 | 10| | TAB_USES_CON Relationship Table Uses Constraint
ENG|091202 | 12|R | USR_USES_TAB Relationship User Uses Table
ENG|091203 | 1| | Columns
ENG|091203 | 4| | COLUMNS All columns for which the current user has
ENG|091203 | 5| | privileges
ENG|091203 | 7| | COL_REFS_DOM Relationship Column Refers to Domain
ENG|091203 | 9| | COL_USES_COL Relationship Column Uses Column
ENG|091203 | 11| | TAB_CONT_COL Relationship Table Contains Column
ENG|091203 | 13|R | USR_USES_COL Relationship User Uses Column
ENG|091204 | 1| | View Tables
ENG|091204 | 4| | VIEWDEFS Definition of a view for which the current user has
ENG|091204 | 5| | privileges
ENG|091204 | 7| | VIEWS All view tables for which the current user has
ENG|091204 | 8| | privileges
ENG|091204 | 10| | VIE_CONT_COL Relationship View Contains Column
ENG|091204 | 12| | VIE_USES_SNP Relationship View Uses Snapshot
ENG|091204 | 14| | VIE_USES_SYN Relationship View Uses Synonym
ENG|091204 | 16| | VIE_USES_TAB Relationship View Uses Table
ENG|091204 | 18|R | VIE_USES_VIE Relationship View Uses View
ENG|091205 | 1| | Snapshot Tables
ENG|091205 | 4| | SNAPSHOTDEFS Definition of a snapshot table for which the current
ENG|091205 | 5| | user has privileges
ENG|091205 | 7| | SNAPSHOTS All snapshot tables for which the current user has
ENG|091205 | 8| | privileges
ENG|091205 | 10| | SNP_CONT_COL Relationship Snapshot Contains Column
ENG|091205 | 12| | SNP_USES_SYN Relationship Snapshot Uses Synonym
ENG|091205 | 14| | SNP_USES_TAB Relationship Snapshot Uses Table
ENG|091205 | 16|R | SNP_USES_VIE Relationship Snapshot Uses View
ENG|091206 | 1| | Synonyms
ENG|091206 | 4| | SYNONYMS All synonyms for which the current user has
ENG|091206 | 5| | privileges
ENG|091206 | 7|R | SYN_REFS_TAB Relationship Synonym Refers to Table
ENG|091207 | 1| | Domains
ENG|091207 | 4| | DOMAINCONSTRAINTS <constraint definition> for a domain
ENG|091207 | 6| | DOMAINS All domains
ENG|091207 | 8| | USR_OWNS_DOM Relationship User Owns Domain
ENG|091207 | 10|R | COL_REFS_DOM Relationship Column Refers to Domain
ENG|091208 | 1| | Constraints
ENG|091208 | 4| | CONSTRAINTS <constraint definition> for a table for which the
ENG|091208 | 5| | current user has privileges
ENG|091208 | 7| | DOMAINCONSTRAINTS <constraint definition> for a domain
ENG|091208 | 9|R | TAB_USES_CON Relationship Table Uses Constraint
ENG|091209 | 1| | Referential Constraint Definitions
ENG|091209 | 4| | FOREIGNKEYS All <referential constraint definition>s for which
ENG|091209 | 5| | the current user has privileges
ENG|091209 | 7| | FKC_REFS_COL Relationship Foreign Key Column Refers to Column
ENG|091209 | 8| | (foreign key)
ENG|091209 | 10| | FOK_REFS_TAB Relationship Foreign Key Refers to Table
ENG|091209 | 12|R | FOK_USES_COL Relationship Foreign Key Uses Column
ENG|091210 | 1| | Indexes
ENG|091210 | 4| | INDEXES All indexes for which the current user has
ENG|091210 | 5| | privileges
ENG|091210 | 7|R | IND_USES_COL Relationship Index Uses Column
ENG|091214 | 1| | Users
ENG|091214 | 4| | USERS All users
ENG|091214 | 6| | CONNECTEDUSERS All connected users
ENG|091214 | 8| | CONNECTPARAMETERS Information about session-specific parameters
ENG|091214 | 10| | USR_OWNS_DBF Relationship User Owns DB Function
ENG|091214 | 12| | USR_OWNS_DOM Relationship User Owns Domain
ENG|091214 | 14| | USR_OWNS_USR Relationship User Owns User
ENG|091214 | 16| | USR_USES_COL Relationship User Uses Column
ENG|091214 | 18|S | USR_USES_DBP Relationship User Uses DB Procedure
ENG|091214 | 19| | USR_USES_PRO Relationship User Uses Program
ENG|091214 | 21| | USR_USES_QCM Relationship User Uses QUERY Command
ENG|091214 | 23| | USR_USES_QPC Relationship User Uses QueryPlus Command
ENG|091214 | 25| | USR_USES_QPE Relationship User Uses QueryPlus ExcelLink
ENG|091214 | 27| | USR_USES_QPQ Relationship User Uses QueryPlus Query
ENG|091214 | 29| | USR_USES_QPW Relationship User Uses QueryPlus WordLink
ENG|091214 | 31|R | USR_USES_TAB Relationship User Uses Table
ENG|091215 | 1| | DB Procedures
ENG|091215 | 4| | DBPROCEDURES All DB Procedures for which the current user has
ENG|091215 | 5| | privileges
ENG|091215 | 7| | DBPROCPARAMS All parameters of a DB procedure for which the
ENG|091215 | 8| | current user has privileges
ENG|091215 | 10| | DBP_CONT_PRM Relationship DB Procedure Contains Parameter
ENG|091215 | 12| | DBP_REFS_MOD Relationship DB Procedure Refers to Module
ENG|091215 | 14|R | USR_USES_DBP Relationship User Uses DB Procedure
ENG|091216 | 1| | DB Functions
ENG|091216 | 4| | DBFUNCPARAMS All parameters of a DB function for which the
ENG|091216 | 5| | current user has privileges
ENG|091216 | 7| | DBFUNCTIONS All DB functions for which the current user has
ENG|091216 | 8| | privileges
ENG|091216 | 10| | USR_OWNS_DBF Relationship User Owns DB Function
ENG|091216 | 12| | DBF_CONT_PRM Relationship DB Function Contains Parameter
ENG|091216 | 14|R | DBF_REFS_MOD Relationship DB Function Refers to Module
ENG|091217 | 1| | Triggers
ENG|091217 | 4| | TRIGGERS All triggers for which the current user has
ENG|091217 | 5| | privileges
ENG|091217 | 7| | TRIGGERPARAMS All parameters of a trigger for which the current
ENG|091217 | 8| | user has privileges
ENG|091217 | 10| | TRG_CONT_PRM Relationship Trigger Contains Parameter
ENG|091217 | 12|R | TRG_REFS_MOD Relationship Trigger Refers to Module
ENG|091218 | 1| | Charsets
ENG|091218 | 4| | TERMCHARSETS All terminal character sets
ENG|091218 | 6|R | MAPCHARSETS All MAPCHAR SETs
ENG|091222 | 1| | Miscellaneous
ENG|091222 | 4| | SERVERDBS All SERVERDBs
ENG|091222 | 6| | VERSIONS Version
ENG|091222 | 8| | SEQUENCES All sequences for which the current user has
ENG|091222 | 9|R | privileges
ENG|091226 | 1| | Statistics
ENG|091226 | 4| | CONFIGURATION and
ENG|091226 | 5| | DBPARAMETERS Installation parameters
ENG|091226 | 7| | SERVERDBSTATISTICS usage level of the SERVERDB and the log
ENG|091226 | 9| | DATADEVSPACES usage level of the data DEVSPACEs
ENG|091226 | 11| | USERSTATISTICS Storage requirements per user
ENG|091226 | 13| | TRANSACTIONS Active transactions
ENG|091226 | 15| | LOCKLISTSTATISTICS Size and usage level of the lock list
ENG|091226 | 17| | LOCKSTATISTICS Held and requested locks; i.e., the contents of the
ENG|091226 | 18|S | lock list
ENG|091226 | 19| | TABLESTATISTICS Sizes and storage structures of base tables
ENG|091226 | 21| | OPTIMIZERSTATISTICS Statistical values for tables stored in the catalog
ENG|091226 | 23|R | INDEXSTATISTICS Structure and sizes of indexes
ENG|091227 | 1| | Monitoring
ENG|091227 | 4| | MONITOR_CACHES Operations on the ADABAS Caches
ENG|091227 | 6| | MONITOR_LOAD Executed SQL statements and access methods used
ENG|091227 | 7| | methoden
ENG|091227 | 9| | MONITOR_LOCK Operations of the ADABAS lock list
ENG|091227 | 11| | MONITOR_LOG Operations of the ADABAS Logging
ENG|091227 | 13| | MONITOR-PAGES Accesses to pages of data and administrative
ENG|091227 | 14| | information
ENG|091227 | 16|S | MONITOR_ROW Operations on row level
ENG|091227 | 19| | MONITOR_SERVERDB Information about special processes used for a
ENG|091227 | 20| | distributed database
ENG|091227 | 22| | MONITOR_TRANS Information about transactions
ENG|091227 | 24|R | MONITOR_VTRACE Information about vtrace output
ENG|091230 | 1| | Objects of the Components
ENG|091230 | 2| | -----------------------
ENG|091230 | 4| M| #01Programs
ENG|091230 | 5| M| #02Modules
ENG|091230 | 6| M| #03Query^Commands
ENG|091230 | 7| M| #04QueryPlus^Commands
ENG|091230 | 8| M| #05QueryPlus^Queries
ENG|091230 | 9| M| #06QueryPlus^ExcelLinks
ENG|091230 | 10| M| #07QueryPlus^WordLinks
ENG|091230 | 11| M| #08Easy^Commands
ENG|091230 | 12|RM| #09Easy^Forms
ENG|09123001 | 1| | Programs
ENG|09123001 | 4| | PROGRAMS All programs for which the current user has
ENG|09123001 | 5| | privileges
ENG|09123001 | 7| | PRO_CONT_MOD Relationship Program Contains Module
ENG|09123001 | 9|R | USR_USES_PRO Relationship User Uses Program
ENG|09123002 | 1| | Modules
ENG|09123002 | 4| | MODULES All modules for which the current user has
ENG|09123002 | 5| | privileges
ENG|09123002 | 7| | MOD_CALL_DBP Relationship Module Calls DB Procedure
ENG|09123002 | 9| | MOD_CALL_MOD Relationship Module Calls Module
ENG|09123002 | 11| | MOD_USES_COL Relationship Module Uses Column
ENG|09123002 | 13| | MOD_USES_DOM Relationship Module Uses Domain
ENG|09123002 | 15| | MOD_USES_QCM Relationship Module Uses QUERY Command
ENG|09123002 | 17|S | MOD_USES_SNP Relationship Module Uses Snapshot
ENG|09123002 | 19| | MOD_USES_SYN Relationship Module Uses Synonym
ENG|09123002 | 21| | MOD_USES_TAB Relationship Module Uses Table
ENG|09123002 | 23| | MOD_USES_VIE Relationship Module Uses View
ENG|09123002 | 25| | DBF_REFS_MOD Relationship DB Function Refers to Module
ENG|09123002 | 27| | DBP_REFS_MOD Relationship DB Procedure Refers to Module
ENG|09123002 | 29| | PRO_CONT_MOD Relationship Program Contains Module
ENG|09123002 | 31|R | TRG_REFS_MOD Relationship Trigger Refers to Module
ENG|09123003 | 1| | Query Commands
ENG|09123003 | 4| | QUERYCOMMANDS All commands (QUERY Command) for which the current
ENG|09123003 | 5| | user has privileges
ENG|09123003 | 7| | QCM_USES_COL Relationship QUERY Command Uses Column
ENG|09123003 | 9| | QCM_USES_SNP Relationship QUERY Command Uses Snapshot
ENG|09123003 | 11| | QCM_USES_SYN Relationship QUERY Command Uses Synonym
ENG|09123003 | 13| | QCM_USES_TAB Relationship QUERY Command Uses Table
ENG|09123003 | 15| | QCM_USES_VIE Relationship QUERY Command Uses View
ENG|09123003 | 17|R | USR_USES_QCM Relationship User Uses QUERY Command
ENG|09123004 | 1| | QueryPlus Commands
ENG|09123004 | 4| | QPCOMMANDS All QueryPlus Commands for which the current user
ENG|09123004 | 5| | has privileges
ENG|09123004 | 7| | QPC_USES_COL Relationship QueryPlus Command Uses Column
ENG|09123004 | 9| | QPC_USES_SNP Relationship QueryPlus Command Uses Snapshot
ENG|09123004 | 11| | QPC_USES_SYN Relationship QueryPlus Command Uses Synonym
ENG|09123004 | 13| | QPC_USES_TAB Relationship QueryPlus Command Uses Table
ENG|09123004 | 15| | QPC_USES_VIE Relationship QueryPlus Command Uses View
ENG|09123004 | 17| | QPE_USES_QPC Relationship QueryPlus ExcelLink Uses QueryPlus
ENG|09123004 | 18|S | Command
ENG|09123004 | 19| | QPW_USES_QPC Relationship QueryPlus WordLink Uses QueryPlus
ENG|09123004 | 20| | Command
ENG|09123004 | 22|R | USR_USES_QPC Relationship User Uses QueryPlus Command
ENG|09123005 | 1| | QueryPlus Queries
ENG|09123005 | 4| | QPQUERYS All QueryPlus Queries (QueryPlus Query) for which
ENG|09123005 | 5| | the current user has privileges
ENG|09123005 | 7| | QPQ_USES_COL Relationship QueryPlus Query Uses Column
ENG|09123005 | 9| | QPQ_USES_SNP Relationship QueryPlus Query Uses Snapshot
ENG|09123005 | 11| | QPQ_USES_SYN Relationship QueryPlus Query Uses Synonym
ENG|09123005 | 13| | QPQ_USES_TAB Relationship QueryPlus Query Uses Table
ENG|09123005 | 15| | QPQ_USES_VIE Relationship QueryPlus Query Uses View
ENG|09123005 | 17| | QPE_USES_QPQ Relationship QueryPlus ExcelLink Uses QueryPlus
ENG|09123005 | 18|S | Query
ENG|09123005 | 19| | QPW_USES_QPQ Relationship QueryPlus WordLink Uses QueryPlus Query
ENG|09123005 | 21|R | USR_USES_QPQ Relationship User Uses QueryPlus Query
ENG|09123006 | 1| | QueryPlus ExcelLinks
ENG|09123006 | 4| | QPEXCELLINKS All QueryPlus ExcelLinks for which the current user
ENG|09123006 | 5| | has privileges
ENG|09123006 | 7| | QPE_USES_QPC Relationship QueryPlus ExcelLink Uses QueryPlus
ENG|09123006 | 8| | Command
ENG|09123006 | 10| | QPE_USES_QPQ Relationship QueryPlus ExcelLink Uses QueryPlus
ENG|09123006 | 11| | Query
ENG|09123006 | 13|R | USR_USES_QPE Relationship User Uses QueryPlus ExcelLink
ENG|09123007 | 1| | QueryPlus WordLinks
ENG|09123007 | 4| | QPWORDLINKS All QueryPlus WordLinks for which the current user
ENG|09123007 | 5| | has privileges
ENG|09123007 | 7| | QPW_USES_QPC Relationship QueryPlus WordLink Uses QueryPlus
ENG|09123007 | 8| | Command
ENG|09123007 | 10| | QPW_USES_QPQ Relationship QueryPlus WordLink Uses QueryPlus Query
ENG|09123007 | 12|R | USR_USES_QPW Relationship User Uses QueryPlus WordLink
ENG|09123008 | 1| | Easy Commands
ENG|09123008 | 4| | EASYCOMMANDS All named requests (EASY command) for which the
ENG|09123008 | 5| | current user has privileges
ENG|09123008 | 7| | ECM_USES_COL Relationship EASY Command Uses Column
ENG|09123008 | 9| | ECM_USES_SNP Relationship EASY Command Uses Snapshot
ENG|09123008 | 11| | ECM_USES_SYN Relationship EASY Command Uses Synonym
ENG|09123008 | 13| | ECM_USES_TAB Relationship EASY Command Uses Table
ENG|09123008 | 15|R | ECM_USES_VIE Relationship EASY Command Uses View
ENG|09123009 | 1| | Easy Forms
ENG|09123009 | 4| | EASYFORMS All EASY Forms (EASY Form) for which the current
ENG|09123009 | 5| | user has privileges
ENG|09123009 | 7| | EFM_USES_COL Relationship EASY Form Uses Column
ENG|09123009 | 9| | EFM_USES_SNP Relationship EASY Form Uses Snapshot
ENG|09123009 | 11| | EFM_USES_SYN Relationship EASY Form Uses Synonym
ENG|09123009 | 13| | EFM_USES_TAB Relationship EASY Form Uses Table
ENG|09123009 | 15|R | EFM_USES_VIE Relationship EASY Form Uses View
ENG|091290 | 1| | <out of order>
ENG|091290 | 3|R | Just for fun, to get the help facility work.