diff --git a/autotests/folding/test.sql.fold b/autotests/folding/test.sql.fold index c7a5f3b..b76fae2 100644 --- a/autotests/folding/test.sql.fold +++ b/autotests/folding/test.sql.fold @@ -1,6 +1,65 @@ -- comment CREATE TABLE stuff COLUMNS(col1 INT, col2 Varchar); SELECT * FROM stuff WHERE id = 'string'; select * from stuff where id < 0.42; Select col1, col2 From stuff Where stuff.col1 IS NOT NuLL; + +CREATE TABLE Persons ( + ID int NOT NULL AUTO_INCREMENT, + LastName varchar(255) NOT NULL, + FirstName varchar(255), + Age int, + PRIMARY KEY (ID) + CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes') +); + +SELECT column_name(s) +FROM table1 +FULL OUTER JOIN table2 ON table1.column_name = table2.column_name; + +SELECT * FROM Customers +WHERE City LIKE '[bsp]%'; + +SELECT Count(*) AS DistinctCountries +FROM (SELECT DISTINCT Country FROM Customers) +GROUP BY Country +HAVING COUNT(CustomerID) > 5 +ORDER BY COUNT(CustomerID) DESC; + +SELECT 'Customer' As Type, ContactName, City, Country +FROM Customers +UNION +SELECT 'Supplier', ContactName, City, Country +FROM Suppliers; + +SELECT COUNT(ProductID), AVG(Price) +FROM Products; + +SET lock_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = on; +SET check_function_bodies = false; +SET client_min_messages = warning; +SET default_tablespace = ''; + +DROP TABLE IF EXISTS employees; + +ALTER TABLE ONLY employees + ADD CONSTRAINT fk_employees_employees FOREIGN KEY (reportsto) REFERENCES employees; + +CREATE VIEW [Current Product List] AS +SELECT ProductID, ProductName +FROM Products +WHERE Discontinued = No; + +SELECT * FROM [Current Product List]; + +SELECT * FROM [Category Sales For 1997] +WHERE CategoryName = 'Beverages'; + +begin +end +/ + / +/ u diff --git a/autotests/folding/test.sql_oracle.fold b/autotests/folding/test.sql_oracle.fold index e041dbb..e123cdf 100644 --- a/autotests/folding/test.sql_oracle.fold +++ b/autotests/folding/test.sql_oracle.fold @@ -1,44 +1,54 @@ -- kate: hl SQL (Oracle) -- test case shipped with highlighting in bugzilla, LGPL declare v_nchar NCHAR(12); begin q'{adfasdf'sadfasdf j}'{' hkjhkhkjhkjh khlkhklj'fghdfghdfgh'hkjh'jkhkh'a' nQ'(asldflahsl;'dkjfhklsdfh)' Nq'[asdasd;'asdasd'a]sd'asd'asasd]';11111111[1']; asdasdasdasd'errrrrrrrrrrrrrr-p nq'agdfgsdfgfhfghjfgh'f'f'sdfg'sdfg'dfg#a' dafdfadasfasdf; v_nchar := n'NCHAR STRING'; + if_n := 0; Q'#gdfgsdfgsdfgsdfgsdfg#' afgasasdfasdfasfasdfasdfasdfasdfsdf if sldfjsdj then case when 1=1 then aslfjsldkfj; when 2=2 then asdfg; else null; end case; if sdfjh then for i in 1 .. 2 LOOP dbms_output.put_line(q';ololo;'); END Loop; while true loop dbms_output.put_line('1111'); end loop; end if; ksjfklasjd; fklj; elsif sdklfjsdklfj; else sdfdfsdf; end if; end; + +CREATE TABLE Persons ( + ID int NOT NULL, + LastName varchar(255) NOT NULL, + FirstName varchar(255), + Age int, + City varchar(255), + CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes') +); diff --git a/autotests/html/test.sql.html b/autotests/html/test.sql.html index 8d9f050..91e2ff4 100644 --- a/autotests/html/test.sql.html +++ b/autotests/html/test.sql.html @@ -1,13 +1,72 @@ test.sql
 -- comment
 
 CREATE TABLE stuff COLUMNS(col1 INT, col2 Varchar);
 SELECT * FROM stuff WHERE id = 'string';
 select * from stuff where id < 0.42;
 Select col1, col2 From stuff Where stuff.col1 IS NOT NuLL;
+
+CREATE TABLE Persons (
+    ID int NOT NULL AUTO_INCREMENT,
+    LastName varchar(255) NOT NULL,
+    FirstName varchar(255),
+    Age int,
+    PRIMARY KEY (ID)
+    CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
+);
+
+SELECT column_name(s)
+FROM table1
+FULL OUTER JOIN table2 ON table1.column_name = table2.column_name;
+
+SELECT * FROM Customers
+WHERE City LIKE '[bsp]%';
+
+SELECT Count(*) AS DistinctCountries
+FROM (SELECT DISTINCT Country FROM Customers)
+GROUP BY Country
+HAVING COUNT(CustomerID) > 5
+ORDER BY COUNT(CustomerID) DESC;
+
+SELECT 'Customer' As Type, ContactName, City, Country
+FROM Customers
+UNION
+SELECT 'Supplier', ContactName, City, Country
+FROM Suppliers;
+
+SELECT COUNT(ProductID), AVG(Price)
+FROM Products;
+
+SET lock_timeout = 0;
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = on;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET default_tablespace = '';
+
+DROP TABLE IF EXISTS employees;
+
+ALTER TABLE ONLY employees
+    ADD CONSTRAINT fk_employees_employees FOREIGN KEY (reportsto) REFERENCES employees;
+
+CREATE VIEW [Current Product List] AS
+SELECT ProductID, ProductName
+FROM Products
+WHERE Discontinued = No;
+
+SELECT * FROM [Current Product List];
+
+SELECT * FROM [Category Sales For 1997]
+WHERE CategoryName = 'Beverages';
+
+begin
+end
+/
+ /
+/ u
 
diff --git a/autotests/html/test.sql_oracle.html b/autotests/html/test.sql_oracle.html index 6573677..72486e3 100644 --- a/autotests/html/test.sql_oracle.html +++ b/autotests/html/test.sql_oracle.html @@ -1,51 +1,61 @@ test.sql_oracle
 -- kate: hl SQL (Oracle)
 -- test case shipped with highlighting in bugzilla, LGPL
 
 declare
   v_nchar NCHAR(12);
 begin
 	q'{adfasdf'sadfasdf j}'{' hkjhkhkjhkjh khlkhklj'fghdfghdfgh'hkjh'jkhkh'a'
 	nQ'(asldflahsl;'dkjfhklsdfh)'
-	Nq'[asdasd;'asdasd'a]sd'asd'asasd]';11111111[1']; asdasdasdasd'errrrrrrrrrrrrrr-p
+	Nq'[asdasd;'asdasd'a]sd'asd'asasd]';11111111[1']; asdasdasdasd'errrrrrrrrrrrrrr-p
 
 	nq'agdfgsdfgfhfghjfgh'f'f'sdfg'sdfg'dfg#a' dafdfadasfasdf;
 	v_nchar := n'NCHAR STRING';
+	if_n := 0;
 
 	Q'#gdfgsdfgsdfgsdfgsdfg#' afgasasdfasdfasfasdfasdfasdfasdfsdf
 
 	if sldfjsdj then
 		case
-			when 1=1 then
+			when 1=1 then
 				aslfjsldkfj;
-			when 2=2 then
+			when 2=2 then
 				asdfg;
 			else
-				null;
+				null;
 		end case;
 
 		if sdfjh then
 			for i in 1 .. 2
 			LOOP
 				dbms_output.put_line(q';ololo;');
 			END Loop;
 
 			while true
 			loop
 				dbms_output.put_line('1111');
 			end loop;
 		end if;
 		ksjfklasjd;
 		fklj;
 	elsif
 		sdklfjsdklfj;
 	else
 		sdfdfsdf;
 	end if;
 end;
+
+CREATE TABLE Persons (
+    ID int NOT NULL,
+    LastName varchar(255) NOT NULL,
+    FirstName varchar(255),
+    Age int,
+    City varchar(255),
+    CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
+);
 
diff --git a/autotests/input/test.sql b/autotests/input/test.sql index c7a5f3b..b76fae2 100644 --- a/autotests/input/test.sql +++ b/autotests/input/test.sql @@ -1,6 +1,65 @@ -- comment CREATE TABLE stuff COLUMNS(col1 INT, col2 Varchar); SELECT * FROM stuff WHERE id = 'string'; select * from stuff where id < 0.42; Select col1, col2 From stuff Where stuff.col1 IS NOT NuLL; + +CREATE TABLE Persons ( + ID int NOT NULL AUTO_INCREMENT, + LastName varchar(255) NOT NULL, + FirstName varchar(255), + Age int, + PRIMARY KEY (ID) + CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes') +); + +SELECT column_name(s) +FROM table1 +FULL OUTER JOIN table2 ON table1.column_name = table2.column_name; + +SELECT * FROM Customers +WHERE City LIKE '[bsp]%'; + +SELECT Count(*) AS DistinctCountries +FROM (SELECT DISTINCT Country FROM Customers) +GROUP BY Country +HAVING COUNT(CustomerID) > 5 +ORDER BY COUNT(CustomerID) DESC; + +SELECT 'Customer' As Type, ContactName, City, Country +FROM Customers +UNION +SELECT 'Supplier', ContactName, City, Country +FROM Suppliers; + +SELECT COUNT(ProductID), AVG(Price) +FROM Products; + +SET lock_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = on; +SET check_function_bodies = false; +SET client_min_messages = warning; +SET default_tablespace = ''; + +DROP TABLE IF EXISTS employees; + +ALTER TABLE ONLY employees + ADD CONSTRAINT fk_employees_employees FOREIGN KEY (reportsto) REFERENCES employees; + +CREATE VIEW [Current Product List] AS +SELECT ProductID, ProductName +FROM Products +WHERE Discontinued = No; + +SELECT * FROM [Current Product List]; + +SELECT * FROM [Category Sales For 1997] +WHERE CategoryName = 'Beverages'; + +begin +end +/ + / +/ u diff --git a/autotests/input/test.sql_oracle b/autotests/input/test.sql_oracle index 26e3d77..80ade14 100644 --- a/autotests/input/test.sql_oracle +++ b/autotests/input/test.sql_oracle @@ -1,44 +1,54 @@ -- kate: hl SQL (Oracle) -- test case shipped with highlighting in bugzilla, LGPL declare v_nchar NCHAR(12); begin q'{adfasdf'sadfasdf j}'{' hkjhkhkjhkjh khlkhklj'fghdfghdfgh'hkjh'jkhkh'a' nQ'(asldflahsl;'dkjfhklsdfh)' Nq'[asdasd;'asdasd'a]sd'asd'asasd]';11111111[1']; asdasdasdasd'errrrrrrrrrrrrrr-p nq'agdfgsdfgfhfghjfgh'f'f'sdfg'sdfg'dfg#a' dafdfadasfasdf; v_nchar := n'NCHAR STRING'; + if_n := 0; Q'#gdfgsdfgsdfgsdfgsdfg#' afgasasdfasdfasfasdfasdfasdfasdfsdf if sldfjsdj then case when 1=1 then aslfjsldkfj; when 2=2 then asdfg; else null; end case; if sdfjh then for i in 1 .. 2 LOOP dbms_output.put_line(q';ololo;'); END Loop; while true loop dbms_output.put_line('1111'); end loop; end if; ksjfklasjd; fklj; elsif sdklfjsdklfj; else sdfdfsdf; end if; end; + +CREATE TABLE Persons ( + ID int NOT NULL, + LastName varchar(255) NOT NULL, + FirstName varchar(255), + Age int, + City varchar(255), + CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes') +); diff --git a/autotests/reference/test.sql.ref b/autotests/reference/test.sql.ref index 3fa2a67..ba869cd 100644 --- a/autotests/reference/test.sql.ref +++ b/autotests/reference/test.sql.ref @@ -1,6 +1,65 @@ -- comment

CREATE TABLE stuff COLUMNS(col1 INT, col2 Varchar);
SELECT * FROM stuff WHERE id = 'string';
select * from stuff where id < 0.42;
-Select col1, col2 From stuff Where stuff.col1 IS NOT NuLL;
+Select col1, col2 From stuff Where stuff.col1 IS NOT NuLL;
+
+CREATE TABLE Persons (
+ ID int NOT NULL AUTO_INCREMENT,
+ LastName varchar(255) NOT NULL,
+ FirstName varchar(255),
+ Age int,
+ PRIMARY KEY (ID)
+ CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
+);
+
+SELECT column_name(s)
+FROM table1
+FULL OUTER JOIN table2 ON table1.column_name = table2.column_name;
+
+SELECT * FROM Customers
+WHERE City LIKE '[bsp]%';
+
+SELECT Count(*) AS DistinctCountries
+FROM (SELECT DISTINCT Country FROM Customers)
+GROUP BY Country
+HAVING COUNT(CustomerID) > 5
+ORDER BY COUNT(CustomerID) DESC;
+
+SELECT 'Customer' As Type, ContactName, City, Country
+FROM Customers
+UNION
+SELECT 'Supplier', ContactName, City, Country
+FROM Suppliers;
+
+SELECT COUNT(ProductID), AVG(Price)
+FROM Products;
+
+SET lock_timeout = 0;
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = on;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET default_tablespace = '';
+
+DROP TABLE IF EXISTS employees;
+
+ALTER TABLE ONLY employees
+ ADD CONSTRAINT fk_employees_employees FOREIGN KEY (reportsto) REFERENCES employees;
+
+CREATE VIEW [Current Product List] AS
+SELECT ProductID, ProductName
+FROM Products
+WHERE Discontinued = No;
+
+SELECT * FROM [Current Product List];
+
+SELECT * FROM [Category Sales For 1997]
+WHERE CategoryName = 'Beverages';
+
+begin
+end
+/
+ /
+/ u
diff --git a/autotests/reference/test.sql_oracle.ref b/autotests/reference/test.sql_oracle.ref index 9de6a82..d121a71 100644 --- a/autotests/reference/test.sql_oracle.ref +++ b/autotests/reference/test.sql_oracle.ref @@ -1,44 +1,54 @@ -- kate: hl SQL (Oracle)
-- test case shipped with highlighting in bugzilla, LGPL

declare
v_nchar NCHAR(12);
-begin
+begin
q'{adfasdf'sadfasdf j}'{' hkjhkhkjhkjh khlkhklj'fghdfghdfgh'hkjh'jkhkh'a'
nQ'(asldflahsl;'dkjfhklsdfh)'
- Nq'[asdasd;'asdasd'a]sd'asd'asasd]';11111111[1']; asdasdasdasd'errrrrrrrrrrrrrr-p
+ Nq'[asdasd;'asdasd'a]sd'asd'asasd]';11111111[1']; asdasdasdasd'errrrrrrrrrrrrrr-p

nq'agdfgsdfgfhfghjfgh'f'f'sdfg'sdfg'dfg#a' dafdfadasfasdf;
v_nchar := n'NCHAR STRING';
+ if_n := 0;

Q'#gdfgsdfgsdfgsdfgsdfg#' afgasasdfasdfasfasdfasdfasdfasdfsdf

- if sldfjsdj then
- case
- when 1=1 then
+ if sldfjsdj then
+ case
+ when 1=1 then
aslfjsldkfj;
- when 2=2 then
+ when 2=2 then
asdfg;
- else
- null;
- end case;
+ else
+ null;
+ end case;

- if sdfjh then
- for i in 1 .. 2
- LOOP
+ if sdfjh then
+ for i in 1 .. 2
+ LOOP
dbms_output.put_line(q';ololo;');
- END Loop;
+ END Loop;

- while true
- loop
+ while true
+ loop
dbms_output.put_line('1111');
- end loop;
- end if;
+ end loop;
+ end if;
ksjfklasjd;
fklj;
- elsif
+ elsif
sdklfjsdklfj;
- else
+ else
sdfdfsdf;
- end if;
-end;
+ end if;
+end;
+
+CREATE TABLE Persons (
+ ID int NOT NULL,
+ LastName varchar(255) NOT NULL,
+ FirstName varchar(255),
+ Age int,
+ City varchar(255),
+ CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
+);
diff --git a/data/syntax/sql-mysql.xml b/data/syntax/sql-mysql.xml index 200c355..f37b706 100644 --- a/data/syntax/sql-mysql.xml +++ b/data/syntax/sql-mysql.xml @@ -1,478 +1,481 @@ - + + + BEGIN + CASE + DO + ELSE + ELSEIF + END + FOR + IF + LOOP + RETURN + THEN + WHEN + WHILE + + + AND + BETWEEN + IN + IS + LIKE + NOT + OR + ACCESS ADD ALL ALTER ANALYZE - AND AS ASC AUTO_INCREMENT BDB BERKELEYDB - BETWEEN BOTH BY CASCADE - CASE CHANGE CHARSET COLUMN COLUMNS CONSTRAINT CREATE CROSS CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP DATABASE DATABASES DAY_HOUR DAY_MINUTE DAY_SECOND DEC + DECLARE DEFAULT DELAYED DELETE DESC DESCRIBE DISTINCT DISTINCTROW DROP - ELSE ENCLOSED ESCAPED EXISTS EXPLAIN FIELDS - FOR FOREIGN FROM FULLTEXT FUNCTION GRANT GROUP HAVING HIGH_PRIORITY - IF IGNORE - IN INDEX INFILE INNER INNODB INSERT INTERVAL INTO - IS JOIN KEY KEYS KILL LEADING LEFT - LIKE LIMIT LINES LOAD LOCK LOW_PRIORITY MASTER_SERVER_ID MATCH MRG_MYISAM NATIONAL NATURAL - NOT NULL NUMERIC ON OPTIMIZE OPTION OPTIONALLY - OR ORDER OUTER OUTFILE PARTIAL PRECISION PRIMARY PRIVILEGES PROCEDURE PURGE READ REFERENCES REGEXP RENAME REPLACE REQUIRE RESTRICT RETURNS REVOKE RIGHT RLIKE SELECT SET SHOW SONAME SQL_BIG_RESULT SQL_CALC_FOUND_ROWS SQL_SMALL_RESULT SSL STARTING STRAIGHT_JOIN STRIPED TABLE TABLES TERMINATED - THEN TO TRAILING TRUNCATE TYPE UNION UNIQUE UNLOCK UNSIGNED UPDATE USAGE USE USER_RESOURCES USING VALUES VARYING - WHEN - WHERE - WHILE WITH + WHERE WRITE XOR YEAR_MONTH ZEROFILL - - + - - - * - / - || - = - != - <> - < - <= - > - >= - ~= - ^= - := - => - ** - .. - ASCII BIN BIT_LENGTH CHAR CHARACTER_LENGTH CHAR_LENGTH + COALESCE CONCAT CONCAT_WS CONV ELT EXPORT_SET FIELD FIND_IN_SET HEX INSERT INSTR LCASE LEFT LENGTH LOAD_FILE LOCATE LOWER LPAD LTRIM MAKE_SET MID OCT OCTET_LENGTH ORD POSITION QUOTE REPEAT REPLACE REVERSE RIGHT RPAD RTRIM SOUNDEX SPACE SUBSTRING SUBSTRING_INDEX TRIM UCASE UPPER ABS ACOS ASIN ATAN ATAN2 CEILING COS COT DEGREES EXP FLOOR GREATEST LEAST LN LOG LOG10 LOG2 MOD PI POW POWER RADIANS RAND ROUND SIGN SIN SQRT TAN ADDDATE CURDATE CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURTIME DATE_ADD DATE_FORMAT DATE_SUB DAYNAME DAYOFMONTH DAYOFWEEK DAYOFYEAR EXTRACT FROM_DAYS FROM_UNIXTIME HOUR MINUTE MONTH MONTHNAME NOW PERIOD_ADD PERIOD_DIFF QUARTER SECOND SEC_TO_TIME SUBDATE SYSDATE TIME_FORMAT TIME_TO_SEC TO_DAYS UNIX_TIMESTAMP WEEK WEEKDAY YEAR YEARWEEK CAST CONVERT AES_DECRYPT AES_ENCRYPT BENCHMARK BIT_COUNT CONNECTION_ID DATABASE DECODE DES_DECRYPT DES_ENCRYPT ENCODE ENCRYPT FORMAT FOUND_ROWS GET_LOCK INET_ATON INET_NTOA IS_FREE_LOCK LAST_INSERT_ID MASTER_POS_WAIT MD5 PASSWORD RELEASE_LOCK SESSION_USER SHA SHA1 SYSTEM_USER USER VERSION AVG BIT_AND BIT_OR COUNT MAX MIN STD STDDEV SUM BINARY BLOB CHAR CHARACTER ENUM LONGBLOB LONGTEXT MEDIUMBLOB MEDIUMTEXT TEXT TINYBLOB TINYTEXT VARBINARY VARCHAR BIGINT BIT BOOL BOOLEAN DEC DECIMAL DOUBLE FIXED FLOAT INT INTEGER LONG MEDIUMINT MIDDLEINT NUMERIC TINYINT REAL SERIAL SMALLINT DATE DATETIME TIME TIMESTAMP YEAR - + - + + + + + + + + + + + - - + + + - + diff --git a/data/syntax/sql-oracle.xml b/data/syntax/sql-oracle.xml index 9e4326b..7bb32fc 100644 --- a/data/syntax/sql-oracle.xml +++ b/data/syntax/sql-oracle.xml @@ -1,2117 +1,1954 @@ - + + + BEGIN + CASE + ELSE + ELSIF + END + EXCEPTION + EXIT + LOOP + FOR + IF + RAISE + RETURN + RETURNING + THEN + WHEN + WHILE + + + AND + BETWEEN + IN + IS + LIKE + NOT + OR + ABORT ACCEPT ACCESS ACCESSED ACCOUNT ACTIVATE ADD ADD_COLUMN ADD_GROUP ADJ_DATE ADMIN ADMINISTER ADMINISTRATOR ADVISE ADVISOR AFTER ALIAS ALL ALLOCATE ALLOW ALL_ROWS ALTER ALWAYS ANALYZE ANCILLARY - AND AND_EQUAL ANTIJOIN ANY ANYSCHEMA APPEND - APPENDCHILDXML APPEND_VALUES APPLY ARCHIVE ARCHIVELOG ARRAY AS ASC - ASCII - ASCIISTR ASSEMBLY ASSOCIATE ASYNC ASYNCHRONOUS AT ATTRIBUTE ATTRIBUTES AUDIT AUTHENTICATED AUTHENTICATION AUTHID AUTHORIZATION AUTO AUTOALLOCATE AUTOEXTEND AUTOMATIC AVAILABILITY BACKUP BASIC BASICFILE BATCH BECOME BEFORE - BEGIN BEGIN_OUTLINE_DATA BEHALF - BETWEEN BIGFILE BIND_AWARE BINDING BITAND BITMAP BITMAPS BITMAP_TREE BITS BLOCK BLOCK_RANGE BLOCKS BLOCKSIZE BODY BOTH BOUND BRANCH BREADTH BROADCAST BUFFER BUFFER_CACHE BUFFER_POOL BUILD BULK BY BYPASS_RECURSIVE_CHECK BYPASS_UJVC BYTE CACHE CACHE_CB CACHE_INSTANCES CACHE_TEMP_TABLE CALL CANCEL - CARDINALITY CASCADE - CASE - CAST CATEGORY - CEIL CELL_FLASH_CACHE CERTIFICATE CFILE CHAINED CHANGE CHANGE_DUPKEY_ERROR_INDEX - CHAR - CHARACTER CHAR_CS - CHARTOROWID CHECK CHECK_ACL_REWRITE CHECKPOINT CHILD CHOOSE - CHR CHUNK CLASS CLEAR CLONE CLOSE CLOSE_CACHED_OPEN_CURSORS CLUSTER - CLUSTER_ID CLUSTERING_FACTOR - CLUSTER_PROBABILITY - CLUSTER_SET - COALESCE COALESCE_SQ COARSE CO_AUTH_IND COLD - COLLECT COLUMN COLUMNAR COLUMN_AUTH_INDICATOR COLUMNS COLUMN_STATS COLUMN_VALUE COMMENT COMMIT COMMITTED COMPACT COMPATIBILITY COMPILE COMPLETE COMPLIANCE - COMPOSE COMPOSITE COMPOSITE_LIMIT COMPOUND COMPRESS COMPUTE - CONCAT CONFIRM CONFORMING CONNECT CONNECT_BY_CB_WHR_ONLY CONNECT_BY_COMBINE_SW CONNECT_BY_COST_BASED CONNECT_BY_ELIM_DUPS CONNECT_BY_FILTERING CONNECT_BY_ISCYCLE CONNECT_BY_ISLEAF CONNECT_BY_ROOT CONNECT_TIME CONSIDER CONSISTENT CONST CONSTANT CONSTRAINT CONSTRAINTS + CONTAINS CONTAINER CONTENT CONTENTS CONTEXT CONTINUE CONTROLFILE - CONVERT - CORR - CORR_K - CORR_S CORRUPTION CORRUPT_XID CORRUPT_XID_ALL COST COST_XML_QUERY_REWRITE - COUNT - COVAR_POP - COVAR_SAMP CPU_COSTING CPU_PER_CALL CPU_PER_SESSION CRASH CREATE CREATE_STORED_OUTLINES CREATION CROSS CROSSEDITION CSCONVERT CUBE CUBE_GB - CUME_DIST CUME_DISTM CURRENT - CURRENT_DATE CURRENT_SCHEMA CURRENT_TIME - CURRENT_TIMESTAMP CURRENT_USER CURRENTV CURSOR CURSOR_SHARING_EXACT CURSOR_SPECIFIC_SEGMENT - CV CYCLE DANGLING DATA DATABASE DATABASE_DEFAULT DATAFILE DATAFILES DATAOBJNO - DATAOBJ_TO_PARTITION DATE DATE_MODE DAY DBA DBA_RECYCLEBIN DBMS_STATS DB_ROLE_CHANGE - DBTIMEZONE DB_VERSION DDL DEALLOCATE DEBUG DEBUGGER DEC DECLARE DECOMPOSE DECR DECREMENT DECRYPT DEDUPLICATE DEFAULT DEFAULTS DEFERRABLE DEFERRED DEFINE DEFINED DEFINER DEGREE DELAY DELETE - DELETEXML DEMAND DENSE_RANK DENSE_RANKM DEPENDENT - DEPTH DEQUEUE - DEREF DEREF_NO_REWRITE DESC DETACHED DETERMINES DICTIONARY DIMENSION DIRECT_LOAD DIRECTORY DISABLE DISABLE_PRESET DISABLE_RPKE DISALLOW DISASSOCIATE DISCONNECT DISK DISKGROUP DISKS DISMOUNT DISTINCT DISTINGUISHED DISTRIBUTED DML DML_UPDATE DOCFIDELITY DOCUMENT DOMAIN_INDEX_FILTER DOMAIN_INDEX_NO_SORT DOMAIN_INDEX_SORT DOUBLE DOWNGRADE DRIVING_SITE DROP DROP_COLUMN DROP_GROUP DST_UPGRADE_INSERT_CONV - DUMP DYNAMIC DYNAMIC_SAMPLING DYNAMIC_SAMPLING_EST_CDN EACH EDITION EDITIONING EDITIONS ELEMENT ELIMINATE_JOIN ELIMINATE_OBY ELIMINATE_OUTER_JOIN - ELSE - ELSIF EMPTY - EMPTY_BLOB - EMPTY_CLOB ENABLE ENABLE_PRESET ENCODING ENCRYPT ENCRYPTION - END END_OUTLINE_DATA ENFORCE ENFORCED ENQUEUE ENTERPRISE ENTITYESCAPING ENTRY ERROR ERROR_ARGUMENT ERROR_ON_OVERLAP_TIME ERRORS ESCAPE ESTIMATE EVALNAME EVALUATION EVENTS EVERY EXCEPT EXCEPTIONS EXCHANGE EXCLUDE EXCLUDING EXCLUSIVE EXECUTE EXEMPT EXISTS - EXISTSNODE - EXP EXPAND_GSET_TO_UNION EXPAND_TABLE EXPIRE EXPLAIN EXPLOSION EXPORT EXPR_CORR_CHECK EXTENDS EXTENT EXTENTS EXTERNAL EXTERNALLY EXTRA - EXTRACT - EXTRACTVALUE FACILITY FACT FACTORIZE_JOIN FAILED FAILED_LOGIN_ATTEMPTS FAILGROUP FALSE FAST FBTSCAN - FEATURE_ID - FEATURE_SET - FEATURE_VALUE FILE FILESYSTEM_LIKE_LOGGING FILTER FINAL FINE FINISH FIRST FIRSTM FIRST_ROWS - FIRST_VALUE FLAGGER FLASHBACK FLASH_CACHE FLOAT FLOB - FLOOR FLUSH FOLDER FOLLOWING FOLLOWS - FOR FORCE FORCE_XML_QUERY_REWRITE FOREIGN FOREVER FORWARD FREELIST FREELISTS FREEPOOLS FRESH FROM - FROM_TZ FULL FUNCTION FUNCTIONS GATHER_PLAN_STATISTICS GBY_CONC_ROLLUP GBY_PUSHDOWN GENERATED GLOBAL GLOBALLY GLOBAL_NAME GLOBAL_TOPIC_ENABLED GRANT - GREATEST GROUP GROUP_BY - GROUP_ID - GROUPING - GROUPING_ID GROUPS GUARANTEE GUARANTEED GUARD HASH HASH_AJ HASHKEYS HASH_SJ HAVING HEADER HEAP HELP - HEXTORAW HEXTOREF HIDDEN HIDE HIERARCHY HIGH HINTSET_BEGIN HINTSET_END HOT HOUR HWM_BROKERED HYBRID ID IDENTIFIED IDENTIFIER IDENTITY IDGENERATORS IDLE_TIME - IF IGNORE IGNORE_OPTIM_EMBEDDED_HINTS IGNORE_ROW_ON_DUPKEY_INDEX IGNORE_WHERE_CLAUSE IMMEDIATE IMPACT IMPORT - IN INCLUDE INCLUDE_VERSION INCLUDING INCR INCREMENT INCREMENTAL INDENT INDEX INDEX_ASC INDEX_COMBINE INDEX_DESC INDEXED INDEXES INDEX_FFS INDEX_FILTER INDEX_JOIN INDEX_ROWS INDEX_RRS INDEX_RS INDEX_RS_ASC INDEX_RS_DESC INDEX_SCAN INDEX_SKIP_SCAN INDEX_SS INDEX_SS_ASC INDEX_SS_DESC INDEX_STATS INDEXTYPE INDEXTYPES INDICATOR INFINITE INFORMATIONAL - INITCAP INITIAL INITIALIZED INITIALLY INITRANS INLINE INLINE_XMLTYPE_NT IN_MEMORY_METADATA INNER INSERT - INSERTCHILDXML - INSERTCHILDXMLAFTER - INSERTCHILDXMLBEFORE - INSERTXMLAFTER - INSERTXMLBEFORE INSTANCE INSTANCES INSTANTIABLE INSTANTLY INSTEAD - INSTR - INSTRB - INSTRC - INSTR2 - INSTR4 - INT - INTEGER INTERMEDIATE INTERNAL_CONVERT INTERNAL_USE INTERPRETED INTERSECT - INTERVAL INTO INVALIDATE INVISIBLE IN_XQUERY - IS ISOLATION ISOLATION_LEVEL ITERATE - ITERATION_NUMBER JAVA JOB JOIN KEEP KEEP_DUPLICATES KERBEROS KEY KEY_LENGTH KEYS KEYSIZE KILL - LAG - LAST - LAST_DAY - LAST_VALUE LATERAL LAYER LDAP_REGISTRATION LDAP_REGISTRATION_ENABLED LDAP_REG_SYNC_INTERVAL - LEAD LEADING - LEAST LEFT - LENGTH - LENGTHB - LENGTHC - LENGTH2 - LENGTH4 LESS LEVEL LEVELS LIBRARY LIFE LIFETIME - LIKE LIKEC LIKE_EXPAND LIKE2 LIKE4 LIMIT LINK LIST - LISTAGG - LN - LNNVL LOB LOBNVL LOBS LOCAL LOCAL_INDEXES LOCALTIME - LOCALTIMESTAMP LOCATION LOCATOR LOCK LOCKED - LOG LOGFILE LOGFILES LOGGING LOGICAL LOGICAL_READS_PER_CALL LOGICAL_READS_PER_SESSION LOGOFF LOGON LONG - LOOP LOW - LOWER - LPAD - LTRIM MAIN - MAKE_REF MANAGE MANAGED MANAGEMENT MANUAL MAPPING MASTER MATCHED MATERIALIZE MATERIALIZED - MAX MAXARCHLOGS MAXDATAFILES MAXEXTENTS MAXIMIZE MAXINSTANCES MAXLOGFILES MAXLOGHISTORY MAXLOGMEMBERS MAXSIZE MAXTRANS MAXVALUE MEASURE MEASURES - MEDIAN MEDIUM MEMBER MEMORY MERGE MERGE$ACTIONS MERGE_AJ MERGE_CONST_ON MERGE_SJ METHOD MIGRATE MIGRATION - MIN MINEXTENTS MINIMIZE MINIMUM MINING MINUS MINUS_NULL MINUTE MINVALUE MIRROR MIRRORCOLD MIRRORHOT MLSLABEL - MOD MODE MODEL MODEL_COMPILE_SUBQUERY MODEL_DONTVERIFY_UNIQUENESS MODEL_DYNAMIC_SUBQUERY MODEL_MIN_ANALYSIS MODEL_NO_ANALYSIS MODEL_PBY MODEL_PUSH_REF MODIFY MONITOR MONITORING MONTH - MONTHS_BETWEEN MOUNT MOUNTPATH MOVE MOVEMENT MULTISET MV_MERGE NAME NAMED NAMESPACE NAN - NANVL NATIONAL NATIVE NATIVE_FULL_OUTER_JOIN NATURAL NAV NEEDED NESTED NESTED_TABLE_FAST_INSERT NESTED_TABLE_GET_REFS NESTED_TABLE_ID NESTED_TABLE_SET_REFS NESTED_TABLE_SET_SETID NETWORK NEVER NEW NEW_TIME NEXT NEXT_DAY NL_AJ NLJ_BATCHING NLJ_INDEX_FILTER NLJ_INDEX_SCAN NLJ_PREFETCH NLS_CALENDAR NLS_CHARACTERSET - NLS_CHARSET_DECL_LEN - NLS_CHARSET_ID - NLS_CHARSET_NAME NLS_COMP NLS_CURRENCY NLS_DATE_FORMAT NLS_DATE_LANGUAGE - NLS_INITCAP NLS_ISO_CURRENCY NL_SJ NLS_LANG NLS_LANGUAGE NLS_LENGTH_SEMANTICS NLS_LOWER NLS_NCHAR_CONV_EXCP NLS_NUMERIC_CHARACTERS NLS_SORT - NLSSORT NLS_SPECIAL_CHARS NLS_TERRITORY NLS_UPPER NO NO_ACCESS NOAPPEND NOARCHIVELOG NOAUDIT NO_BASETABLE_MULTIMV_REWRITE NO_BIND_AWARE NO_BUFFER NOCACHE NO_CARTESIAN NO_CHECK_ACL_REWRITE NO_COALESCE_SQ NOCOMPRESS NO_CONNECT_BY_CB_WHR_ONLY NO_CONNECT_BY_COMBINE_SW NO_CONNECT_BY_COST_BASED NO_CONNECT_BY_ELIM_DUPS NO_CONNECT_BY_FILTERING NO_COST_XML_QUERY_REWRITE NO_CPU_COSTING NOCPU_COSTING NOCYCLE NODELAY NO_DOMAIN_INDEX_FILTER NO_DST_UPGRADE_INSERT_CONV NO_ELIMINATE_JOIN NO_ELIMINATE_OBY NO_ELIMINATE_OUTER_JOIN NOENTITYESCAPING NO_EXPAND NO_EXPAND_GSET_TO_UNION NO_EXPAND_TABLE NO_FACT NO_FACTORIZE_JOIN NO_FILTERING NOFORCE NO_GBY_PUSHDOWN NOGUARANTEE NO_INDEX NO_INDEX_FFS NO_INDEX_SS NO_LOAD NOLOCAL NOLOGGING NOMAPPING NOMAXVALUE NO_MERGE NOMINIMIZE NOMINVALUE NO_MODEL_PUSH_REF NO_MONITOR NO_MONITORING NOMONITORING NO_MULTIMV_REWRITE NO_NATIVE_FULL_OUTER_JOIN NONE NO_NLJ_BATCHING NO_NLJ_PREFETCH NONSCHEMA NOORDER NO_ORDER_ROLLUPS NO_OUTER_JOIN_TO_INNER NOOVERRIDE NO_PARALLEL NOPARALLEL NO_PARALLEL_INDEX NOPARALLEL_INDEX NO_PARTIAL_COMMIT NO_PLACE_DISTINCT NO_PLACE_GROUP_BY NO_PQ_MAP NO_PRUNE_GSETS NO_PULL_PRED NO_PUSH_PRED NO_PUSH_SUBQ NO_PX_JOIN_FILTER NO_QKN_BUFF NO_QUERY_TRANSFORMATION NO_REF_CASCADE NORELY NOREPAIR NORESETLOGS NO_RESULT_CACHE NOREVERSE NO_REWRITE NOREWRITE NORMAL NOROWDEPENDENCIES NOSCHEMACHECK NOSEGMENT NO_SEMIJOIN NO_SET_TO_JOIN NOSORT NO_SQL_TUNE NO_STAR_TRANSFORMATION NO_STATEMENT_QUEUING NO_STATS_GSETS NOSTRICT NO_SUBQUERY_PRUNING NO_SUBSTRB_PAD NO_SWAP_JOIN_INPUTS NOSWITCH - NOT NO_TEMP_TABLE NOTHING NOTIFICATION NO_TRANSFORM_DISTINCT_AGG NO_UNNEST NO_USE_HASH NO_USE_HASH_AGGREGATION NO_USE_INVISIBLE_INDEXES NO_USE_MERGE NO_USE_NL NOVALIDATE NOWAIT NO_XML_DML_REWRITE NO_XMLINDEX_REWRITE NO_XMLINDEX_REWRITE_IN_SELECT NO_XML_QUERY_REWRITE - NTH_VALUE - NTILE NULL - NULLIF NULLS NUMBER NUMERIC NUM_INDEX_KEYS - NUMTODSINTERVAL - NUMTOYMINTERVAL - NVL - NVL2 OBJECT OBJECTTOXML OBJNO OBJNO_REUSE OCCURENCES OF OFF OFFLINE OID OIDINDEX OLAP OLD OLD_PUSH_PRED OLTP ON ONLINE ONLY OPAQUE OPAQUE_TRANSFORM OPAQUE_XCANONICAL OPCODE OPEN OPERATIONS OPERATOR OPT_ESTIMATE OPTIMAL OPTIMIZER_FEATURES_ENABLE OPTIMIZER_GOAL OPTION OPT_PARAM - OR ORA_BRANCH ORA_CHECKACL ORADEBUG - ORA_DST_AFFECTED - ORA_DST_CONVERT - ORA_DST_ERROR ORA_GET_ACLIDS ORA_GET_PRIVILEGES - ORA_HASH ORA_ROWSCN ORA_ROWSCN_RAW ORA_ROWVERSION ORA_TABVERSION ORDER ORDERED ORDERED_PREDICATES ORDINALITY OR_EXPAND ORGANIZATION OR_PREDICATES OTHER OUTER OUTER_JOIN_TO_INNER OUTLINE OUTLINE_LEAF OUT_OF_LINE OVER OVERFLOW OVERFLOW_NOMOVE OVERLAPS OWN OWNER OWNERSHIP PACKAGE PACKAGES PARALLEL PARALLEL_INDEX PARAM PARAMETERS PARENT PARITY PARTIALLY PARTITION PARTITION_HASH PARTITION_LIST PARTITION_RANGE PARTITIONS PART$NUM$INST PASSING PASSWORD PASSWORD_GRACE_TIME PASSWORD_LIFE_TIME PASSWORD_LOCK_TIME PASSWORD_REUSE_MAX PASSWORD_REUSE_TIME PASSWORD_VERIFY_FUNCTION - PATH PATHS PBL_HS_BEGIN PBL_HS_END PCTFREE PCTINCREASE PCTTHRESHOLD PCTUSED PCTVERSION PENDING PERCENT PERCENTILE_CONT PERCENTILE_DISC - PERCENT_RANK PERCENT_RANKM PERFORMANCE PERMANENT PERMISSION PFILE PHYSICAL PIKEY PIV_GB PIVOT PIV_SSF PLACE_DISTINCT PLACE_GROUP_BY PLAN PLSCOPE_SETTINGS PLSQL_CCFLAGS PLSQL_CODE_TYPE PLSQL_DEBUG PLSQL_OPTIMIZE_LEVEL PLSQL_WARNINGS POINT POLICY POST_TRANSACTION - POWER - POWERMULTISET - POWERMULTISET_BY_CARDINALITY PQ_DISTRIBUTE PQ_MAP PQ_NOMAP PREBUILT PRECEDES PRECEDING PRECISION PRECOMPUTE_SUBQUERY PREDICATE_REORDERS - PREDICTION - PREDICTION_BOUNDS - PREDICTION_COST - PREDICTION_DETAILS - PREDICTION_PROBABILITY - PREDICTION_SET PREPARE PRESENT - PRESENTNNV - PRESENTV PRESERVE PRESERVE_OID - PREVIOUS PRIMARY PRIOR PRIVATE PRIVATE_SGA PRIVILEGE PRIVILEGES PROCEDURAL PROCEDURE PROCESS PROFILE PROGRAM PROJECT PROMPT PROPAGATE PROTECTED PROTECTION PUBLIC PULL_PRED PURGE PUSH_PRED PUSH_SUBQ PX_GRANULE PX_JOIN_FILTER QB_NAME QUERY QUERY_BLOCK QUEUE QUEUE_CURR QUEUE_ROWP QUIESCE QUORUM QUOTA RANDOM RANDOM_LOCAL RANGE - RANK RANKM RAPIDLY - RATIO_TO_REPORT RAW - RAWTOHEX - RAWTONHEX RBA RBO_OUTLINE RDBA READ READS REAL REBALANCE REBUILD RECORDS_PER_BLOCK RECOVER RECOVERABLE RECOVERY RECYCLE RECYCLEBIN REDO REDUCED REDUNDANCY - REF REF_CASCADE_CURSOR REFERENCE REFERENCED REFERENCES REFERENCING REFRESH REFTOHEX - REGEXP_COUNT - REGEXP_INSTR REGEXP_LIKE - REGEXP_REPLACE - REGEXP_SUBSTR REGISTER - REGR_AVGX - REGR_AVGY - REGR_COUNT - REGR_INTERCEPT - REGR_R2 - REGR_SLOPE - REGR_SXX - REGR_SXY - REGR_SYY REGULAR REJECT REKEY RELATIONAL RELY - REMAINDER REMOTE_MAPPED REMOVE RENAME REPAIR REPEAT - REPLACE REPLICATION REQUIRED RESET RESETLOGS RESIZE RESOLVE RESOLVER RESOURCE RESPECT RESTORE RESTORE_AS_INTERVALS RESTRICT RESTRICT_ALL_REF_CONS RESTRICTED RESULT_CACHE RESUMABLE RESUME RETENTION RETRY_ON_ROW_CHANGE - RETURN - RETURNING REUSE REVERSE REVOKE REWRITE REWRITE_OR_ERROR RIGHT ROLE ROLES ROLLBACK ROLLING ROLLUP - ROUND ROW ROWDEPENDENCIES ROWID - ROWIDTOCHAR - ROWIDTONCHAR ROW_LENGTH ROWNUM - ROW_NUMBER ROWS - RPAD - RTRIM RULE RULES SALT SAMPLE SAVE_AS_INTERVALS SAVEPOINT SB4 SCALE SCALE_ROWS SCAN SCAN_INSTANCES SCHEDULER SCHEMA SCHEMACHECK SCN SCN_ASCENDING SCOPE SD_ALL SD_INHIBIT SD_SHOW SEARCH SECOND SECUREFILE SECUREFILE_DBA SECURITY SEED SEG_BLOCK SEG_FILE SEGMENT SELECT SELECTIVITY SEMIJOIN SEMIJOIN_DRIVER SEQUENCE SEQUENCED SEQUENTIAL SERIALIZABLE SERVERERROR SESSION SESSION_CACHED_CURSORS SESSIONS_PER_USER SESSIONTIMEZONE SESSIONTZNAME - SET SETS SETTINGS SET_TO_JOIN SEVERE SHARE SHARED SHARED_POOL SHOW SHRINK SHUTDOWN SIBLINGS SID - SIGN SIGNAL_COMPONENT SIGNAL_FUNCTION SIMPLE - SIN SINGLE SINGLETASK - SINH SIZE SKIP SKIP_EXT_OPTIMIZER SKIP_UNQ_UNUSABLE_IDX SKIP_UNUSABLE_INDEXES SMALLFILE SMALLINT SNAPSHOT SOME SORT - SOUNDEX SOURCE SPACE SPECIFICATION SPFILE SPLIT SPREADSHEET SQL SQLLDR SQL_TRACE - SQRT STALE STANDALONE STANDBY STANDBY_MAX_DATA_DELAY STAR START STAR_TRANSFORMATION STARTUP STATEMENT_ID STATEMENT_QUEUING STATEMENTS STATIC STATISTICS - STATS_BINOMIAL_TEST - STATS_CROSSTAB - STATS_F_TEST - STATS_KS_TEST - STATS_MODE - STATS_MW_TEST - STATS_ONE_WAY_ANOVA - STATS_T_TEST_INDEP - STATS_T_TEST_INDEPU - STATS_T_TEST_ONE - STATS_T_TEST_PAIRED - STATS_WSR_TEST - STDDEV - STDDEV_POP - STDDEV_SAMP STOP STORAGE STORE STREAMS STRICT STRING STRIP STRIPE_COLUMNS STRIPE_WIDTH STRUCTURE SUBMULTISET SUBPARTITION SUBPARTITION_REL SUBPARTITIONS SUBQUERIES SUBQUERY_PRUNING SUBSTITUTABLE - SUBSTR - SUBSTRB - SUBSTRC - SUBSTR2 - SUBSTR4 SUCCESSFUL SUMMARY SUPPLEMENTAL SUSPEND SWAP_JOIN_INPUTS SWITCH SWITCHOVER SYNC SYNCHRONOUS SYNONYM SYSASM SYS_AUDIT SYSAUX SYS_CHECKACL - SYS_CONNECT_BY_PATH - SYS_CONTEXT SYSDBA - SYS_DBURIGEN SYS_DL_CURSOR SYS_DM_RXFORM_CHR SYS_DM_RXFORM_NUM SYS_DOM_COMPARE SYS_DST_PRIM2SEC SYS_DST_SEC2PRIM SYS_ET_BFILE_TO_RAW SYS_ET_BLOB_TO_IMAGE SYS_ET_IMAGE_TO_BLOB SYS_ET_RAW_TO_BFILE SYS_EXTPDTXT - SYS_EXTRACT_UTC SYS_FBT_INSDEL SYS_FILTER_ACLS SYS_GET_ACLIDS SYS_GET_PRIVILEGES SYS_GETTOKENID - SYS_GUID SYS_MAKEXML SYS_MAKE_XMLNODEID SYS_MKXMLATTR SYS_OP_ADTCONS SYS_OP_ADT2BIN SYS_OP_ALSCRVAL SYS_OP_ATG SYS_OP_BIN2ADT SYS_OP_BITVEC SYS_OP_BLOOM_FILTER SYS_OP_BLOOM_FILTER_LIST SYS_OP_BL2R SYS_OP_CAST SYS_OP_CEG SYS_OP_CL2C SYS_OP_COMBINED_HASH SYS_OP_COMP SYS_OP_CONVERT SYS_OP_COUNTCHG SYS_OP_CSCONV SYS_OP_CSCONVTEST SYS_OP_CSR SYS_OP_CSX_PATCH SYS_OP_C2C SYS_OP_DECOMP SYS_OP_DESCEND SYS_OP_DISTINCT SYS_OP_DRA SYS_OP_DUMP SYS_OP_ENFORCE_NOT_NULL$ SYSOPER SYS_OP_EXTRACT SYS_OP_GROUPING SYS_OP_GUID SYS_OP_IIX SYS_OP_ITR SYS_OP_LBID SYS_OP_LOBLOC2BLOB SYS_OP_LOBLOC2CLOB SYS_OP_LOBLOC2ID SYS_OP_LOBLOC2NCLOB SYS_OP_LOBLOC2TYP SYS_OP_LSVI SYS_OP_LVL SYS_OP_MAKEOID SYS_OP_MAP_NONNULL SYS_OP_MSR SYS_OP_NICOMBINE SYS_OP_NIEXTRACT SYS_OP_NII SYS_OP_NIX SYS_OP_NOEXPAND SYS_OP_NTCIMG$ SYS_OP_NUMTORAW SYS_OP_OIDVALUE SYS_OP_OPNSIZE SYS_OP_PAR SYS_OP_PARGID SYS_OP_PARGID_1 SYS_OP_PAR_1 SYS_OP_PIVOT SYS_OP_RAWTONUM SYS_OP_RDTM SYS_OP_REF SYS_OP_RMTD SYS_OP_ROWIDTOOBJ SYS_OP_RPB SYS_OP_R2O SYS_OPTLOBPRBSC SYS_OP_TOSETID SYS_OP_TPR SYS_OP_TRTB SYS_OPTXICMP SYS_OPTXQCASTASNQ SYS_OP_UNDESCEND SYS_OP_VECAND SYS_OP_VECBIT SYS_OP_VECOR SYS_OP_VECXOR SYS_OP_VERSION SYS_OP_VREF SYS_OP_VVD SYS_OP_XPTHATG SYS_OP_XPTHIDX SYS_OP_XPTHOP SYS_OP_XTXT2SQLT SYS_ORDERKEY_DEPTH SYS_ORDERKEY_MAXCHILD SYS_ORDERKEY_PARENT SYS_PARALLEL_TXN SYS_PATHID_IS_ATTR SYS_PATHID_IS_NMSPC SYS_PATHID_LASTNAME SYS_PATHID_LASTNMSPC SYS_PATH_REVERSE SYS_PXQEXTRACT SYS_RID_ORDER SYS_ROW_DELTA SYS_SC_2_XMLT SYS_SYNRCIREDO SYSTEM SYSTEM_DEFINED SYSTIMESTAMP SYS_TYPEID SYS_UMAKEXML SYS_XMLANALYZE SYS_XMLCONTAINS SYS_XMLCONV SYS_XMLEXNSURI - SYS_XMLGEN SYS_XMLI_LOC_ISNODE SYS_XMLI_LOC_ISTEXT SYS_XMLLOCATOR_GETSVAL SYS_XMLNODEID SYS_XMLNODEID_GETCID SYS_XMLNODEID_GETLOCATOR SYS_XMLNODEID_GETOKEY SYS_XMLNODEID_GETPATHID SYS_XMLNODEID_GETPTRID SYS_XMLNODEID_GETRID SYS_XMLNODEID_GETSVAL SYS_XMLNODEID_GETTID SYS_XMLTRANSLATE SYS_XMLTYPE2SQL SYS_XMLT_2_SC SYS_XQ_ASQLCNV SYS_XQ_ATOMCNVCHK SYS_XQBASEURI SYS_XQCASTABLEERRH SYS_XQCODEPEQ SYS_XQCODEP2STR SYS_XQCONCAT SYS_XQCON2SEQ SYS_XQDELETE SYS_XQDFLTCOLATION SYS_XQDOC SYS_XQDOCURI SYS_XQED4URI SYS_XQENDSWITH SYS_XQERR SYS_XQERRH SYS_XQESHTMLURI SYS_XQEXLOBVAL SYS_XQEXSTWRP SYS_XQEXTRACT SYS_XQEXTRREF SYS_XQEXVAL SYS_XQFB2STR SYS_XQFNBOOL SYS_XQFNCMP SYS_XQFNDATIM SYS_XQFNLNAME SYS_XQFNNM SYS_XQFNNSURI SYS_XQFNPREDTRUTH SYS_XQFNQNM SYS_XQFNROOT SYS_XQFORMATNUM SYS_XQFTCONTAIN SYS_XQFUNCR SYS_XQGETCONTENT SYS_XQINDXOF SYS_XQINSERT SYS_XQINSPFX SYS_XQIRI2URI SYS_XQLANG SYS_XQLLNMFRMQNM SYS_XQMKNODEREF SYS_XQNILLED SYS_XQNODENAME SYS_XQNORMSPACE SYS_XQNORMUCODE SYS_XQ_NRNG SYS_XQNSPFRMQNM SYS_XQNSP4PFX SYS_XQPFXFRMQNM SYS_XQ_PKSQL2XML SYS_XQPOLYABS SYS_XQPOLYADD SYS_XQPOLYCEL SYS_XQPOLYCST SYS_XQPOLYCSTBL SYS_XQPOLYDIV SYS_XQPOLYFLR SYS_XQPOLYMOD SYS_XQPOLYMUL SYS_XQPOLYRND SYS_XQPOLYSQRT SYS_XQPOLYSUB SYS_XQPOLYUMUS SYS_XQPOLYUPLS SYS_XQPOLYVEQ SYS_XQPOLYVGE SYS_XQPOLYVGT SYS_XQPOLYVLE SYS_XQPOLYVLT SYS_XQPOLYVNE SYS_XQREF2VAL SYS_XQRENAME SYS_XQREPLACE SYS_XQRESVURI SYS_XQRNDHALF2EVN SYS_XQRSLVQNM SYS_XQRYENVPGET SYS_XQRYVARGET SYS_XQRYWRP SYS_XQSEQDEEPEQ SYS_XQSEQINSB SYS_XQSEQRM SYS_XQSEQRVS SYS_XQSEQSUB SYS_XQSEQTYPMATCH SYS_XQSEQ2CON SYS_XQSEQ2CON4XC SYS_XQSTARTSWITH SYS_XQSTATBURI SYS_XQSTRJOIN SYS_XQSTR2CODEP SYS_XQSUBSTRAFT SYS_XQSUBSTRBEF SYS_XQTOKENIZE SYS_XQTREATAS SYS_XQ_UPKXML2SQL SYS_XQXFORM TABLE TABLES TABLESPACE TABLESPACE_NO TABLE_STATS TABNO TBL$OR$IDX$PART$NUM TEMPFILE TEMPLATE TEMPORARY TEMP_TABLE TEST THAN THE - THEN THREAD THROUGH TIME TIMEOUT TIMES TIMESTAMP TIME_ZONE TIMEZONE_ABBR TIMEZONE_HOUR TIMEZONE_MINUTE TIMEZONE_OFFSET TIMEZONE_REGION TIV_GB TIV_SSF TO TRACE TRACING TRACKING TRAILING TRANSACTION TRANSFORM_DISTINCT_AGG TRANSITION TRANSITIONAL - TRANSLATE - TREAT TRIGGER TRIGGERS - TRIM TRUE - TRUNC TRUNCATE TRUSTED TUNING TX TYPE TYPES - TZ_OFFSET UBA UB2 - UID UNARCHIVED UNBOUND UNBOUNDED UNDEFINE UNDER UNDO UNDROP UNIFORM UNION UNIQUE - UNISTR UNLIMITED UNLOCK UNNEST UNPACKED UNPIVOT UNPROTECTED UNQUIESCE UNRECOVERABLE UNRESTRICTED UNTIL UNUSABLE UNUSED UPDATABLE UPDATE UPDATED - UPDATEXML UPD_INDEXES UPD_JOININDEX UPGRADE UPSERT UROWID USAGE USE USE_ANTI USE_CONCAT USE_HASH USE_HASH_AGGREGATION USE_INVISIBLE_INDEXES USE_MERGE USE_MERGE_CARTESIAN USE_NL USE_NL_WITH_INDEX USE_PRIVATE_OUTLINES USER_DEFINED USERGROUP USER_RECYCLEBIN USERS USE_SEMI USE_STORED_OUTLINES USE_TTT_FOR_GSETS USE_WEAK_NAME_RESL USING VALIDATE VALIDATION - VALUE VALUES - VARIANCE - VAR_POP VARRAYS VARIABLE - VAR_SAMP VARYING VECTOR_READ VECTOR_READ_TRACE VERIFY VERSION VERSIONING VERSIONS VERSIONS_ENDSCN VERSIONS_ENDTIME VERSIONS_OPERATION VERSIONS_STARTSCN VERSIONS_STARTTIME VERSIONS_XID VIEW VIRTUAL VISIBLE VOLUME - VSIZE WAIT WALLET WELLFORMED - WHEN WHENEVER WHERE - WHILE WHITESPACE - WIDTH_BUCKET WITH WITHIN WITHOUT WORK WRAPPED WRITE X_DYN_PRUNE XID XML XMLATTRIBUTES - XMLCAST - XMLCDATA - XMLCOLATTVAL - XMLCOMMENT - XMLCONCAT - XMLDIFF - XML_DML_RWT_STMT - XMLELEMENT - XMLEXISTS XMLEXISTS2 - XMLFOREST + XML_DML_RWT_STMT XMLINDEX_REWRITE XMLINDEX_REWRITE_IN_SELECT XMLINDEX_SEL_IDX_TBL XMLISNODE - XMLISVALID XMLNAMESPACES - XMLPARSE - XMLPATCH - XMLPI - XMLQUERY - XMLROOT XMLSCHEMA - XMLSERIALIZE - XMLTABLE XMLTOOBJECT - XMLTRANSFORM XMLTRANSFORMBLOB XMLTYPE XPATHTABLE XS_SYS_CONTEXT YEAR YES ZONE - - + - - - * - / - || - = - != - ^= - <> - < - <= - > - >= - := - => - ** - .. - ABS ACOS ADD_MONTHS + APPENDCHILDXML ASCII ASCIISTR ASIN ATAN ATAN2 AVG BFILENAME BIN_TO_NUM BITAND CARDINALITY CAST CEIL CHARTOROWID CHR + CLUSTER_ID + CLUSTER_PROBABILITY + CLUSTER_SET COALESCE COLLECT COMPOSE CONCAT CONVERT - CONTAINS CORR CORR_K CORR_S COS COSH COUNT COVAR_POP COVAR_SAMP CUME_DIST CURRENT_DATE CURRENT_TIMESTAMP CV + DATAOBJ_TO_PARTITION DBTIMEZONE DECODE DECOMPOSE + DELETEXML DENSE_RANK DEPTH DEREF DUMP EMPTY_BLOB EMPTY_CLOB EXISTSNODE EXP EXTRACT EXTRACTVALUE + FEATURE_ID + FEATURE_SET + FEATURE_VALUE FIRST FIRST_VALUE FLOOR FROM_TZ GREATEST GROUP_ID GROUPING GROUPING_ID HEXTORAW INITCAP + INSERTCHILDXML + INSERTCHILDXMLAFTER + INSERTCHILDXMLBEFORE + INSERTXMLAFTER + INSERTXMLBEFORE INSTR INSTRB + INSTRC + INSTR2 + INSTR4 + ITERATION_NUMBER LAG LAST LAST_DAY LAST_VALUE LEAD LEAST LENGTH LENGTHB + LENGTHC + LENGTH2 + LENGTH4 + LISTAGG LN LNNVL LOCALTIMESTAMP LOG LOWER LPAD LTRIM MAKE_REF MAX MEDIAN MIN MOD MONTHS_BETWEEN NANVL NCHR NEW_TIME NEXT_DAY NLS_CHARSET_DECL_LEN NLS_CHARSET_ID NLS_CHARSET_NAME NLS_INITCAP NLS_LOWER NLS_UPPER NLSSORT + NTH_VALUE NTILE NULLIF NUMTODSINTERVAL NUMTOYMINTERVAL NVL NVL2 + ORA_DST_AFFECTED + ORA_DST_CONVERT + ORA_DST_ERROR ORA_HASH - ORA_ROWSCN + PATH PERCENT_RANK PERCENTILE_CONT PERCENTILE_DISC POWER POWERMULTISET POWERMULTISET_BY_CARDINALITY + PREDICTION + PREDICTION_BOUNDS + PREDICTION_COST + PREDICTION_DETAILS + PREDICTION_PROBABILITY + PREDICTION_SET PRESENTNNV PRESENTV + PREVIOUS RANK RATIO_TO_REPORT RAWTOHEX RAWTONHEX REF REFTOHEX + REGEXP_COUNT REGEXP_INSTR - REGEXP_LIKE REGEXP_REPLACE REGEXP_SUBSTR REGR_SLOPE REGR_INTERCEPT REGR_COUNT REGR_R2 REGR_AVGX REGR_AVGY REGR_SXX REGR_SYY REGR_SXY REMAINDER + REPLACE ROUND ROW_NUMBER ROWIDTOCHAR ROWIDTONCHAR RPAD RTRIM SCN_TO_TIMESTAMP SESSIONTIMEZONE + SET SIGN SIN SINH SOUNDEX SQRT STATS_BINOMIAL_TEST STATS_CROSSTAB STATS_F_TEST STATS_KS_TEST STATS_MODE STATS_MW_TEST STATS_ONE_WAY_ANOVA STATS_T_TEST_ONE STATS_T_TEST_PAIRED STATS_T_TEST_INDEP STATS_T_TEST_INDEPU STATS_WSR_TEST STDDEV STDDEV_POP STDDEV_SAMP SUBSTR SUBSTRB + SUBSTRC + SUBSTR2 + SUBSTR4 SUM SYS_CONNECT_BY_PATH SYS_CONTEXT SYS_DBURIGEN SYS_EXTRACT_UTC SYS_GUID SYS_TYPEID SYS_XMLAGG SYS_XMLGEN SYSDATE SYSTIMESTAMP TAN TANH TIMESTAMP_TO_SCN TO_BINARY_DOUBLE TO_BINARY_FLOAT + TO_BLOB TO_CHAR TO_CLOB TO_DATE TO_DSINTERVAL TO_LOB TO_MULTI_BYTE TO_NCHAR TO_NCLOB TO_NUMBER TO_SINGLE_BYTE TO_TIMESTAMP TO_TIMESTAMP_TZ TO_YMINTERVAL TRANSLATE TREAT TRIM TRUNC TZ_OFFSET UID UNISTR UPDATEXML UPPER USER USERENV VALUE VAR_POP VAR_SAMP VARIANCE VSIZE WIDTH_BUCKET XMLAGG + XMLCAST + XMLCDATA XMLCOLATTVAL + XMLCOMMENT XMLCONCAT + XMLDIFF XMLELEMENT + XMLEXISTS XMLFOREST + XMLISVALID + XMLPARSE + XMLPATCH + XMLPI + XMLQUERY + XMLROOT XMLSEQUENCE + XMLSERIALIZE + XMLTABLE XMLTRANSFORM ANYDATA ANYDATASET ANYTYPE ARRAY BFILE BINARY BINARY_DOUBLE BINARY_DOUBLE_INFINITY BINARY_DOUBLE_NAN BINARY_FLOAT BINARY_FLOAT_INFINITY BINARY_FLOAT_NAN BLOB BOOLEAN CFILE CHAR CHARACTER CLOB DATE DBURITYPE DEC DECIMAL DOUBLE FLOAT HTTPURITYPE INT INTEGER INTERVAL LOB LONG MLSLABEL NCHAR NCLOB NUMBER NUMERIC NVARCHAR2 OBJECT PLS_INTEGER PRECISION RAW RECORD REFCURSOR REAL ROWID SECOND SINGLE SMALLINT TIME TIMESTAMP URIFACTORYTYPE URITYPE UROWID VARCHAR VARCHAR2 VARYING VARRAY XMLTYPE ZONE - - - - - - - - + + + + + + + + + - + + + + + + + - + - - - - - + + + + + + + - + - + diff --git a/data/syntax/sql-postgresql.xml b/data/syntax/sql-postgresql.xml index 12146f5..6cf5a6a 100644 --- a/data/syntax/sql-postgresql.xml +++ b/data/syntax/sql-postgresql.xml @@ -1,825 +1,1074 @@ - + + + BEGIN + CASE + ELSE + ELSIF + END + EXCEPTION + FOR + IF + LOOP + RETURN + THEN + WHEN + + + AND + BETWEEN + IN + IS + LIKE + NOT + OR + + A ABORT + ABSENT + ABSOLUTE ACCESS + ACCORDING ACTION + ADA ADD ADMIN AFTER AGGREGATE - ALIAS ALL ALLOCATE + ALSO ALTER - ANALYSE + ALWAYS ANALYZE ANY ARE + ARRAY + ARRAY_AGG + ARRAY_MAX_CARDINALITY AS ASC ASENSITIVE ASSERTION ASSIGNMENT ASYMMETRIC AT ATOMIC ATTACH + ATTRIBUTE + ATTRIBUTES AUTHORIZATION BACKWARD + BASE64 BEFORE - BEGIN - BETWEEN + BEGIN_FRAME + BEGIN_PARTITION + BERNOULLI BINARY + BLOB + BLOCKED + BOM BOTH BREADTH BY C CACHE CALL CALLED CARDINALITY CASCADE CASCADED - CASE CAST CATALOG CATALOG_NAME CHAIN CHARACTERISTICS - CHARACTER_LENGTH + CHARACTERS CHARACTER_SET_CATALOG CHARACTER_SET_NAME CHARACTER_SET_SCHEMA - CHAR_LENGTH CHECK - CHECKED CHECKPOINT CLASS CLASS_ORIGIN CLOB CLOSE CLUSTER - COALESCE COBOL COLLATE COLLATION COLLATION_CATALOG COLLATION_NAME COLLATION_SCHEMA + COLLECT COLUMN + COLUMNS COLUMN_NAME COMMAND_FUNCTION COMMAND_FUNCTION_CODE COMMENT + COMMENTS COMMIT COMMITTED - COMPLETION + CONCURRENTLY + CONDITION CONDITION_NUMBER + CONFIGURATION + CONFLICT CONNECT CONNECTION CONNECTION_NAME - CONSTRAINTS CONSTRAINT + CONSTRAINTS CONSTRAINT_CATALOG CONSTRAINT_NAME CONSTRAINT_SCHEMA CONSTRUCTOR CONTAINS + CONTENT CONTINUE - CONVERT + CONTROL + CONVERSION COPY + CORR CORRESPONDING - COUNT + COST + COVAR_POP + COVAR_SAMP CREATE - CREATEDB - CREATEUSER CROSS + CSV CUBE + CUME_DIST CURRENT + CURRENT_CATALOG CURRENT_DATE + CURRENT_DEFAULT_TRANSFORM_GROUP CURRENT_PATH CURRENT_ROLE + CURRENT_ROW CURRENT_TIME CURRENT_TIMESTAMP - CURRENT_USER + CURRENT_TRANSFORM_GROUP_FOR_TYPE CURSOR CURSOR_NAME CYCLE DATA DATABASE - DATE + DATALINK DATETIME_INTERVAL_CODE DATETIME_INTERVAL_PRECISION DAY + DB DEALLOCATE DEC - DECIMAL DECLARE DEFAULT + DEFAULTS DEFERRABLE DEFERRED DEFINED DEFINER + DEGREE DELETE + DELIMITER DELIMITERS + DENSE_RANK + DEPENDS DEPTH DEREF + DERIVED DESC DESCRIBE DESCRIPTOR DESTROY DESTRUCTOR DETACH DETERMINISTIC DIAGNOSTICS DICTIONARY + DISABLE + DISCARD DISCONNECT DISPATCH DISTINCT + DLNEWCOPY + DLPREVIOUSCOPY + DLURLCOMPLETE + DLURLCOMPLETEONLY + DLURLCOMPLETEWRITE + DLURLPATH + DLURLPATHONLY + DLURLPATHWRITE + DLURLSCHEME + DLURLSERVER + DLVALUE DO + DOCUMENT DOMAIN - DOUBLE DROP DYNAMIC DYNAMIC_FUNCTION DYNAMIC_FUNCTION_CODE EACH - ELSE + ELEMENT + EMPTY + ENABLE ENCODING ENCRYPTED - END END-EXEC + END_FRAME + END_PARTITION + ENFORCED + ENUM EQUALS ESCAPE - EVERY + EVENT EXCEPT - EXCEPTION + EXCLUDE + EXCLUDING EXCLUSIVE EXEC EXECUTE - EXISTING EXISTS EXPLAIN + EXPRESSION + EXTENSION EXTERNAL FALSE FETCH + FILE + FILTER FINAL FIRST - FOR + FIRST_VALUE + FLAG + FLOAT + FOLLOWING FORCE FOREIGN FORTRAN FORWARD FOUND + FRAME_ROW FREE FREEZE FROM + FS FULL FUNCTION + FUNCTIONS + FUSION G GENERAL GENERATED GET GLOBAL GO GOTO GRANT GRANTED + GREATEST GROUP GROUPING + GROUPS HANDLER HAVING + HEADER + HEX HIERARCHY HOLD - HOST HOUR + ID IDENTITY IGNORE ILIKE IMMEDIATE + IMMEDIATELY IMMUTABLE IMPLEMENTATION - IN + IMPLICIT + IMPORT + INCLUDING INCREMENT + INDENT INDEX + INDEXES INDICATOR - INFIX + INHERIT INHERITS - INITIALIZE INITIALLY + INLINE INNER INOUT INPUT INSENSITIVE INSERT INSTANCE INSTANTIABLE INSTEAD + INTEGRITY INTERSECT - INTERVAL + INTERSECTION INTO INVOKER - IS ISNULL ISOLATION - ITERATE JOIN K KEY KEY_MEMBER KEY_TYPE - LANCOMPILER + LABEL + LAG LANGUAGE LARGE LAST + LAST_VALUE LATERAL + LEAD LEADING + LEAKPROOF + LEAST LEFT - LENGTH - LESS LEVEL - LIKE + LIBRARY + LIKE_REGEX LIMIT + LINK LISTEN LOAD LOCAL LOCALTIME LOCALTIMESTAMP LOCATION LOCATOR LOCK - LOWER + LOCKED + LOGGED M MAP + MAPPING MATCH - MAX + MATCHED + MATERIALIZED MAXVALUE + MAX_CARDINALITY + MEMBER + MERGE MESSAGE_LENGTH MESSAGE_OCTET_LENGTH MESSAGE_TEXT METHOD - MIN MINUTE MINVALUE - MOD MODE MODIFIES - MODIFY MODULE MONTH MORE MOVE + MULTISET MUMPS NAME NAMES + NAMESPACE NATIONAL NATURAL + NCHAR + NCLOB + NESTING NEW NEXT + NFC + NFD + NFKC + NFKD + NIL NO - NOCREATEDB - NOCREATEUSER NONE - NOT + NORMALIZE + NORMALIZED NOTHING NOTIFY NOTNULL + NOWAIT + NTH_VALUE + NTILE NULL NULLABLE - NULLIF + NULLS NUMBER - NUMERIC OBJECT - OCTET_LENGTH + OCCURRENCES_REGEX + OCTETS OF OFF OFFSET OIDS OLD ON ONLY OPEN - OPERATION OPERATOR OPTION OPTIONS ORDER + ORDERING ORDINALITY + OTHERS OUT OUTER OUTPUT OVER OVERLAPS - OVERLAY OVERRIDING + OWNED OWNER + P PAD + PARALLEL PARAMETER - PARAMETERS PARAMETER_MODE PARAMETER_NAME PARAMETER_ORDINAL_POSITION PARAMETER_SPECIFIC_CATALOG PARAMETER_SPECIFIC_NAME PARAMETER_SPECIFIC_SCHEMA + PARSER PARTIAL PARTITION PASCAL + PASSING + PASSTHROUGH PASSWORD - PATH - PENDANT + PERCENT + PERCENTILE_CONT + PERCENTILE_DISC + PERCENT_RANK + PERIOD + PERMISSION + PLACING + PLANS PLI - POSITION - POSTFIX + POLICY + PORTION + POSITION_REGEX + PRECEDES + PRECEDING PRECISION - PREFIX - PREORDER PREPARE + PREPARED PRESERVE PRIMARY PRIOR PRIVILEGES PROCEDURAL PROCEDURE + PROGRAM PUBLIC RANGE + PUBLICATION + QUOTE + RANGE + RANK READ READS - REAL + REASSIGN + RECHECK + RECOVERY RECURSIVE REF REFERENCES REFERENCING + REFRESH + REGR_AVGX + REGR_AVGY + REGR_COUNT + REGR_INTERCEPT + REGR_R2 + REGR_SLOPE + REGR_SXX + REGR_SXY + REGR_SYY REINDEX RELATIVE + RELEASE RENAME REPEATABLE - REPLACE + REPLICA + REQUIRING RESET + RESPECT + RESTART + RESTORE RESTRICT RESULT - RETURN + RETURNED_CARDINALITY RETURNED_LENGTH RETURNED_OCTET_LENGTH RETURNED_SQLSTATE + RETURNING RETURNS REVOKE RIGHT ROLE ROLLBACK ROLLUP ROUTINE ROUTINE_CATALOG ROUTINE_NAME ROUTINE_SCHEMA ROW ROWS ROW_COUNT + ROW_NUMBER RULE SAVEPOINT SCALE SCHEMA + SCHEMAS SCHEMA_NAME SCOPE + SCOPE_CATALOG + SCOPE_NAME + SCOPE_SCHEMA SCROLL SEARCH SECOND SECTION SECURITY SELECT + SELECTIVE SELF SENSITIVE SEQUENCE + SEQUENCES SERIALIZABLE + SERVER SERVER_NAME SESSION - SESSION_USER SET SETOF SETS SHARE SHOW SIMILAR SIMPLE SIZE + SKIP + SNAPSHOT SOME SOURCE SPACE SPECIFIC SPECIFICTYPE SPECIFIC_NAME SQL SQLCODE SQLERROR SQLEXCEPTION SQLSTATE SQLWARNING STABLE + STANDALONE START STATE STATEMENT STATIC STATISTICS + STDDEV_POP + STDDEV_SAMP STDIN STDOUT + STORAGE + STRICT + STRIP STRUCTURE STYLE SUBCLASS_ORIGIN - SUBLIST - SUBSTRING - SUM + SUBMULTISET + SUBSCRIPTION + SUBSTRING_REGEX + SUCCEEDS SYMMETRIC SYSID SYSTEM + SYSTEM_TIME SYSTEM_USER + T TABLE + TABLES + TABLESAMPLE + TABLESPACE TABLE_NAME TEMP TEMPLATE TEMPORARY - TERMINATE - THAN - THEN + TIES TIMEZONE_HOUR TIMEZONE_MINUTE TO - TOAST + TOKEN + TOP_LEVEL_COUNT TRAILING TRANSACTION TRANSACTIONS_COMMITTED TRANSACTIONS_ROLLED_BACK TRANSACTION_ACTIVE TRANSFORM TRANSFORMS - TRANSLATE + TRANSLATE_REGEX TRANSLATION TREAT TRIGGER TRIGGER_CATALOG TRIGGER_NAME TRIGGER_SCHEMA - TRIM + TRIM_ARRAY TRUE TRUNCATE TRUSTED TYPE + TYPES + UESCAPE + UNBOUNDED UNCOMMITTED UNDER UNENCRYPTED UNION UNIQUE UNKNOWN + UNLINK UNLISTEN + UNLOGGED UNNAMED UNNEST UNTIL + UNTYPED UPDATE - UPPER + URI USAGE USER USER_DEFINED_TYPE_CATALOG + USER_DEFINED_TYPE_CODE USER_DEFINED_TYPE_NAME USER_DEFINED_TYPE_SCHEMA USING VACUUM VALID + VALIDATE + VALIDATOR VALUE VALUES - VARIABLE + VALUE_OF + VARBINARY + VARIADIC VARYING + VAR_POP + VAR_SAMP VERBOSE - VERSION + VERSIONING VIEW + VIEWS VOLATILE - WHEN WHENEVER WHERE - WHILE + WHITESPACE + WINDOW WITH + WITHIN WITHOUT WORK + WRAPPER WRITE + XMLAGG + XMLATTRIBUTES + XMLBINARY + XMLCAST + XMLCOMMENT + XMLCONCAT + XMLDECLARATION + XMLDOCUMENT + XMLELEMENT + XMLEXISTS + XMLFOREST + XMLITERATE + XMLNAMESPACES + XMLPARSE + XMLPI + XMLQUERY + XMLROOT + XMLSCHEMA + XMLSERIALIZE + XMLTABLE + XMLTEXT + XMLVALIDATE YEAR + YES ZONE - - + - - - * - / - || - |/ - ||/ - ! - !! - @ - & - | - # - << - >> - % - ^ - = - != - <> - < - <= - > - >= - ~ - ~* - !~ - !~* - ^= - := - => - ** - .. - AND - OR - NOT - - ## - && - &< - &> - <-> - <^ - >^ - ?# - ?- - ?-| - @-@ - ?| - ?|| - @@ - ~= - - <<= - >>= - ABS CBRT CEIL + CEILING DEGREES EXP FLOOR LN LOG MOD PI POW + POWER RADIANS RANDOM ROUND + SETSEED SIGN SQRT TRUNC + WIDTH_BUCKET ACOS ASIN ATAN ATAN2 COS COT SIN TAN BIT_LENGTH CHAR_LENGTH CHARACTER_LENGTH + CONVERT + GET_BYTE + GET_BIT LOWER OCTET_LENGTH + OVERLAY POSITION + SET_BIT SUBSTRING TRIM UPPER ASCII BTRIM CHR - CONVERT + DECODE + ENCODE INITCAP LENGTH LPAD LTRIM + MD5 PG_CLIENT_ENCODING + QUOTE_IDENT + QUOTE_LITERAL + REGEXP_REPLACE REPEAT + REPLACE RPAD RTRIM + SPLIT_PART STRPOS SUBSTR TO_ASCII + TO_HEX TRANSLATE - ENCODE - DECODE TO_CHAR TO_DATE TO_TIMESTAMP TO_NUMBER AGE DATE_PART DATE_TRUNC EXTRACT ISFINITE + JUSTIFY_HOURS + JUSTIFY_DAYS NOW TIMEOFDAY TIMESTAMP - EXTRACT AREA - BOX CENTER DIAMETER HEIGHT ISCLOSED ISOPEN + NPOINTS PCLOSE - NPOINT POPEN RADIUS WIDTH BOX CIRCLE LSEG PATH POINT POLYGON + + ARRAY_CAT + ARRAY_APPEND + ARRAY_PREPEND + ARRAY_DIMS + ARRAY_LOWER + ARRAY_UPPER + ARRAY_TO_STRING + STRING_TO_ARRAY BROADCAST HOST MASKLEN SET_MASKLEN NETMASK + HOSTMASK NETWORK + TEXT ABBREV + FAMILY NEXTVAL CURRVAL + LASTVAL SETVAL COALESCE NULLIF - - HAS_TABLE_PRIVILEGE - PG_GET_VIEWDEF - PG_GET_RULEDEF - PG_GET_INDEXDEF - PG_GET_USERBYID - OBJ_DESCRIPTION - COL_DESCRIPTION AVG + BIT_AND + BIT_OR + BOOL_AND + BOOL_OR COUNT + EVERY MAX MIN STDDEV SUM VARIANCE + + GENERATE_SERIES + + CURRENT_DATABASE + CURRENT_SCHEMA + CURRENT_SCHEMAS + CURRENT_USER + INET_CLIENT_ADDR + INET_CLIENT_PORT + INET_SERVER_ADDR + INET_SERVER_PORT + SESSION_USER + PG_POSTMASTER_START_TIME + VERSION + + HAS_TABLE_PRIVILEGE + HAS_DATABASE_PRIVILEGE + HAS_FUNCTION_PRIVILEGE + HAS_LANGUAGE_PRIVILEGE + PG_HAS_ROLE + HAS_SCHEMA_PRIVILEGE + HAS_TABLESPACE_PRIVILEGE + + PG_TABLE_IS_VISIBLE + PG_TYPE_IS_VISIBLE + PG_FUNCTION_IS_VISIBLE + PG_OPERATOR_IS_VISIBLE + PG_OPCLASS_IS_VISIBLE + PG_CONVERSION_IS_VISIBLE + + FORMAT_TYPE + PG_GET_CONSTRAINTDEF + PG_GET_EXPR + PG_GET_INDEXDEF + PG_GET_RULEDEF + PG_GET_SERIAL_SEQUENCE + PG_TABLESPACE_DATABASES + PG_GET_TRIGGERDEF + PG_GET_USERBYID + PG_GET_VIEWDEF + + OBJ_DESCRIPTION + COL_DESCRIPTION + + CURRENT_SETTING + SET_CONFIG + + PG_CANCEL_BACKEND + PG_RELOAD_CONF + PG_ROTATE_LOGFILE + + PG_START_BACKUP + PG_STOP_BACKUP + + PG_COLUMN_SIZE + PG_TABLESPACE_SIZE + PG_DATABASE_SIZE + PG_RELATION_SIZE + PG_TOTAL_RELATION_SIZE + PG_SIZE_PRETTY + + PG_LS_DIR + PG_READ_FILE + PG_STAT_FILE BIGINT BIGSERIAL BIT BOOL BOOLEAN BOX BYTEA CHAR CHARACTER CIDR CIRCLE DATE DECIMAL + DOUBLE FLOAT4 FLOAT8 INET INT INT2 INT4 INT8 INTEGER INTERVAL JSON JSONB LINE LSEG - LZTEXT MACADDR MACADDR8 MONEY NUMERIC - OID PATH + PG_LSN POINT POLYGON REAL SERIAL SERIAL2 SERIAL4 SERIAL8 SMALLINT SMALLSERIAL TEXT TIME TIMESTAMP TIMESTAMPTZ TIMETZ TSQUERY TSVECTOR + TXID_SNAPSHOT UUID VARBIT VARCHAR XML - + + + + + + + + + - + - + - - - - - - - + + + + + + + + + - + - - - + + + - + diff --git a/data/syntax/sql.xml b/data/syntax/sql.xml index c7b7335..1e33b86 100644 --- a/data/syntax/sql.xml +++ b/data/syntax/sql.xml @@ -1,959 +1,955 @@ - + + + BEGIN + CASE + ELSE + ELSIF + END + FOR + IF + LOOP + RETURN + THEN + WHEN + WHILE + + + AND + BETWEEN + IN + IS + LIKE + NOT + OR + ACCESS ACCOUNT ADD ADMIN ADMINISTER ADVISE AFTER AGENT ALL ALLOCATE ALL_ROWS ALTER ANALYZE ANCILLARY - AND ANY ARCHIVE ARCHIVELOG AS ASC ASSERTION ASSOCIATE AT ATTRIBUTE ATTRIBUTES AUDIT AUTHENTICATED AUTHID AUTHORIZATION AUTOALLOCATE AUTOEXTEND AUTOMATIC BACKUP BECOME BEFORE - BEGIN BEHALF - BETWEEN BINDING BITMAP BLOCK BLOCK_RANGE BODY BOTH BOUND BREAK BROADCAST BTITLE BUFFER_POOL BUILD BULK BY CACHE CACHE_INSTANCES CALL CANCEL CASCADE - CASE CATEGORY CHAINED CHANGE CHECK CHECKPOINT CHILD CHOOSE CHUNK CLASS CLEAR CLONE CLOSE CLOSE_CACHED_OPEN_CURSORS CLUSTER - COALESCE COLUMN COLUMNS COLUMN_VALUE COMMENT COMMIT COMMITTED COMPATIBILITY COMPILE COMPLETE COMPOSITE_LIMIT COMPRESS COMPUTE CONNECT CONNECT_TIME CONSIDER CONSISTENT CONSTANT CONSTRAINT CONSTRAINTS CONTAINER + CONTAINS CONTENTS CONTEXT CONTINUE CONTROLFILE COPY COST CPU_PER_CALL CPU_PER_SESSION CREATE CREATE_STORED_OUTLINES CROSS CUBE CURRENT CURSOR CYCLE DANGLING DATA DATABASE DATAFILE DATAFILES DBA DDL DEALLOCATE DEBUG DECLARE DEFAULT DEFERRABLE DEFERRED DEFINER DEGREE DELETE DEMAND DESC DETERMINES DICTIONARY DIMENSION DIRECTORY DISABLE DISASSOCIATE DISCONNECT DISKGROUP DISMOUNT DISTINCT DISTRIBUTED DOMAIN DROP DYNAMIC EACH - ELSE - ELSIF EMPTY ENABLE - END ENFORCE ENTRY ESCAPE ESTIMATE EVENTS EXCEPT EXCEPTION EXCEPTIONS EXCHANGE EXCLUDING EXCLUSIVE EXEC EXECUTE EXISTS EXPIRE EXPLAIN EXPLOSION EXTENDS EXTENT EXTENTS EXTERNALLY FAILED_LOGIN_ATTEMPTS FALSE FAST FILE FILTER FIRST_ROWS FLAGGER FLASHBACK FLUSH FOLLOWING - FOR FORCE FOREIGN FREELIST FREELISTS FRESH FROM FULL FUNCTION FUNCTIONS GENERATED GLOBAL GLOBALLY GLOBAL_NAME GRANT GROUP GROUPS HASH HASHKEYS HAVING HEADER HEAP HIERARCHY HOUR ID IDENTIFIED IDENTIFIER IDGENERATORS IDLE_TIME - IF IMMEDIATE - IN INCLUDING INCREMENT INCREMENTAL INDEX INDEXED INDEXES INDEXTYPE INDEXTYPES INDICATOR INITIAL INITIALIZED INITIALLY INITRANS INNER INSERT INSTANCE INSTANCES INSTEAD INTERMEDIATE INTERSECT INTO INVALIDATE - IS ISOLATION ISOLATION_LEVEL JAVA JOIN KEEP KEY KILL LABEL LAYER LEADING LEFT LESS LEVEL LIBRARY - LIKE LIMIT LINK LIST LOCAL LOCATOR LOCK LOCKED LOGFILE LOGGING LOGICAL_READS_PER_CALL LOGICAL_READS_PER_SESSION LOGOFF LOGON - LOOP MANAGE MANAGED MANAGEMENT MASTER MATERIALIZED MAXARCHLOGS MAXDATAFILES MAXEXTENTS MAXINSTANCES MAXLOGFILES MAXLOGHISTORY MAXLOGMEMBERS MAXSIZE MAXTRANS MAXVALUE MEMBER MERGE METHOD MINEXTENTS MINIMIZE MINIMUM MINUS MINUTE MINVALUE MODE MODIFY MONITORING MOUNT MOVE MOVEMENT MTS_DISPATCHERS MULTISET NAMED NATURAL NEEDED NESTED NESTED_TABLE_ID NETWORK NEVER NEW NEXT NLS_CALENDAR NLS_CHARACTERSET NLS_COMP NLS_CURRENCY NLS_DATE_FORMAT NLS_DATE_LANGUAGE NLS_ISO_CURRENCY NLS_LANG NLS_LANGUAGE NLS_NUMERIC_CHARACTERS NLS_SORT NLS_SPECIAL_CHARS NLS_TERRITORY NO NOARCHIVELOG NOAUDIT NOCACHE NOCOMPRESS NOCYCLE NOFORCE NOLOGGING NOMAXVALUE NOMINIMIZE NOMINVALUE NOMONITORING NONE NOORDER NOOVERRIDE NOPARALLEL NORELY NORESETLOGS NOREVERSE NORMAL NOSEGMENT NOSORT - NOT NOTHING NOVALIDATE NOWAIT NULL NULLS OBJNO OBJNO_REUSE OF OFF OFFLINE OID OIDINDEX OLD ON ONLINE ONLY OPCODE OPEN OPERATOR OPTIMAL OPTIMIZER_GOAL OPTION - OR ORDER ORGANIZATION OUT OUTER OUTLINE OVER OVERFLOW OVERLAPS OWN PACKAGE PACKAGES PARALLEL PARAMETERS PARENT PARTITION PARTITIONS PARTITION_HASH PARTITION_RANGE PASSWORD PASSWORD_GRACE_TIME PASSWORD_LIFE_TIME PASSWORD_LOCK_TIME PASSWORD_REUSE_MAX PASSWORD_REUSE_TIME PASSWORD_VERIFY_FUNCTION PCTFREE PCTINCREASE PCTTHRESHOLD PCTUSED PCTVERSION PERCENT PERMANENT PLAN PLSQL_DEBUG POST_TRANSACTION PREBUILT PRECEDING PREPARE PRESENT PRESERVE PREVIOUS PRIMARY PRIOR PRIVATE PRIVATE_SGA PRIVILEGE PRIVILEGES PROCEDURE PROFILE PUBLIC PURGE QUERY QUEUE QUOTA RANDOM RANGE RBA READ READS REBUILD RECORDS_PER_BLOCK RECOVER RECOVERABLE RECOVERY RECYCLE REDUCED REFERENCES REFERENCING REFRESH RELY RENAME REPLACE RESET RESETLOGS RESIZE RESOLVE RESOLVER RESOURCE RESTRICT RESTRICTED RESUME RETURN RETURNING REUSE REVERSE REVOKE REWRITE RIGHT ROLE ROLES ROLLBACK ROLLUP ROW ROWNUM ROWS RULE SAMPLE SAVEPOINT SCAN SCAN_INSTANCES SCHEMA SCN SCOPE SD_ALL SD_INHIBIT SD_SHOW SEGMENT SEG_BLOCK SEG_FILE SELECT SELECTIVITY SEQUENCE SERIALIZABLE SERVERERROR SESSION SESSIONS_PER_USER SESSION_CACHED_CURSORS SET SHARE SHARED SHARED_POOL SHRINK SHUTDOWN SINGLETASK SIZE SKIP SKIP_UNUSABLE_INDEXES SNAPSHOT SOME SORT SOURCE SPECIFICATION SPLIT SQL_TRACE STANDBY START STARTUP STATEMENT_ID STATIC STATISTICS STOP STORAGE STORE STRUCTURE SUBMULTISET SUBPARTITION SUBPARTITIONS SUCCESSFUL SUMMARY SUPPLEMENTAL SUSPEND SWITCH SYNONYM SYSDBA SYSOPER SYSTEM SYS_OP_BITVEC SYS_OP_ENFORCE_NOT_NULL$ SYS_OP_NOEXPAND SYS_OP_NTCIMG$ TABLE TABLES TABLESPACE TABLESPACE_NO TABNO TEMPFILE TEMPORARY THAN THE - THEN THREAD THROUGH TIMEOUT TIMEZONE_HOUR TIMEZONE_MINUTE TIME_ZONE TO TOPLEVEL TRACE TRACING TRAILING TRANSACTION TRANSITIONAL TRIGGER TRIGGERS TRUE TRUNCATE TYPE TYPES UNARCHIVED UNBOUND UNBOUNDED UNDO UNIFORM UNION UNIQUE UNLIMITED UNLOCK UNRECOVERABLE UNTIL UNUSABLE UNUSED UPDATABLE UPDATE UPD_INDEXES UPPPER USAGE USE USER_DEFINED USE_STORED_OUTLINES USING VALIDATE VALIDATION VALUES VIEW - WHEN WHENEVER WHERE - WHILE WITH WITHOUT WORK WRITE - - + - - - * - / - || - = - != - <> - < - <= - > - >= - ~= - ^= - := - => - ** - .. - ABS ACOS ADD_MONTHS ASCII ASCIISTR ASIN ATAN ATAN2 AVG BFILENAME BIN_TO_NUM BITAND CARDINALITY CAST CEIL CHARTOROWID CHR COALESCE COLLECT COMPOSE CONCAT CONVERT CORR CORR_K CORR_S COS COSH COUNT COVAR_POP COVAR_SAMP CUME_DIST CURRENT_DATE CURRENT_TIMESTAMP CV DBTIMEZONE DECODE DECOMPOSE DENSE_RANK DEPTH DEREF DUMP EMPTY_BLOB EMPTY_CLOB EXISTSNODE EXP EXTRACT EXTRACTVALUE FIRST FIRST_VALUE FLOOR FROM_TZ GREATEST GROUP_ID GROUPING GROUPING_ID HEXTORAW INITCAP INSTR INSTRB LAG LAST LAST_DAY LAST_VALUE LEAD LEAST LENGTH LENGTHB LN LNNVL LOCALTIMESTAMP LOG LOWER LPAD LTRIM MAKE_REF MAX MEDIAN MIN MOD MONTHS_BETWEEN NANVL NCHR NEW_TIME NEXT_DAY NLS_CHARSET_DECL_LEN NLS_CHARSET_ID NLS_CHARSET_NAME NLS_INITCAP NLS_LOWER NLS_UPPER NLSSORT NTILE NULLIF NUMTODSINTERVAL NUMTOYMINTERVAL NVL NVL2 ORA_HASH ORA_ROWSCN PERCENT_RANK PERCENTILE_CONT PERCENTILE_DISC POWER POWERMULTISET POWERMULTISET_BY_CARDINALITY PRESENTNNV PRESENTV RANK RATIO_TO_REPORT RAWTOHEX RAWTONHEX REF REFTOHEX REGEXP_INSTR REGEXP_LIKE REGEXP_REPLACE REGEXP_SUBSTR REGR_SLOPE REGR_INTERCEPT REGR_COUNT REGR_R2 REGR_AVGX REGR_AVGY REGR_SXX REGR_SYY REGR_SXY REMAINDER ROUND ROW_NUMBER ROWIDTOCHAR ROWIDTONCHAR RPAD RTRIM SCN_TO_TIMESTAMP SESSIONTIMEZONE SIGN SIN SINH SOUNDEX SQRT STATS_BINOMIAL_TEST STATS_CROSSTAB STATS_F_TEST STATS_KS_TEST STATS_MODE STATS_MW_TEST STATS_ONE_WAY_ANOVA STATS_T_TEST_ONE STATS_T_TEST_PAIRED STATS_T_TEST_INDEP STATS_T_TEST_INDEPU STATS_WSR_TEST STDDEV STDDEV_POP STDDEV_SAMP SUBSTR SUBSTRB SUM SYS_CONNECT_BY_PATH SYS_CONTEXT SYS_DBURIGEN SYS_EXTRACT_UTC SYS_GUID SYS_TYPEID SYS_XMLAGG SYS_XMLGEN SYSDATE SYSTIMESTAMP TAN TANH TIMESTAMP_TO_SCN TO_BINARY_DOUBLE TO_BINARY_FLOAT TO_CHAR TO_CLOB TO_DATE TO_DSINTERVAL TO_LOB TO_MULTI_BYTE TO_NCHAR TO_NCLOB TO_NUMBER TO_SINGLE_BYTE TO_TIMESTAMP TO_TIMESTAMP_TZ TO_YMINTERVAL TRANSLATE TREAT TRIM TRUNC TZ_OFFSET UID UNISTR UPDATEXML UPPER USER USERENV VALUE VAR_POP VAR_SAMP VARIANCE VSIZE WIDTH_BUCKET XMLAGG XMLCOLATTVAL XMLCONCAT XMLELEMENT XMLFOREST XMLSEQUENCE XMLTRANSFORM ANYDATA ANYDATASET ANYTYPE ARRAY BFILE BINARY_DOUBLE BINARY_FLOAT BINARY_INTEGER BLOB BOOLEAN CFILE CHAR CHARACTER CLOB DATE DAY DBURITYPE DEC DECIMAL DOUBLE FLOAT FLOB HTTPURITYPE INT INTEGER INTERVAL LOB LONG MLSLABEL MONTH NATIONAL NCHAR NCLOB NUMBER NUMERIC NVARCHAR OBJECT PLS_INTEGER PRECISION RAW REAL RECORD ROWID SECOND SINGLE SMALLINT TIME TIMESTAMP URIFACTORYTYPE URITYPE UROWID VARCHAR VARCHAR2 VARRAY VARYING XMLTYPE YEAR ZONE - + + + + + + + + + + - - - - - - - - + + + + + + + + + + - + - - - - + + + + - +