refactor: unify the parser generator to antlr4
This commit is contained in:
4
src/grammar/hello/Hello.g4
Normal file
4
src/grammar/hello/Hello.g4
Normal file
@ -0,0 +1,4 @@
|
||||
grammar helloSQL;
|
||||
r: 'hello' ID ;
|
||||
ID: [a-z]+ ;
|
||||
WS: [ \t\r\n]+ -> skip ;
|
3
src/grammar/hive/README.md
Normal file
3
src/grammar/hive/README.md
Normal file
@ -0,0 +1,3 @@
|
||||
# Hive SQL Grammar
|
||||
|
||||
Source file from [Hive Github](https://github.com/apache/hive/tree/master/hplsql/src/main/antlr4/org/apache/hive/hplsql)
|
3
src/grammar/impala/README.md
Normal file
3
src/grammar/impala/README.md
Normal file
@ -0,0 +1,3 @@
|
||||
# Impala SQL Grammar
|
||||
|
||||
SQL-like HiveQL, [Hive Grammar](https://github.com/apache/hive/tree/master/hplsql/src/main/antlr4/org/apache/hive/hplsql)
|
1245
src/grammar/mysql/MySQLLexer.g4
Normal file
1245
src/grammar/mysql/MySQLLexer.g4
Normal file
File diff suppressed because it is too large
Load Diff
2586
src/grammar/mysql/MySQLParser.g4
Normal file
2586
src/grammar/mysql/MySQLParser.g4
Normal file
File diff suppressed because it is too large
Load Diff
3
src/grammar/mysql/README.md
Normal file
3
src/grammar/mysql/README.md
Normal file
@ -0,0 +1,3 @@
|
||||
# MySQL Grammar
|
||||
|
||||
[MySQL Grammar](https://github.com/mysql/mysql-workbench/tree/8.0/library/parsers/grammars)
|
2543
src/grammar/tsql/.antlr/TSqlLexer.interp
Normal file
2543
src/grammar/tsql/.antlr/TSqlLexer.interp
Normal file
File diff suppressed because one or more lines are too long
2178
src/grammar/tsql/.antlr/TSqlParser.interp
Normal file
2178
src/grammar/tsql/.antlr/TSqlParser.interp
Normal file
File diff suppressed because one or more lines are too long
902
src/grammar/tsql/TSqlLexer.g4
Normal file
902
src/grammar/tsql/TSqlLexer.g4
Normal file
@ -0,0 +1,902 @@
|
||||
/*
|
||||
T-SQL (Transact-SQL, MSSQL) grammar.
|
||||
The MIT License (MIT).
|
||||
Copyright (c) 2017, Mark Adams (madams51703@gmail.com)
|
||||
Copyright (c) 2015-2017, Ivan Kochurkin (kvanttt@gmail.com), Positive Technologies.
|
||||
Copyright (c) 2016, Scott Ure (scott@redstormsoftware.com).
|
||||
Copyright (c) 2016, Rui Zhang (ruizhang.ccs@gmail.com).
|
||||
Copyright (c) 2016, Marcus Henriksson (kuseman80@gmail.com).
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
*/
|
||||
|
||||
lexer grammar TSqlLexer;
|
||||
|
||||
// Basic keywords (from https://msdn.microsoft.com/en-us/library/ms189822.aspx)
|
||||
ABSENT: 'ABSENT';
|
||||
ADD: 'ADD';
|
||||
AES: 'AES';
|
||||
ALL: 'ALL';
|
||||
ALLOW_CONNECTIONS: 'ALLOW_CONNECTIONS';
|
||||
ALLOW_MULTIPLE_EVENT_LOSS: 'ALLOW_MULTIPLE_EVENT_LOSS';
|
||||
ALLOW_SINGLE_EVENT_LOSS: 'ALLOW_SINGLE_EVENT_LOSS';
|
||||
ALTER: 'ALTER';
|
||||
AND: 'AND';
|
||||
ANONYMOUS: 'ANONYMOUS';
|
||||
ANY: 'ANY';
|
||||
APPEND: 'APPEND';
|
||||
APPLICATION: 'APPLICATION';
|
||||
AS: 'AS';
|
||||
ASC: 'ASC';
|
||||
ASYMMETRIC: 'ASYMMETRIC';
|
||||
ASYNCHRONOUS_COMMIT: 'ASYNCHRONOUS_COMMIT';
|
||||
AUTHORIZATION: 'AUTHORIZATION';
|
||||
AUTHENTICATION: 'AUTHENTICATION';
|
||||
AUTOMATED_BACKUP_PREFERENCE: 'AUTOMATED_BACKUP_PREFERENCE';
|
||||
AUTOMATIC: 'AUTOMATIC';
|
||||
AVAILABILITY_MODE: 'AVAILABILITY_MODE';
|
||||
BACKSLASH: '\\';
|
||||
BACKUP: 'BACKUP';
|
||||
BEFORE: 'BEFORE';
|
||||
BEGIN: 'BEGIN';
|
||||
BETWEEN: 'BETWEEN';
|
||||
BLOCK: 'BLOCK';
|
||||
BLOCKSIZE: 'BLOCKSIZE';
|
||||
BLOCKING_HIERARCHY: 'BLOCKING_HIERARCHY';
|
||||
BREAK: 'BREAK';
|
||||
BROWSE: 'BROWSE';
|
||||
BUFFER: 'BUFFER';
|
||||
BUFFERCOUNT: 'BUFFERCOUNT';
|
||||
BULK: 'BULK';
|
||||
BY: 'BY';
|
||||
CACHE: 'CACHE';
|
||||
CALLED: 'CALLED';
|
||||
CASCADE: 'CASCADE';
|
||||
CASE: 'CASE';
|
||||
CERTIFICATE: 'CERTIFICATE';
|
||||
CHANGETABLE: 'CHANGETABLE';
|
||||
CHANGES: 'CHANGES';
|
||||
CHECK: 'CHECK';
|
||||
CHECKPOINT: 'CHECKPOINT';
|
||||
CHECK_POLICY: 'CHECK_POLICY';
|
||||
CHECK_EXPIRATION: 'CHECK_EXPIRATION';
|
||||
CLASSIFIER_FUNCTION: 'CLASSIFIER_FUNCTION';
|
||||
CLOSE: 'CLOSE';
|
||||
CLUSTER: 'CLUSTER';
|
||||
CLUSTERED: 'CLUSTERED';
|
||||
COALESCE: 'COALESCE';
|
||||
COLLATE: 'COLLATE';
|
||||
COLUMN: 'COLUMN';
|
||||
COMPRESSION: 'COMPRESSION';
|
||||
COMMIT: 'COMMIT';
|
||||
COMPUTE: 'COMPUTE';
|
||||
CONFIGURATION: 'CONFIGURATION';
|
||||
CONSTRAINT: 'CONSTRAINT';
|
||||
CONTAINMENT: 'CONTAINMENT';
|
||||
CONTAINS: 'CONTAINS';
|
||||
CONTAINSTABLE: 'CONTAINSTABLE';
|
||||
CONTEXT: 'CONTEXT';
|
||||
CONTINUE: 'CONTINUE';
|
||||
CONTINUE_AFTER_ERROR: 'CONTINUE_AFTER_ERROR';
|
||||
CONTRACT: 'CONTRACT';
|
||||
CONTRACT_NAME: 'CONTRACT_NAME';
|
||||
CONVERSATION: 'CONVERSATION';
|
||||
CONVERT: 'TRY_'? 'CONVERT';
|
||||
COPY_ONLY: 'COPY_ONLY';
|
||||
CREATE: 'CREATE';
|
||||
CROSS: 'CROSS';
|
||||
CURRENT: 'CURRENT';
|
||||
CURRENT_DATE: 'CURRENT_DATE';
|
||||
CURRENT_TIME: 'CURRENT_TIME';
|
||||
CURRENT_TIMESTAMP: 'CURRENT_TIMESTAMP';
|
||||
CURRENT_USER: 'CURRENT_USER';
|
||||
CURSOR: 'CURSOR';
|
||||
CYCLE: 'CYCLE';
|
||||
DATA_COMPRESSION: 'DATA_COMPRESSION';
|
||||
DATA_SOURCE: 'DATA_SOURCE';
|
||||
DATABASE: 'DATABASE';
|
||||
DATABASE_MIRRORING: 'DATABASE_MIRRORING';
|
||||
DBCC: 'DBCC';
|
||||
DEALLOCATE: 'DEALLOCATE';
|
||||
DECLARE: 'DECLARE';
|
||||
DEFAULT: 'DEFAULT';
|
||||
DEFAULT_DATABASE: 'DEFAULT_DATABASE';
|
||||
DEFAULT_SCHEMA: 'DEFAULT_SCHEMA';
|
||||
DELETE: 'DELETE';
|
||||
DENY: 'DENY';
|
||||
DESC: 'DESC';
|
||||
DIAGNOSTICS: 'DIAGNOSTICS';
|
||||
DIFFERENTIAL: 'DIFFERENTIAL';
|
||||
DISK: 'DISK';
|
||||
DISTINCT: 'DISTINCT';
|
||||
DISTRIBUTED: 'DISTRIBUTED';
|
||||
DOUBLE: 'DOUBLE';
|
||||
DOUBLE_BACK_SLASH: '\\\\';
|
||||
DOUBLE_FORWARD_SLASH: '//';
|
||||
DROP: 'DROP';
|
||||
DTC_SUPPORT: 'DTC_SUPPORT';
|
||||
DUMP: 'DUMP';
|
||||
ELSE: 'ELSE';
|
||||
ENABLED: 'ENABLED';
|
||||
END: 'END';
|
||||
ENDPOINT: 'ENDPOINT';
|
||||
ERRLVL: 'ERRLVL';
|
||||
ESCAPE: 'ESCAPE';
|
||||
ERROR: 'ERROR';
|
||||
EVENT: 'EVENT';
|
||||
EVENTDATA: 'EVENTDATA' '(' ')';
|
||||
EVENT_RETENTION_MODE: 'EVENT_RETENTION_MODE';
|
||||
EXCEPT: 'EXCEPT';
|
||||
EXECUTABLE_FILE: 'EXECUTABLE_FILE';
|
||||
EXECUTE: 'EXEC' 'UTE'?;
|
||||
EXISTS: 'EXISTS';
|
||||
EXPIREDATE: 'EXPIREDATE';
|
||||
EXIT: 'EXIT';
|
||||
EXTENSION: 'EXTENSION';
|
||||
EXTERNAL: 'EXTERNAL';
|
||||
EXTERNAL_ACCESS: 'EXTERNAL_ACCESS';
|
||||
FAILOVER: 'FAILOVER';
|
||||
FAILURECONDITIONLEVEL: 'FAILURECONDITIONLEVEL';
|
||||
FAN_IN: 'FAN_IN';
|
||||
FETCH: 'FETCH';
|
||||
FILE: 'FILE';
|
||||
FILENAME: 'FILENAME';
|
||||
FILLFACTOR: 'FILLFACTOR';
|
||||
FILE_SNAPSHOT: 'FILE_SNAPSHOT';
|
||||
FOR: 'FOR';
|
||||
FORCESEEK: 'FORCESEEK';
|
||||
FORCE_SERVICE_ALLOW_DATA_LOSS: 'FORCE_SERVICE_ALLOW_DATA_LOSS';
|
||||
FOREIGN: 'FOREIGN';
|
||||
FREETEXT: 'FREETEXT';
|
||||
FREETEXTTABLE: 'FREETEXTTABLE';
|
||||
FROM: 'FROM';
|
||||
FULL: 'FULL';
|
||||
FUNCTION: 'FUNCTION';
|
||||
GET: 'GET';
|
||||
GOTO: 'GOTO';
|
||||
GOVERNOR: 'GOVERNOR';
|
||||
GRANT: 'GRANT';
|
||||
GROUP: 'GROUP';
|
||||
HAVING: 'HAVING';
|
||||
HASHED: 'HASHED';
|
||||
HEALTHCHECKTIMEOUT: 'HEALTHCHECKTIMEOUT';
|
||||
IDENTITY: 'IDENTITY';
|
||||
IDENTITYCOL: 'IDENTITYCOL';
|
||||
IDENTITY_INSERT: 'IDENTITY_INSERT';
|
||||
IF: 'IF';
|
||||
IIF: 'IIF';
|
||||
IN: 'IN';
|
||||
INCLUDE: 'INCLUDE';
|
||||
INCREMENT: 'INCREMENT';
|
||||
INDEX: 'INDEX';
|
||||
INFINITE: 'INFINITE';
|
||||
INIT: 'INIT';
|
||||
INNER: 'INNER';
|
||||
INSERT: 'INSERT';
|
||||
INSTEAD: 'INSTEAD';
|
||||
INTERSECT: 'INTERSECT';
|
||||
INTO: 'INTO';
|
||||
IPV4_ADDR: [']? IPV4_OCTECT DOT IPV4_OCTECT DOT IPV4_OCTECT DOT IPV4_OCTECT [']?;
|
||||
IPV6_ADDR: [']?[0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[']?;
|
||||
IS: 'IS';
|
||||
ISNULL: 'ISNULL';
|
||||
JOIN: 'JOIN';
|
||||
KERBEROS: 'KERBEROS';
|
||||
KEY: 'KEY';
|
||||
KEY_PATH: 'KEY_PATH';
|
||||
KEY_STORE_PROVIDER_NAME: 'KEY_STORE_PROVIDER_NAME';
|
||||
KILL: 'KILL';
|
||||
LANGUAGE: 'LANGUAGE';
|
||||
LEFT: 'LEFT';
|
||||
LIBRARY: 'LIBRARY';
|
||||
LIFETIME: 'LIFETIME';
|
||||
LIKE: 'LIKE';
|
||||
LINENO: 'LINENO';
|
||||
LINUX: 'LINUX';
|
||||
LISTENER_IP: 'LISTENER_IP';
|
||||
LISTENER_PORT: 'LISTENER_PORT';
|
||||
LOAD: 'LOAD';
|
||||
LOCAL_SERVICE_NAME: 'LOCAL_SERVICE_NAME';
|
||||
LOG: 'LOG';
|
||||
MATCHED: 'MATCHED';
|
||||
MASTER: 'MASTER';
|
||||
MAX_MEMORY: 'MAX_MEMORY';
|
||||
MAXTRANSFER: 'MAXTRANSFER';
|
||||
MAXVALUE: 'MAXVALUE';
|
||||
MAX_DISPATCH_LATENCY: 'MAX_DISPATCH_LATENCY';
|
||||
MAX_EVENT_SIZE: 'MAX_EVENT_SIZE';
|
||||
MAX_SIZE: 'MAX_SIZE';
|
||||
MAX_OUTSTANDING_IO_PER_VOLUME: 'MAX_OUTSTANDING_IO_PER_VOLUME';
|
||||
MEDIADESCRIPTION: 'MEDIADESCRIPTION';
|
||||
MEDIANAME: 'MEDIANAME';
|
||||
MEMBER: 'MEMBER';
|
||||
MEMORY_PARTITION_MODE: 'MEMORY_PARTITION_MODE';
|
||||
MERGE: 'MERGE';
|
||||
MESSAGE_FORWARDING: 'MESSAGE_FORWARDING';
|
||||
MESSAGE_FORWARD_SIZE: 'MESSAGE_FORWARD_SIZE';
|
||||
MINVALUE: 'MINVALUE';
|
||||
MIRROR: 'MIRROR';
|
||||
MUST_CHANGE: 'MUST_CHANGE';
|
||||
NATIONAL: 'NATIONAL';
|
||||
NEGOTIATE: 'NEGOTIATE';
|
||||
NOCHECK: 'NOCHECK';
|
||||
NOFORMAT: 'NOFORMAT';
|
||||
NOINIT: 'NOINIT';
|
||||
NONCLUSTERED: 'NONCLUSTERED';
|
||||
NONE: 'NONE';
|
||||
NOREWIND: 'NOREWIND';
|
||||
NOSKIP: 'NOSKIP';
|
||||
NOUNLOAD: 'NOUNLOAD';
|
||||
NO_CHECKSUM: 'NO_CHECKSUM';
|
||||
NO_COMPRESSION: 'NO_COMPRESSION';
|
||||
NO_EVENT_LOSS: 'NO_EVENT_LOSS';
|
||||
NOT: 'NOT';
|
||||
NOTIFICATION: 'NOTIFICATION';
|
||||
NTLM: 'NTLM';
|
||||
NULL: 'NULL';
|
||||
NULLIF: 'NULLIF';
|
||||
OF: 'OF';
|
||||
OFF: 'OFF';
|
||||
OFFSETS: 'OFFSETS';
|
||||
OLD_PASSWORD: 'OLD_PASSWORD';
|
||||
ON: 'ON';
|
||||
ON_FAILURE: 'ON_FAILURE';
|
||||
OPEN: 'OPEN';
|
||||
OPENDATASOURCE: 'OPENDATASOURCE';
|
||||
OPENQUERY: 'OPENQUERY';
|
||||
OPENROWSET: 'OPENROWSET';
|
||||
OPENXML: 'OPENXML';
|
||||
OPTION: 'OPTION';
|
||||
OR: 'OR';
|
||||
ORDER: 'ORDER';
|
||||
OUTER: 'OUTER';
|
||||
OVER: 'OVER';
|
||||
PAGE: 'PAGE';
|
||||
PARAM_NODE: 'PARAM_NODE';
|
||||
PARTIAL: 'PARTIAL';
|
||||
PASSWORD: 'PASSWORD';
|
||||
PERCENT: 'PERCENT';
|
||||
PERMISSION_SET: 'PERMISSION_SET';
|
||||
PER_CPU: 'PER_CPU';
|
||||
PER_DB: 'PER_DB';
|
||||
PER_NODE: 'PER_NODE';
|
||||
PIVOT: 'PIVOT';
|
||||
PLAN: 'PLAN';
|
||||
PLATFORM: 'PLATFORM';
|
||||
POLICY: 'POLICY';
|
||||
PRECISION: 'PRECISION';
|
||||
PREDICATE: 'PREDICATE';
|
||||
PRIMARY: 'PRIMARY';
|
||||
PRINT: 'PRINT';
|
||||
PROC: 'PROC';
|
||||
PROCEDURE: 'PROCEDURE';
|
||||
PROCESS: 'PROCESS';
|
||||
PUBLIC: 'PUBLIC';
|
||||
PYTHON: 'PYTHON';
|
||||
R: 'R';
|
||||
RAISERROR: 'RAISERROR';
|
||||
RAW: 'RAW';
|
||||
READ: 'READ';
|
||||
READTEXT: 'READTEXT';
|
||||
READ_WRITE_FILEGROUPS: 'READ_WRITE_FILEGROUPS';
|
||||
RECONFIGURE: 'RECONFIGURE';
|
||||
REFERENCES: 'REFERENCES';
|
||||
REGENERATE: 'REGENERATE';
|
||||
RELATED_CONVERSATION: 'RELATED_CONVERSATION';
|
||||
RELATED_CONVERSATION_GROUP: 'RELATED_CONVERSATION_GROUP';
|
||||
REPLICATION: 'REPLICATION';
|
||||
REQUIRED: 'REQUIRED';
|
||||
RESET: 'RESET';
|
||||
RESTART: 'RESTART';
|
||||
RESTORE: 'RESTORE';
|
||||
RESTRICT: 'RESTRICT';
|
||||
RESUME: 'RESUME';
|
||||
RETAINDAYS: 'RETAINDAYS';
|
||||
RETURN: 'RETURN';
|
||||
RETURNS: 'RETURNS';
|
||||
REVERT: 'REVERT';
|
||||
REVOKE: 'REVOKE';
|
||||
REWIND: 'REWIND';
|
||||
RIGHT: 'RIGHT';
|
||||
ROLLBACK: 'ROLLBACK';
|
||||
ROLE: 'ROLE';
|
||||
ROWCOUNT: 'ROWCOUNT';
|
||||
ROWGUIDCOL: 'ROWGUIDCOL';
|
||||
RSA_512: 'RSA_512';
|
||||
RSA_1024: 'RSA_1024';
|
||||
RSA_2048: 'RSA_2048';
|
||||
RSA_3072: 'RSA_3072';
|
||||
RSA_4096: 'RSA_4096';
|
||||
SAFETY: 'SAFETY';
|
||||
RULE: 'RULE';
|
||||
SAFE: 'SAFE';
|
||||
SAVE: 'SAVE';
|
||||
SCHEDULER: 'SCHEDULER';
|
||||
SCHEMA: 'SCHEMA';
|
||||
SCHEME: 'SCHEME';
|
||||
SECURITYAUDIT: 'SECURITYAUDIT';
|
||||
SELECT: 'SELECT';
|
||||
SEMANTICKEYPHRASETABLE: 'SEMANTICKEYPHRASETABLE';
|
||||
SEMANTICSIMILARITYDETAILSTABLE: 'SEMANTICSIMILARITYDETAILSTABLE';
|
||||
SEMANTICSIMILARITYTABLE: 'SEMANTICSIMILARITYTABLE';
|
||||
SERVER: 'SERVER';
|
||||
SERVICE: 'SERVICE';
|
||||
SERVICE_BROKER: 'SERVICE_BROKER';
|
||||
SERVICE_NAME: 'SERVICE_NAME';
|
||||
SESSION: 'SESSION';
|
||||
SESSION_USER: 'SESSION_USER';
|
||||
SET: 'SET';
|
||||
SETUSER: 'SETUSER';
|
||||
SHUTDOWN: 'SHUTDOWN';
|
||||
SID: 'SID';
|
||||
SKIP_KEYWORD: 'SKIP';
|
||||
SOFTNUMA: 'SOFTNUMA';
|
||||
SOME: 'SOME';
|
||||
SOURCE: 'SOURCE';
|
||||
SPECIFICATION: 'SPECIFICATION';
|
||||
SPLIT: 'SPLIT';
|
||||
SQLDUMPERFLAGS: 'SQLDUMPERFLAGS';
|
||||
SQLDUMPERPATH: 'SQLDUMPERPATH';
|
||||
SQLDUMPERTIMEOUT: 'SQLDUMPERTIMEOUTS';
|
||||
STATISTICS: 'STATISTICS';
|
||||
STATE: 'STATE';
|
||||
STATS: 'STATS';
|
||||
START: 'START';
|
||||
STARTED: 'STARTED';
|
||||
STARTUP_STATE: 'STARTUP_STATE';
|
||||
STOP: 'STOP';
|
||||
STOPPED: 'STOPPED';
|
||||
STOP_ON_ERROR: 'STOP_ON_ERROR';
|
||||
SUPPORTED: 'SUPPORTED';
|
||||
SYSTEM_USER: 'SYSTEM_USER';
|
||||
TABLE: 'TABLE';
|
||||
TABLESAMPLE: 'TABLESAMPLE';
|
||||
TAPE: 'TAPE';
|
||||
TARGET: 'TARGET';
|
||||
TCP: 'TCP';
|
||||
TEXTSIZE: 'TEXTSIZE';
|
||||
THEN: 'THEN';
|
||||
TO: 'TO';
|
||||
TOP: 'TOP';
|
||||
TRACK_CAUSALITY: 'TRACK_CAUSALITY';
|
||||
TRAN: 'TRAN';
|
||||
TRANSACTION: 'TRANSACTION';
|
||||
TRANSFER: 'TRANSFER';
|
||||
TRIGGER: 'TRIGGER';
|
||||
TRUNCATE: 'TRUNCATE';
|
||||
TSEQUAL: 'TSEQUAL';
|
||||
UNCHECKED: 'UNCHECKED';
|
||||
UNION: 'UNION';
|
||||
UNIQUE: 'UNIQUE';
|
||||
UNLOCK: 'UNLOCK';
|
||||
UNPIVOT: 'UNPIVOT';
|
||||
UNSAFE: 'UNSAFE';
|
||||
UPDATE: 'UPDATE';
|
||||
UPDATETEXT: 'UPDATETEXT';
|
||||
URL: 'URL';
|
||||
USE: 'USE';
|
||||
USED: 'USED';
|
||||
USER: 'USER';
|
||||
VALUES: 'VALUES';
|
||||
VARYING: 'VARYING';
|
||||
VERBOSELOGGING: 'VERBOSELOGGING';
|
||||
VIEW: 'VIEW';
|
||||
VISIBILITY: 'VISIBILITY';
|
||||
WAITFOR: 'WAITFOR';
|
||||
WHEN: 'WHEN';
|
||||
WHERE: 'WHERE';
|
||||
WHILE: 'WHILE';
|
||||
WINDOWS: 'WINDOWS';
|
||||
WITH: 'WITH';
|
||||
WITHIN: 'WITHIN';
|
||||
WITHOUT: 'WITHOUT';
|
||||
WITNESS: 'WITNESS';
|
||||
WRITETEXT: 'WRITETEXT';
|
||||
|
||||
// Additional keywords. They can be id, please keep them in sync with the parser.
|
||||
ABSOLUTE: 'ABSOLUTE';
|
||||
ACCENT_SENSITIVITY: 'ACCENT_SENSITIVITY';
|
||||
ACTION: 'ACTION';
|
||||
ACTIVATION: 'ACTIVATION';
|
||||
ACTIVE: 'ACTIVE';
|
||||
ADDRESS: 'ADDRESS';
|
||||
AES_128: 'AES_128';
|
||||
AES_192: 'AES_192';
|
||||
AES_256: 'AES_256';
|
||||
AFFINITY: 'AFFINITY';
|
||||
AFTER: 'AFTER';
|
||||
AGGREGATE: 'AGGREGATE';
|
||||
ALGORITHM: 'ALGORITHM';
|
||||
ALLOW_ENCRYPTED_VALUE_MODIFICATIONS: 'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS';
|
||||
ALLOW_SNAPSHOT_ISOLATION: 'ALLOW_SNAPSHOT_ISOLATION';
|
||||
ALLOWED: 'ALLOWED';
|
||||
ANSI_NULL_DEFAULT: 'ANSI_NULL_DEFAULT';
|
||||
ANSI_NULLS: 'ANSI_NULLS';
|
||||
ANSI_PADDING: 'ANSI_PADDING';
|
||||
ANSI_WARNINGS: 'ANSI_WARNINGS';
|
||||
APPLICATION_LOG: 'APPLICATION_LOG';
|
||||
APPLY: 'APPLY';
|
||||
ARITHABORT: 'ARITHABORT';
|
||||
ASSEMBLY: 'ASSEMBLY';
|
||||
AUDIT: 'AUDIT';
|
||||
AUDIT_GUID: 'AUDIT_GUID';
|
||||
AUTO: 'AUTO';
|
||||
AUTO_CLEANUP: 'AUTO_CLEANUP';
|
||||
AUTO_CLOSE: 'AUTO_CLOSE';
|
||||
AUTO_CREATE_STATISTICS: 'AUTO_CREATE_STATISTICS';
|
||||
AUTO_SHRINK: 'AUTO_SHRINK';
|
||||
AUTO_UPDATE_STATISTICS: 'AUTO_UPDATE_STATISTICS';
|
||||
AUTO_UPDATE_STATISTICS_ASYNC: 'AUTO_UPDATE_STATISTICS_ASYNC';
|
||||
AVAILABILITY: 'AVAILABILITY';
|
||||
AVG: 'AVG';
|
||||
BACKUP_PRIORITY: 'BACKUP_PRIORITY';
|
||||
BEGIN_DIALOG: 'BEGIN_DIALOG';
|
||||
BIGINT: 'BIGINT';
|
||||
BINARY_BASE64: 'BINARY BASE64';
|
||||
BINARY_CHECKSUM: 'BINARY_CHECKSUM';
|
||||
BINDING: 'BINDING';
|
||||
BLOB_STORAGE: 'BLOB_STORAGE';
|
||||
BROKER: 'BROKER';
|
||||
BROKER_INSTANCE: 'BROKER_INSTANCE';
|
||||
BULK_LOGGED: 'BULK_LOGGED';
|
||||
CALLER: 'CALLER';
|
||||
CAP_CPU_PERCENT: 'CAP_CPU_PERCENT';
|
||||
CAST: 'TRY_'? 'CAST';
|
||||
CATALOG: 'CATALOG';
|
||||
CATCH: 'CATCH';
|
||||
CHANGE_RETENTION: 'CHANGE_RETENTION';
|
||||
CHANGE_TRACKING: 'CHANGE_TRACKING';
|
||||
CHECKSUM: 'CHECKSUM';
|
||||
CHECKSUM_AGG: 'CHECKSUM_AGG';
|
||||
CLEANUP: 'CLEANUP';
|
||||
COLLECTION: 'COLLECTION';
|
||||
COLUMN_MASTER_KEY: 'COLUMN_MASTER_KEY';
|
||||
COMMITTED: 'COMMITTED';
|
||||
COMPATIBILITY_LEVEL: 'COMPATIBILITY_LEVEL';
|
||||
CONCAT: 'CONCAT';
|
||||
CONCAT_NULL_YIELDS_NULL: 'CONCAT_NULL_YIELDS_NULL';
|
||||
CONTENT: 'CONTENT';
|
||||
CONTROL: 'CONTROL';
|
||||
COOKIE: 'COOKIE';
|
||||
COUNT: 'COUNT';
|
||||
COUNT_BIG: 'COUNT_BIG';
|
||||
COUNTER: 'COUNTER';
|
||||
CPU: 'CPU';
|
||||
CREATE_NEW: 'CREATE_NEW';
|
||||
CREATION_DISPOSITION: 'CREATION_DISPOSITION';
|
||||
CREDENTIAL: 'CREDENTIAL';
|
||||
CRYPTOGRAPHIC: 'CRYPTOGRAPHIC';
|
||||
CURSOR_CLOSE_ON_COMMIT: 'CURSOR_CLOSE_ON_COMMIT';
|
||||
CURSOR_DEFAULT: 'CURSOR_DEFAULT';
|
||||
DATA: 'DATA';
|
||||
DATE_CORRELATION_OPTIMIZATION: 'DATE_CORRELATION_OPTIMIZATION';
|
||||
DATEADD: 'DATEADD';
|
||||
DATEDIFF: 'DATEDIFF';
|
||||
DATENAME: 'DATENAME';
|
||||
DATEPART: 'DATEPART';
|
||||
DAYS: 'DAYS';
|
||||
DB_CHAINING: 'DB_CHAINING';
|
||||
DB_FAILOVER: 'DB_FAILOVER';
|
||||
DECRYPTION: 'DECRYPTION';
|
||||
DEFAULT_DOUBLE_QUOTE: ["]'DEFAULT'["];
|
||||
DEFAULT_FULLTEXT_LANGUAGE: 'DEFAULT_FULLTEXT_LANGUAGE';
|
||||
DEFAULT_LANGUAGE: 'DEFAULT_LANGUAGE';
|
||||
DELAY: 'DELAY';
|
||||
DELAYED_DURABILITY: 'DELAYED_DURABILITY';
|
||||
DELETED: 'DELETED';
|
||||
DENSE_RANK: 'DENSE_RANK';
|
||||
DEPENDENTS: 'DEPENDENTS';
|
||||
DES: 'DES';
|
||||
DESCRIPTION: 'DESCRIPTION';
|
||||
DESX: 'DESX';
|
||||
DHCP: 'DHCP';
|
||||
DIALOG: 'DIALOG';
|
||||
DIRECTORY_NAME: 'DIRECTORY_NAME';
|
||||
DISABLE: 'DISABLE';
|
||||
DISABLE_BROKER: 'DISABLE_BROKER';
|
||||
DISABLED: 'DISABLED';
|
||||
DISK_DRIVE: [A-Z][:];
|
||||
DOCUMENT: 'DOCUMENT';
|
||||
DYNAMIC: 'DYNAMIC';
|
||||
ELEMENTS: 'ELEMENTS';
|
||||
EMERGENCY: 'EMERGENCY';
|
||||
EMPTY: 'EMPTY';
|
||||
ENABLE: 'ENABLE';
|
||||
ENABLE_BROKER: 'ENABLE_BROKER';
|
||||
ENCRYPTED_VALUE: 'ENCRYPTED_VALUE';
|
||||
ENCRYPTION: 'ENCRYPTION';
|
||||
ENDPOINT_URL: 'ENDPOINT_URL';
|
||||
ERROR_BROKER_CONVERSATIONS: 'ERROR_BROKER_CONVERSATIONS';
|
||||
EXCLUSIVE: 'EXCLUSIVE';
|
||||
EXECUTABLE: 'EXECUTABLE';
|
||||
EXIST: 'EXIST';
|
||||
EXPAND: 'EXPAND';
|
||||
EXPIRY_DATE: 'EXPIRY_DATE';
|
||||
EXPLICIT: 'EXPLICIT';
|
||||
FAIL_OPERATION: 'FAIL_OPERATION';
|
||||
FAILOVER_MODE: 'FAILOVER_MODE';
|
||||
FAILURE: 'FAILURE';
|
||||
FAILURE_CONDITION_LEVEL: 'FAILURE_CONDITION_LEVEL';
|
||||
FAST: 'FAST';
|
||||
FAST_FORWARD: 'FAST_FORWARD';
|
||||
FILEGROUP: 'FILEGROUP';
|
||||
FILEGROWTH: 'FILEGROWTH';
|
||||
FILEPATH: 'FILEPATH';
|
||||
FILESTREAM: 'FILESTREAM';
|
||||
FILTER: 'FILTER';
|
||||
FIRST: 'FIRST';
|
||||
FIRST_VALUE: 'FIRST_VALUE';
|
||||
FOLLOWING: 'FOLLOWING';
|
||||
FORCE: 'FORCE';
|
||||
FORCE_FAILOVER_ALLOW_DATA_LOSS: 'FORCE_FAILOVER_ALLOW_DATA_LOSS';
|
||||
FORCED: 'FORCED';
|
||||
FORMAT: 'FORMAT';
|
||||
FORWARD_ONLY: 'FORWARD_ONLY';
|
||||
FULLSCAN: 'FULLSCAN';
|
||||
FULLTEXT: 'FULLTEXT';
|
||||
GB: 'GB';
|
||||
GETDATE: 'GETDATE';
|
||||
GETUTCDATE: 'GETUTCDATE';
|
||||
GLOBAL: 'GLOBAL';
|
||||
GO: 'GO';
|
||||
GROUP_MAX_REQUESTS: 'GROUP_MAX_REQUESTS';
|
||||
GROUPING: 'GROUPING';
|
||||
GROUPING_ID: 'GROUPING_ID';
|
||||
HADR: 'HADR';
|
||||
HASH: 'HASH';
|
||||
HEALTH_CHECK_TIMEOUT: 'HEALTH_CHECK_TIMEOUT';
|
||||
HIGH: 'HIGH';
|
||||
HONOR_BROKER_PRIORITY: 'HONOR_BROKER_PRIORITY';
|
||||
HOURS: 'HOURS';
|
||||
IDENTITY_VALUE: 'IDENTITY_VALUE';
|
||||
IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX: 'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX';
|
||||
IMMEDIATE: 'IMMEDIATE';
|
||||
IMPERSONATE: 'IMPERSONATE';
|
||||
IMPORTANCE: 'IMPORTANCE';
|
||||
INCLUDE_NULL_VALUES: 'INCLUDE_NULL_VALUES';
|
||||
INCREMENTAL: 'INCREMENTAL';
|
||||
INITIATOR: 'INITIATOR';
|
||||
INPUT: 'INPUT';
|
||||
INSENSITIVE: 'INSENSITIVE';
|
||||
INSERTED: 'INSERTED';
|
||||
INT: 'INT';
|
||||
IP: 'IP';
|
||||
ISOLATION: 'ISOLATION';
|
||||
JOB: 'JOB';
|
||||
JSON: 'JSON';
|
||||
KB: 'KB';
|
||||
KEEP: 'KEEP';
|
||||
KEEPFIXED: 'KEEPFIXED';
|
||||
KEY_SOURCE: 'KEY_SOURCE';
|
||||
KEYS: 'KEYS';
|
||||
KEYSET: 'KEYSET';
|
||||
LAG: 'LAG';
|
||||
LAST: 'LAST';
|
||||
LAST_VALUE: 'LAST_VALUE';
|
||||
LEAD: 'LEAD';
|
||||
LEVEL: 'LEVEL';
|
||||
LIST: 'LIST';
|
||||
LISTENER: 'LISTENER';
|
||||
LISTENER_URL: 'LISTENER_URL';
|
||||
LOB_COMPACTION: 'LOB_COMPACTION';
|
||||
LOCAL: 'LOCAL';
|
||||
LOCATION: 'LOCATION';
|
||||
LOCK: 'LOCK';
|
||||
LOCK_ESCALATION: 'LOCK_ESCALATION';
|
||||
LOGIN: 'LOGIN';
|
||||
LOOP: 'LOOP';
|
||||
LOW: 'LOW';
|
||||
MANUAL: 'MANUAL';
|
||||
MARK: 'MARK';
|
||||
MATERIALIZED: 'MATERIALIZED';
|
||||
MAX: 'MAX';
|
||||
MAX_CPU_PERCENT: 'MAX_CPU_PERCENT';
|
||||
MAX_DOP: 'MAX_DOP';
|
||||
MAX_FILES: 'MAX_FILES';
|
||||
MAX_IOPS_PER_VOLUME: 'MAX_IOPS_PER_VOLUME';
|
||||
MAX_MEMORY_PERCENT: 'MAX_MEMORY_PERCENT';
|
||||
MAX_PROCESSES: 'MAX_PROCESSES';
|
||||
MAX_QUEUE_READERS: 'MAX_QUEUE_READERS';
|
||||
MAX_ROLLOVER_FILES: 'MAX_ROLLOVER_FILES';
|
||||
MAXDOP: 'MAXDOP';
|
||||
MAXRECURSION: 'MAXRECURSION';
|
||||
MAXSIZE: 'MAXSIZE';
|
||||
MB: 'MB';
|
||||
MEDIUM: 'MEDIUM';
|
||||
MEMORY_OPTIMIZED_DATA: 'MEMORY_OPTIMIZED_DATA';
|
||||
MESSAGE: 'MESSAGE';
|
||||
MIN: 'MIN';
|
||||
MIN_ACTIVE_ROWVERSION: 'MIN_ACTIVE_ROWVERSION';
|
||||
MIN_CPU_PERCENT: 'MIN_CPU_PERCENT';
|
||||
MIN_IOPS_PER_VOLUME: 'MIN_IOPS_PER_VOLUME';
|
||||
MIN_MEMORY_PERCENT: 'MIN_MEMORY_PERCENT';
|
||||
MINUTES: 'MINUTES';
|
||||
MIRROR_ADDRESS: 'MIRROR_ADDRESS';
|
||||
MIXED_PAGE_ALLOCATION: 'MIXED_PAGE_ALLOCATION';
|
||||
MODE: 'MODE';
|
||||
MODIFY: 'MODIFY';
|
||||
MOVE: 'MOVE';
|
||||
MULTI_USER: 'MULTI_USER';
|
||||
NAME: 'NAME';
|
||||
NESTED_TRIGGERS: 'NESTED_TRIGGERS';
|
||||
NEW_ACCOUNT: 'NEW_ACCOUNT';
|
||||
NEW_BROKER: 'NEW_BROKER';
|
||||
NEW_PASSWORD: 'NEW_PASSWORD';
|
||||
NEXT: 'NEXT';
|
||||
NO: 'NO';
|
||||
NO_TRUNCATE: 'NO_TRUNCATE';
|
||||
NO_WAIT: 'NO_WAIT';
|
||||
NOCOUNT: 'NOCOUNT';
|
||||
NODES: 'NODES';
|
||||
NOEXPAND: 'NOEXPAND';
|
||||
NON_TRANSACTED_ACCESS: 'NON_TRANSACTED_ACCESS';
|
||||
NORECOMPUTE: 'NORECOMPUTE';
|
||||
NORECOVERY: 'NORECOVERY';
|
||||
NOWAIT: 'NOWAIT';
|
||||
NTILE: 'NTILE';
|
||||
NUMANODE: 'NUMANODE';
|
||||
NUMBER: 'NUMBER';
|
||||
NUMERIC_ROUNDABORT: 'NUMERIC_ROUNDABORT';
|
||||
OBJECT: 'OBJECT';
|
||||
OFFLINE: 'OFFLINE';
|
||||
OFFSET: 'OFFSET';
|
||||
OLD_ACCOUNT: 'OLD_ACCOUNT';
|
||||
ONLINE: 'ONLINE';
|
||||
ONLY: 'ONLY';
|
||||
OPEN_EXISTING: 'OPEN_EXISTING';
|
||||
OPTIMISTIC: 'OPTIMISTIC';
|
||||
OPTIMIZE: 'OPTIMIZE';
|
||||
OUT: 'OUT';
|
||||
OUTPUT: 'OUTPUT';
|
||||
OVERRIDE: 'OVERRIDE';
|
||||
OWNER: 'OWNER';
|
||||
PAGE_VERIFY: 'PAGE_VERIFY';
|
||||
PARAMETERIZATION: 'PARAMETERIZATION';
|
||||
PARTITION: 'PARTITION';
|
||||
PARTITIONS: 'PARTITIONS';
|
||||
PARTNER: 'PARTNER';
|
||||
PATH: 'PATH';
|
||||
POISON_MESSAGE_HANDLING: 'POISON_MESSAGE_HANDLING';
|
||||
POOL: 'POOL';
|
||||
PORT: 'PORT';
|
||||
PRECEDING: 'PRECEDING';
|
||||
PRIMARY_ROLE: 'PRIMARY_ROLE';
|
||||
PRIOR: 'PRIOR';
|
||||
PRIORITY: 'PRIORITY';
|
||||
PRIORITY_LEVEL: 'PRIORITY_LEVEL';
|
||||
PRIVATE: 'PRIVATE';
|
||||
PRIVATE_KEY: 'PRIVATE_KEY';
|
||||
PRIVILEGES: 'PRIVILEGES';
|
||||
PROCEDURE_NAME: 'PROCEDURE_NAME';
|
||||
PROPERTY: 'PROPERTY';
|
||||
PROVIDER: 'PROVIDER';
|
||||
PROVIDER_KEY_NAME: 'PROVIDER_KEY_NAME';
|
||||
QUERY: 'QUERY';
|
||||
QUEUE: 'QUEUE';
|
||||
QUEUE_DELAY: 'QUEUE_DELAY';
|
||||
QUOTED_IDENTIFIER: 'QUOTED_IDENTIFIER';
|
||||
RANGE: 'RANGE';
|
||||
RANK: 'RANK';
|
||||
RC2: 'RC2';
|
||||
RC4: 'RC4';
|
||||
RC4_128: 'RC4_128';
|
||||
READ_COMMITTED_SNAPSHOT: 'READ_COMMITTED_SNAPSHOT';
|
||||
READ_ONLY: 'READ_ONLY';
|
||||
READ_ONLY_ROUTING_LIST: 'READ_ONLY_ROUTING_LIST';
|
||||
READ_WRITE: 'READ_WRITE';
|
||||
READONLY: 'READONLY';
|
||||
REBUILD: 'REBUILD';
|
||||
RECEIVE: 'RECEIVE';
|
||||
RECOMPILE: 'RECOMPILE';
|
||||
RECOVERY: 'RECOVERY';
|
||||
RECURSIVE_TRIGGERS: 'RECURSIVE_TRIGGERS';
|
||||
RELATIVE: 'RELATIVE';
|
||||
REMOTE: 'REMOTE';
|
||||
REMOTE_SERVICE_NAME: 'REMOTE_SERVICE_NAME';
|
||||
REMOVE: 'REMOVE';
|
||||
REORGANIZE: 'REORGANIZE';
|
||||
REPEATABLE: 'REPEATABLE';
|
||||
REPLICA: 'REPLICA';
|
||||
REQUEST_MAX_CPU_TIME_SEC: 'REQUEST_MAX_CPU_TIME_SEC';
|
||||
REQUEST_MAX_MEMORY_GRANT_PERCENT: 'REQUEST_MAX_MEMORY_GRANT_PERCENT';
|
||||
REQUEST_MEMORY_GRANT_TIMEOUT_SEC: 'REQUEST_MEMORY_GRANT_TIMEOUT_SEC';
|
||||
REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT: 'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT';
|
||||
RESERVE_DISK_SPACE: 'RESERVE_DISK_SPACE';
|
||||
RESOURCE: 'RESOURCE';
|
||||
RESOURCE_MANAGER_LOCATION: 'RESOURCE_MANAGER_LOCATION';
|
||||
RESTRICTED_USER: 'RESTRICTED_USER';
|
||||
RETENTION: 'RETENTION';
|
||||
ROBUST: 'ROBUST';
|
||||
ROOT: 'ROOT';
|
||||
ROUTE: 'ROUTE';
|
||||
ROW: 'ROW';
|
||||
ROW_NUMBER: 'ROW_NUMBER';
|
||||
ROWGUID: 'ROWGUID';
|
||||
ROWS: 'ROWS';
|
||||
SAMPLE: 'SAMPLE';
|
||||
SCHEMABINDING: 'SCHEMABINDING';
|
||||
SCOPED: 'SCOPED';
|
||||
SCROLL: 'SCROLL';
|
||||
SCROLL_LOCKS: 'SCROLL_LOCKS';
|
||||
SEARCH: 'SEARCH';
|
||||
SECONDARY: 'SECONDARY';
|
||||
SECONDARY_ONLY: 'SECONDARY_ONLY';
|
||||
SECONDARY_ROLE: 'SECONDARY_ROLE';
|
||||
SECONDS: 'SECONDS';
|
||||
SECRET: 'SECRET';
|
||||
SECURITY: 'SECURITY';
|
||||
SECURITY_LOG: 'SECURITY_LOG';
|
||||
SEEDING_MODE: 'SEEDING_MODE';
|
||||
SELF: 'SELF';
|
||||
SEMI_SENSITIVE: 'SEMI_SENSITIVE';
|
||||
SEND: 'SEND';
|
||||
SENT: 'SENT';
|
||||
SEQUENCE: 'SEQUENCE';
|
||||
SERIALIZABLE: 'SERIALIZABLE';
|
||||
SESSION_TIMEOUT: 'SESSION_TIMEOUT';
|
||||
SETERROR: 'SETERROR';
|
||||
SHARE: 'SHARE';
|
||||
SHOWPLAN: 'SHOWPLAN';
|
||||
SIGNATURE: 'SIGNATURE';
|
||||
SIMPLE: 'SIMPLE';
|
||||
SINGLE_USER: 'SINGLE_USER';
|
||||
SIZE: 'SIZE';
|
||||
SMALLINT: 'SMALLINT';
|
||||
SNAPSHOT: 'SNAPSHOT';
|
||||
SPATIAL_WINDOW_MAX_CELLS: 'SPATIAL_WINDOW_MAX_CELLS';
|
||||
STANDBY: 'STANDBY';
|
||||
START_DATE: 'START_DATE';
|
||||
STATIC: 'STATIC';
|
||||
STATS_STREAM: 'STATS_STREAM';
|
||||
STATUS: 'STATUS';
|
||||
STATUSONLY: 'STATUSONLY';
|
||||
STDEV: 'STDEV';
|
||||
STDEVP: 'STDEVP';
|
||||
STOPLIST: 'STOPLIST';
|
||||
STRING_AGG: 'STRING_AGG';
|
||||
STUFF: 'STUFF';
|
||||
SUBJECT: 'SUBJECT';
|
||||
SUBSCRIPTION: 'SUBSCRIPTION';
|
||||
SUM: 'SUM';
|
||||
SUSPEND: 'SUSPEND';
|
||||
SYMMETRIC: 'SYMMETRIC';
|
||||
SYNCHRONOUS_COMMIT: 'SYNCHRONOUS_COMMIT';
|
||||
SYNONYM: 'SYNONYM';
|
||||
SYSTEM: 'SYSTEM';
|
||||
TAKE: 'TAKE';
|
||||
TARGET_RECOVERY_TIME: 'TARGET_RECOVERY_TIME';
|
||||
TB: 'TB';
|
||||
TEXTIMAGE_ON: 'TEXTIMAGE_ON';
|
||||
THROW: 'THROW';
|
||||
TIES: 'TIES';
|
||||
TIME: 'TIME';
|
||||
TIMEOUT: 'TIMEOUT';
|
||||
TIMER: 'TIMER';
|
||||
TINYINT: 'TINYINT';
|
||||
TORN_PAGE_DETECTION: 'TORN_PAGE_DETECTION';
|
||||
TRANSFORM_NOISE_WORDS: 'TRANSFORM_NOISE_WORDS';
|
||||
TRIPLE_DES: 'TRIPLE_DES';
|
||||
TRIPLE_DES_3KEY: 'TRIPLE_DES_3KEY';
|
||||
TRUSTWORTHY: 'TRUSTWORTHY';
|
||||
TRY: 'TRY';
|
||||
TSQL: 'TSQL';
|
||||
TWO_DIGIT_YEAR_CUTOFF: 'TWO_DIGIT_YEAR_CUTOFF';
|
||||
TYPE: 'TYPE';
|
||||
TYPE_WARNING: 'TYPE_WARNING';
|
||||
UNBOUNDED: 'UNBOUNDED';
|
||||
UNCOMMITTED: 'UNCOMMITTED';
|
||||
UNKNOWN: 'UNKNOWN';
|
||||
UNLIMITED: 'UNLIMITED';
|
||||
UOW: 'UOW';
|
||||
USING: 'USING';
|
||||
VALID_XML: 'VALID_XML';
|
||||
VALIDATION: 'VALIDATION';
|
||||
VALUE: 'VALUE';
|
||||
VAR: 'VAR';
|
||||
VARP: 'VARP';
|
||||
VIEW_METADATA: 'VIEW_METADATA';
|
||||
VIEWS: 'VIEWS';
|
||||
WAIT: 'WAIT';
|
||||
WELL_FORMED_XML: 'WELL_FORMED_XML';
|
||||
WITHOUT_ARRAY_WRAPPER: 'WITHOUT_ARRAY_WRAPPER';
|
||||
WORK: 'WORK';
|
||||
WORKLOAD: 'WORKLOAD';
|
||||
XML: 'XML';
|
||||
XMLDATA: 'XMLDATA';
|
||||
XMLNAMESPACES: 'XMLNAMESPACES';
|
||||
XMLSCHEMA: 'XMLSCHEMA';
|
||||
XSINIL: 'XSINIL';
|
||||
|
||||
DOLLAR_ACTION: '$ACTION';
|
||||
|
||||
SPACE: [ \t\r\n]+ -> skip;
|
||||
// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/slash-star-comment-transact-sql
|
||||
COMMENT: '/*' (COMMENT | .)*? '*/' -> channel(HIDDEN);
|
||||
LINE_COMMENT: '--' ~[\r\n]* -> channel(HIDDEN);
|
||||
|
||||
// TODO: ID can be not only Latin.
|
||||
DOUBLE_QUOTE_ID: '"' ~'"'+ '"';
|
||||
SINGLE_QUOTE: '\'';
|
||||
SQUARE_BRACKET_ID: '[' ~']'+ ']';
|
||||
LOCAL_ID: '@' ([A-Z_$@#0-9] | FullWidthLetter)+;
|
||||
DECIMAL: DEC_DIGIT+;
|
||||
ID: ( [A-Z_#] | FullWidthLetter) ( [A-Z_#$@0-9] | FullWidthLetter )*;
|
||||
QUOTED_URL: '\''([A-Z][A-Z]+[:]) '//'(([A-Z]+[.]|[A-Z]+)|IPV4_ADDR) [:] DECIMAL '\'';
|
||||
QUOTED_HOST_AND_PORT:'\''(([A-Z]+[.]|[A-Z]+)|IPV4_ADDR) ([:] DECIMAL) '\'';
|
||||
STRING: 'N'? '\'' (~'\'' | '\'\'')* '\'';
|
||||
BINARY: '0' 'X' HEX_DIGIT*;
|
||||
FLOAT: DEC_DOT_DEC;
|
||||
REAL: (DECIMAL | DEC_DOT_DEC) ('E' [+-]? DEC_DIGIT+);
|
||||
|
||||
EQUAL: '=';
|
||||
|
||||
GREATER: '>';
|
||||
LESS: '<';
|
||||
EXCLAMATION: '!';
|
||||
|
||||
PLUS_ASSIGN: '+=';
|
||||
MINUS_ASSIGN: '-=';
|
||||
MULT_ASSIGN: '*=';
|
||||
DIV_ASSIGN: '/=';
|
||||
MOD_ASSIGN: '%=';
|
||||
AND_ASSIGN: '&=';
|
||||
XOR_ASSIGN: '^=';
|
||||
OR_ASSIGN: '|=';
|
||||
|
||||
DOUBLE_BAR: '||';
|
||||
DOT: '.';
|
||||
UNDERLINE: '_';
|
||||
AT: '@';
|
||||
SHARP: '#';
|
||||
DOLLAR: '$';
|
||||
LR_BRACKET: '(';
|
||||
RR_BRACKET: ')';
|
||||
COMMA: ',';
|
||||
SEMI: ';';
|
||||
COLON: ':';
|
||||
STAR: '*';
|
||||
DIVIDE: '/';
|
||||
MODULE: '%';
|
||||
PLUS: '+';
|
||||
MINUS: '-';
|
||||
BIT_NOT: '~';
|
||||
BIT_OR: '|';
|
||||
BIT_AND: '&';
|
||||
BIT_XOR: '^';
|
||||
|
||||
fragment LETTER: [A-Z_];
|
||||
fragment IPV6_OCTECT: [0-9A-F][0-9A-F][0-9A-F][0-9A-F];
|
||||
IPV4_OCTECT: [0-9]?[0-9]?[0-9];
|
||||
fragment DEC_DOT_DEC: (DEC_DIGIT+ '.' DEC_DIGIT+ | DEC_DIGIT+ '.' | '.' DEC_DIGIT+);
|
||||
fragment HEX_DIGIT: [0-9A-F];
|
||||
fragment DEC_DIGIT: [0-9];
|
||||
|
||||
fragment FullWidthLetter
|
||||
: '\u00c0'..'\u00d6'
|
||||
| '\u00d8'..'\u00f6'
|
||||
| '\u00f8'..'\u00ff'
|
||||
| '\u0100'..'\u1fff'
|
||||
| '\u2c00'..'\u2fff'
|
||||
| '\u3040'..'\u318f'
|
||||
| '\u3300'..'\u337f'
|
||||
| '\u3400'..'\u3fff'
|
||||
| '\u4e00'..'\u9fff'
|
||||
| '\ua000'..'\ud7ff'
|
||||
| '\uf900'..'\ufaff'
|
||||
| '\uff00'..'\ufff0'
|
||||
// | '\u10000'..'\u1F9FF' //not support four bytes chars
|
||||
// | '\u20000'..'\u2FA1F'
|
||||
;
|
4072
src/grammar/tsql/TSqlParser.g4
Normal file
4072
src/grammar/tsql/TSqlParser.g4
Normal file
File diff suppressed because it is too large
Load Diff
8175
src/grammar/tsql/parser/TSqlLexer.js
Normal file
8175
src/grammar/tsql/parser/TSqlLexer.js
Normal file
File diff suppressed because it is too large
Load Diff
1657
src/grammar/tsql/parser/TSqlLexer.tokens
Normal file
1657
src/grammar/tsql/parser/TSqlLexer.tokens
Normal file
File diff suppressed because it is too large
Load Diff
126333
src/grammar/tsql/parser/TSqlParser.js
Normal file
126333
src/grammar/tsql/parser/TSqlParser.js
Normal file
File diff suppressed because one or more lines are too long
1657
src/grammar/tsql/parser/TSqlParser.tokens
Normal file
1657
src/grammar/tsql/parser/TSqlParser.tokens
Normal file
File diff suppressed because it is too large
Load Diff
4632
src/grammar/tsql/parser/TSqlParserListener.js
Normal file
4632
src/grammar/tsql/parser/TSqlParserListener.js
Normal file
File diff suppressed because it is too large
Load Diff
3094
src/grammar/tsql/parser/TSqlParserVisitor.js
Normal file
3094
src/grammar/tsql/parser/TSqlParserVisitor.js
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user