aboutsummaryrefslogtreecommitdiffstats
path: root/debug_toolbar/utils/sqlparse/keywords.py
diff options
context:
space:
mode:
Diffstat (limited to 'debug_toolbar/utils/sqlparse/keywords.py')
-rw-r--r--debug_toolbar/utils/sqlparse/keywords.py590
1 files changed, 590 insertions, 0 deletions
diff --git a/debug_toolbar/utils/sqlparse/keywords.py b/debug_toolbar/utils/sqlparse/keywords.py
new file mode 100644
index 0000000..cada139
--- /dev/null
+++ b/debug_toolbar/utils/sqlparse/keywords.py
@@ -0,0 +1,590 @@
+from debug_toolbar.utils.sqlparse.tokens import *
+
+KEYWORDS = {
+ 'ABORT': Keyword,
+ 'ABS': Keyword,
+ 'ABSOLUTE': Keyword,
+ 'ACCESS': Keyword,
+ 'ADA': Keyword,
+ 'ADD': Keyword,
+ 'ADMIN': Keyword,
+ 'AFTER': Keyword,
+ 'AGGREGATE': Keyword,
+ 'ALIAS': Keyword,
+ 'ALL': Keyword,
+ 'ALLOCATE': Keyword,
+ 'ANALYSE': Keyword,
+ 'ANALYZE': Keyword,
+ 'AND': Keyword,
+ 'ANY': Keyword,
+ 'ARE': Keyword,
+ 'AS': Keyword,
+ 'ASC': Keyword,
+ 'ASENSITIVE': Keyword,
+ 'ASSERTION': Keyword,
+ 'ASSIGNMENT': Keyword,
+ 'ASYMMETRIC': Keyword,
+ 'AT': Keyword,
+ 'ATOMIC': Keyword,
+ 'AUTHORIZATION': Keyword,
+ 'AVG': Keyword,
+
+ 'BACKWARD': Keyword,
+ 'BEFORE': Keyword,
+ 'BEGIN': Keyword,
+ 'BETWEEN': Keyword,
+ 'BITVAR': Keyword,
+ 'BIT_LENGTH': Keyword,
+ 'BOTH': Keyword,
+ 'BREADTH': Keyword,
+ 'BY': Keyword,
+
+# 'C': Keyword, # most likely this is an alias
+ 'CACHE': Keyword,
+ 'CALL': Keyword,
+ 'CALLED': Keyword,
+ 'CARDINALITY': Keyword,
+ 'CASCADE': Keyword,
+ 'CASCADED': Keyword,
+ 'CASE': Keyword,
+ 'CAST': Keyword,
+ 'CATALOG': Keyword,
+ 'CATALOG_NAME': Keyword,
+ 'CHAIN': Keyword,
+ 'CHARACTERISTICS': Keyword,
+ 'CHARACTER_LENGTH': Keyword,
+ 'CHARACTER_SET_CATALOG': Keyword,
+ 'CHARACTER_SET_NAME': Keyword,
+ 'CHARACTER_SET_SCHEMA': Keyword,
+ 'CHAR_LENGTH': Keyword,
+ 'CHECK': Keyword,
+ 'CHECKED': Keyword,
+ 'CHECKPOINT': Keyword,
+ 'CLASS': Keyword,
+ 'CLASS_ORIGIN': Keyword,
+ 'CLOB': Keyword,
+ 'CLOSE': Keyword,
+ 'CLUSTER': Keyword,
+ 'COALSECE': Keyword,
+ 'COBOL': Keyword,
+ 'COLLATE': Keyword,
+ 'COLLATION': Keyword,
+ 'COLLATION_CATALOG': Keyword,
+ 'COLLATION_NAME': Keyword,
+ 'COLLATION_SCHEMA': Keyword,
+ 'COLUMN': Keyword,
+ 'COLUMN_NAME': Keyword,
+ 'COMMAND_FUNCTION': Keyword,
+ 'COMMAND_FUNCTION_CODE': Keyword,
+ 'COMMENT': Keyword,
+ 'COMMIT': Keyword,
+ 'COMMITTED': Keyword,
+ 'COMPLETION': Keyword,
+ 'CONDITION_NUMBER': Keyword,
+ 'CONNECT': Keyword,
+ 'CONNECTION': Keyword,
+ 'CONNECTION_NAME': Keyword,
+ 'CONSTRAINT': Keyword,
+ 'CONSTRAINTS': Keyword,
+ 'CONSTRAINT_CATALOG': Keyword,
+ 'CONSTRAINT_NAME': Keyword,
+ 'CONSTRAINT_SCHEMA': Keyword,
+ 'CONSTRUCTOR': Keyword,
+ 'CONTAINS': Keyword,
+ 'CONTINUE': Keyword,
+ 'CONVERSION': Keyword,
+ 'CONVERT': Keyword,
+ 'COPY': Keyword,
+ 'CORRESPONTING': Keyword,
+ 'COUNT': Keyword,
+ 'CREATEDB': Keyword,
+ 'CREATEUSER': Keyword,
+ 'CROSS': Keyword,
+ 'CUBE': Keyword,
+ 'CURRENT': Keyword,
+ 'CURRENT_DATE': Keyword,
+ 'CURRENT_PATH': Keyword,
+ 'CURRENT_ROLE': Keyword,
+ 'CURRENT_TIME': Keyword,
+ 'CURRENT_TIMESTAMP': Keyword,
+ 'CURRENT_USER': Keyword,
+ 'CURSOR': Keyword,
+ 'CURSOR_NAME': Keyword,
+ 'CYCLE': Keyword,
+
+ 'DATA': Keyword,
+ 'DATABASE': Keyword,
+ 'DATETIME_INTERVAL_CODE': Keyword,
+ 'DATETIME_INTERVAL_PRECISION': Keyword,
+ 'DAY': Keyword,
+ 'DEALLOCATE': Keyword,
+ 'DECLARE': Keyword,
+ 'DEFAULT': Keyword,
+ 'DEFAULTS': Keyword,
+ 'DEFERRABLE': Keyword,
+ 'DEFERRED': Keyword,
+ 'DEFINED': Keyword,
+ 'DEFINER': Keyword,
+ 'DELIMITER': Keyword,
+ 'DELIMITERS': Keyword,
+ 'DEREF': Keyword,
+ 'DESC': Keyword,
+ 'DESCRIBE': Keyword,
+ 'DESCRIPTOR': Keyword,
+ 'DESTROY': Keyword,
+ 'DESTRUCTOR': Keyword,
+ 'DETERMINISTIC': Keyword,
+ 'DIAGNOSTICS': Keyword,
+ 'DICTIONARY': Keyword,
+ 'DISCONNECT': Keyword,
+ 'DISPATCH': Keyword,
+ 'DISTINCT': Keyword,
+ 'DO': Keyword,
+ 'DOMAIN': Keyword,
+ 'DYNAMIC': Keyword,
+ 'DYNAMIC_FUNCTION': Keyword,
+ 'DYNAMIC_FUNCTION_CODE': Keyword,
+
+ 'EACH': Keyword,
+ 'ELSE': Keyword,
+ 'ENCODING': Keyword,
+ 'ENCRYPTED': Keyword,
+ 'END': Keyword,
+ 'END-EXEC': Keyword,
+ 'EQUALS': Keyword,
+ 'ESCAPE': Keyword,
+ 'EVERY': Keyword,
+ 'EXCEPT': Keyword,
+ 'ESCEPTION': Keyword,
+ 'EXCLUDING': Keyword,
+ 'EXCLUSIVE': Keyword,
+ 'EXEC': Keyword,
+ 'EXECUTE': Keyword,
+ 'EXISTING': Keyword,
+ 'EXISTS': Keyword,
+ 'EXTERNAL': Keyword,
+ 'EXTRACT': Keyword,
+
+ 'FALSE': Keyword,
+ 'FETCH': Keyword,
+ 'FINAL': Keyword,
+ 'FIRST': Keyword,
+ 'FOR': Keyword,
+ 'FORCE': Keyword,
+ 'FOREIGN': Keyword,
+ 'FORTRAN': Keyword,
+ 'FORWARD': Keyword,
+ 'FOUND': Keyword,
+ 'FREE': Keyword,
+ 'FREEZE': Keyword,
+ 'FROM': Keyword,
+ 'FULL': Keyword,
+ 'FUNCTION': Keyword,
+
+ 'G': Keyword,
+ 'GENERAL': Keyword,
+ 'GENERATED': Keyword,
+ 'GET': Keyword,
+ 'GLOBAL': Keyword,
+ 'GO': Keyword,
+ 'GOTO': Keyword,
+ 'GRANT': Keyword,
+ 'GRANTED': Keyword,
+ 'GROUP': Keyword,
+ 'GROUPING': Keyword,
+
+ 'HANDLER': Keyword,
+ 'HAVING': Keyword,
+ 'HIERARCHY': Keyword,
+ 'HOLD': Keyword,
+ 'HOST': Keyword,
+
+ 'IDENTITY': Keyword,
+ 'IF': Keyword,
+ 'IGNORE': Keyword,
+ 'ILIKE': Keyword,
+ 'IMMEDIATE': Keyword,
+ 'IMMUTABLE': Keyword,
+
+ 'IMPLEMENTATION': Keyword,
+ 'IMPLICIT': Keyword,
+ 'IN': Keyword,
+ 'INCLUDING': Keyword,
+ 'INCREMENT': Keyword,
+ 'INDEX': Keyword,
+
+ 'INDITCATOR': Keyword,
+ 'INFIX': Keyword,
+ 'INHERITS': Keyword,
+ 'INITIALIZE': Keyword,
+ 'INITIALLY': Keyword,
+ 'INNER': Keyword,
+ 'INOUT': Keyword,
+ 'INPUT': Keyword,
+ 'INSENSITIVE': Keyword,
+ 'INSTANTIABLE': Keyword,
+ 'INSTEAD': Keyword,
+ 'INTERSECT': Keyword,
+ 'INTO': Keyword,
+ 'INVOKER': Keyword,
+ 'IS': Keyword,
+ 'ISNULL': Keyword,
+ 'ISOLATION': Keyword,
+ 'ITERATE': Keyword,
+
+ 'JOIN': Keyword,
+
+ 'K': Keyword,
+ 'KEY': Keyword,
+ 'KEY_MEMBER': Keyword,
+ 'KEY_TYPE': Keyword,
+
+ 'LANCOMPILER': Keyword,
+ 'LANGUAGE': Keyword,
+ 'LARGE': Keyword,
+ 'LAST': Keyword,
+ 'LATERAL': Keyword,
+ 'LEADING': Keyword,
+ 'LEFT': Keyword,
+ 'LENGTH': Keyword,
+ 'LESS': Keyword,
+ 'LEVEL': Keyword,
+ 'LIKE': Keyword,
+ 'LIMIT': Keyword,
+ 'LISTEN': Keyword,
+ 'LOAD': Keyword,
+ 'LOCAL': Keyword,
+ 'LOCALTIME': Keyword,
+ 'LOCALTIMESTAMP': Keyword,
+ 'LOCATION': Keyword,
+ 'LOCATOR': Keyword,
+ 'LOCK': Keyword,
+ 'LOWER': Keyword,
+
+ 'M': Keyword,
+ 'MAP': Keyword,
+ 'MATCH': Keyword,
+ 'MAX': Keyword,
+ 'MAXVALUE': Keyword,
+ 'MESSAGE_LENGTH': Keyword,
+ 'MESSAGE_OCTET_LENGTH': Keyword,
+ 'MESSAGE_TEXT': Keyword,
+ 'METHOD': Keyword,
+ 'MIN': Keyword,
+ 'MINUTE': Keyword,
+ 'MINVALUE': Keyword,
+ 'MOD': Keyword,
+ 'MODE': Keyword,
+ 'MODIFIES': Keyword,
+ 'MODIFY': Keyword,
+ 'MONTH': Keyword,
+ 'MORE': Keyword,
+ 'MOVE': Keyword,
+ 'MUMPS': Keyword,
+
+ 'NAMES': Keyword,
+ 'NATIONAL': Keyword,
+ 'NATURAL': Keyword,
+ 'NCHAR': Keyword,
+ 'NCLOB': Keyword,
+ 'NEW': Keyword,
+ 'NEXT': Keyword,
+ 'NO': Keyword,
+ 'NOCREATEDB': Keyword,
+ 'NOCREATEUSER': Keyword,
+ 'NONE': Keyword,
+ 'NOT': Keyword,
+ 'NOTHING': Keyword,
+ 'NOTIFY': Keyword,
+ 'NOTNULL': Keyword,
+ 'NULL': Keyword,
+ 'NULLABLE': Keyword,
+ 'NULLIF': Keyword,
+
+ 'OBJECT': Keyword,
+ 'OCTET_LENGTH': Keyword,
+ 'OF': Keyword,
+ 'OFF': Keyword,
+ 'OFFSET': Keyword,
+ 'OIDS': Keyword,
+ 'OLD': Keyword,
+ 'ON': Keyword,
+ 'ONLY': Keyword,
+ 'OPEN': Keyword,
+ 'OPERATION': Keyword,
+ 'OPERATOR': Keyword,
+ 'OPTION': Keyword,
+ 'OPTIONS': Keyword,
+ 'OR': Keyword,
+ 'ORDER': Keyword,
+ 'ORDINALITY': Keyword,
+ 'OUT': Keyword,
+ 'OUTER': Keyword,
+ 'OUTPUT': Keyword,
+ 'OVERLAPS': Keyword,
+ 'OVERLAY': Keyword,
+ 'OVERRIDING': Keyword,
+ 'OWNER': Keyword,
+
+ 'PAD': Keyword,
+ 'PARAMETER': Keyword,
+ 'PARAMETERS': Keyword,
+ 'PARAMETER_MODE': Keyword,
+ 'PARAMATER_NAME': Keyword,
+ 'PARAMATER_ORDINAL_POSITION': Keyword,
+ 'PARAMETER_SPECIFIC_CATALOG': Keyword,
+ 'PARAMETER_SPECIFIC_NAME': Keyword,
+ 'PARAMATER_SPECIFIC_SCHEMA': Keyword,
+ 'PARTIAL': Keyword,
+ 'PASCAL': Keyword,
+ 'PENDANT': Keyword,
+ 'PLACING': Keyword,
+ 'PLI': Keyword,
+ 'POSITION': Keyword,
+ 'POSTFIX': Keyword,
+ 'PRECISION': Keyword,
+ 'PREFIX': Keyword,
+ 'PREORDER': Keyword,
+ 'PREPARE': Keyword,
+ 'PRESERVE': Keyword,
+ 'PRIMARY': Keyword,
+ 'PRIOR': Keyword,
+ 'PRIVILEGES': Keyword,
+ 'PROCEDURAL': Keyword,
+ 'PROCEDURE': Keyword,
+ 'PUBLIC': Keyword,
+
+ 'RAISE': Keyword,
+ 'READ': Keyword,
+ 'READS': Keyword,
+ 'RECHECK': Keyword,
+ 'RECURSIVE': Keyword,
+ 'REF': Keyword,
+ 'REFERENCES': Keyword,
+ 'REFERENCING': Keyword,
+ 'REINDEX': Keyword,
+ 'RELATIVE': Keyword,
+ 'RENAME': Keyword,
+ 'REPEATABLE': Keyword,
+ 'REPLACE': Keyword,
+ 'RESET': Keyword,
+ 'RESTART': Keyword,
+ 'RESTRICT': Keyword,
+ 'RESULT': Keyword,
+ 'RETURN': Keyword,
+ 'RETURNED_LENGTH': Keyword,
+ 'RETURNED_OCTET_LENGTH': Keyword,
+ 'RETURNED_SQLSTATE': Keyword,
+ 'RETURNS': Keyword,
+ 'REVOKE': Keyword,
+ 'RIGHT': Keyword,
+ 'ROLE': Keyword,
+ 'ROLLBACK': Keyword,
+ 'ROLLUP': Keyword,
+ 'ROUTINE': Keyword,
+ 'ROUTINE_CATALOG': Keyword,
+ 'ROUTINE_NAME': Keyword,
+ 'ROUTINE_SCHEMA': Keyword,
+ 'ROW': Keyword,
+ 'ROWS': Keyword,
+ 'ROW_COUNT': Keyword,
+ 'RULE': Keyword,
+
+ 'SAVE_POINT': Keyword,
+ 'SCALE': Keyword,
+ 'SCHEMA': Keyword,
+ 'SCHEMA_NAME': Keyword,
+ 'SCOPE': Keyword,
+ 'SCROLL': Keyword,
+ 'SEARCH': Keyword,
+ 'SECOND': Keyword,
+ 'SECURITY': Keyword,
+ 'SELF': Keyword,
+ 'SENSITIVE': Keyword,
+ 'SERIALIZABLE': Keyword,
+ 'SERVER_NAME': Keyword,
+ 'SESSION': Keyword,
+ 'SESSION_USER': Keyword,
+ 'SETOF': Keyword,
+ 'SETS': Keyword,
+ 'SHARE': Keyword,
+ 'SHOW': Keyword,
+ 'SIMILAR': Keyword,
+ 'SIMPLE': Keyword,
+ 'SIZE': Keyword,
+ 'SOME': Keyword,
+ 'SOURCE': Keyword,
+ 'SPACE': Keyword,
+ 'SPECIFIC': Keyword,
+ 'SPECIFICTYPE': Keyword,
+ 'SPECIFIC_NAME': Keyword,
+ 'SQL': Keyword,
+ 'SQLCODE': Keyword,
+ 'SQLERROR': Keyword,
+ 'SQLEXCEPTION': Keyword,
+ 'SQLSTATE': Keyword,
+ 'SQLWARNINIG': Keyword,
+ 'STABLE': Keyword,
+ 'START': Keyword,
+ 'STATE': Keyword,
+ 'STATEMENT': Keyword,
+ 'STATIC': Keyword,
+ 'STATISTICS': Keyword,
+ 'STDIN': Keyword,
+ 'STDOUT': Keyword,
+ 'STORAGE': Keyword,
+ 'STRICT': Keyword,
+ 'STRUCTURE': Keyword,
+ 'STYPE': Keyword,
+ 'SUBCLASS_ORIGIN': Keyword,
+ 'SUBLIST': Keyword,
+ 'SUBSTRING': Keyword,
+ 'SUM': Keyword,
+ 'SYMMETRIC': Keyword,
+ 'SYSID': Keyword,
+ 'SYSTEM': Keyword,
+ 'SYSTEM_USER': Keyword,
+
+ 'TABLE': Keyword,
+ 'TABLE_NAME': Keyword,
+ ' TEMP': Keyword,
+ 'TEMPLATE': Keyword,
+ 'TEMPORARY': Keyword,
+ 'TERMINATE': Keyword,
+ 'THAN': Keyword,
+ 'THEN': Keyword,
+ 'TIMESTAMP': Keyword,
+ 'TIMEZONE_HOUR': Keyword,
+ 'TIMEZONE_MINUTE': Keyword,
+ 'TO': Keyword,
+ 'TOAST': Keyword,
+ 'TRAILING': Keyword,
+ 'TRANSATION': Keyword,
+ 'TRANSACTIONS_COMMITTED': Keyword,
+ 'TRANSACTIONS_ROLLED_BACK': Keyword,
+ 'TRANSATION_ACTIVE': Keyword,
+ 'TRANSFORM': Keyword,
+ 'TRANSFORMS': Keyword,
+ 'TRANSLATE': Keyword,
+ 'TRANSLATION': Keyword,
+ 'TREAT': Keyword,
+ 'TRIGGER': Keyword,
+ 'TRIGGER_CATALOG': Keyword,
+ 'TRIGGER_NAME': Keyword,
+ 'TRIGGER_SCHEMA': Keyword,
+ 'TRIM': Keyword,
+ 'TRUE': Keyword,
+ 'TRUNCATE': Keyword,
+ 'TRUSTED': Keyword,
+ 'TYPE': Keyword,
+
+ 'UNCOMMITTED': Keyword,
+ 'UNDER': Keyword,
+ 'UNENCRYPTED': Keyword,
+ 'UNION': Keyword,
+ 'UNIQUE': Keyword,
+ 'UNKNOWN': Keyword,
+ 'UNLISTEN': Keyword,
+ 'UNNAMED': Keyword,
+ 'UNNEST': Keyword,
+ 'UNTIL': Keyword,
+ 'UPPER': Keyword,
+ 'USAGE': Keyword,
+ 'USER': Keyword,
+ 'USER_DEFINED_TYPE_CATALOG': Keyword,
+ 'USER_DEFINED_TYPE_NAME': Keyword,
+ 'USER_DEFINED_TYPE_SCHEMA': Keyword,
+ 'USING': Keyword,
+
+ 'VACUUM': Keyword,
+ 'VALID': Keyword,
+ 'VALIDATOR': Keyword,
+ 'VALUES': Keyword,
+ 'VARIABLE': Keyword,
+ 'VERBOSE': Keyword,
+ 'VERSION': Keyword,
+ 'VIEW': Keyword,
+ 'VOLATILE': Keyword,
+
+ 'WHEN': Keyword,
+ 'WHENEVER': Keyword,
+ 'WHERE': Keyword,
+ 'WITH': Keyword,
+ 'WITHOUT': Keyword,
+ 'WORK': Keyword,
+ 'WRITE': Keyword,
+
+ 'YEAR': Keyword,
+
+ 'ZONE': Keyword,
+
+
+ 'ARRAY': Name.Builtin,
+ 'BIGINT': Name.Builtin,
+ 'BINARY': Name.Builtin,
+ 'BIT': Name.Builtin,
+ 'BLOB': Name.Builtin,
+ 'BOOLEAN': Name.Builtin,
+ 'CHAR': Name.Builtin,
+ 'CHARACTER': Name.Builtin,
+ 'DATE': Name.Builtin,
+ 'DEC': Name.Builtin,
+ 'DECIMAL': Name.Builtin,
+ 'FLOAT': Name.Builtin,
+ 'INT': Name.Builtin,
+ 'INTEGER': Name.Builtin,
+ 'INTERVAL': Name.Builtin,
+ 'NUMBER': Name.Builtin,
+ 'NUMERIC': Name.Builtin,
+ 'REAL': Name.Builtin,
+ 'SERIAL': Name.Builtin,
+ 'SMALLINT': Name.Builtin,
+ 'VARCHAR': Name.Builtin,
+ 'VARYING': Name.Builtin,
+ 'INT8': Name.Builtin,
+ 'SERIAL8': Name.Builtin,
+ 'TEXT': Name.Builtin,
+ }
+
+
+KEYWORDS_COMMON = {
+ 'SELECT': Keyword.DML,
+ 'INSERT': Keyword.DML,
+ 'DELETE': Keyword.DML,
+ 'UPDATE': Keyword.DML,
+ 'DROP': Keyword.DDL,
+ 'CREATE': Keyword.DDL,
+ 'ALTER': Keyword.DDL,
+
+ 'WHERE': Keyword,
+ 'FROM': Keyword,
+ 'INNER': Keyword,
+ 'JOIN': Keyword,
+ 'AND': Keyword,
+ 'OR': Keyword,
+ 'LIKE': Keyword,
+ 'ON': Keyword,
+ 'IN': Keyword,
+ 'SET': Keyword,
+
+ 'BY': Keyword,
+ 'GROUP': Keyword,
+ 'ORDER': Keyword,
+ 'LEFT': Keyword,
+ 'OUTER': Keyword,
+
+ 'IF': Keyword,
+ 'END': Keyword,
+ 'THEN': Keyword,
+ 'LOOP': Keyword,
+ 'AS': Keyword,
+ 'ELSE': Keyword,
+ 'FOR': Keyword,
+
+ 'CASE': Keyword,
+ 'WHEN': Keyword,
+ 'MIN': Keyword,
+ 'MAX': Keyword,
+ 'DISTINCT': Keyword,
+
+ }