velocity-python 0.0.34__py3-none-any.whl → 0.0.64__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of velocity-python might be problematic. Click here for more details.
- velocity/__init__.py +1 -1
- velocity/db/core/column.py +25 -105
- velocity/db/core/database.py +79 -23
- velocity/db/core/decorators.py +84 -47
- velocity/db/core/engine.py +179 -184
- velocity/db/core/result.py +94 -49
- velocity/db/core/row.py +81 -46
- velocity/db/core/sequence.py +112 -22
- velocity/db/core/table.py +660 -243
- velocity/db/core/transaction.py +75 -77
- velocity/db/servers/mysql.py +5 -237
- velocity/db/servers/mysql_reserved.py +237 -0
- velocity/db/servers/postgres/__init__.py +19 -0
- velocity/db/servers/postgres/operators.py +23 -0
- velocity/db/servers/postgres/reserved.py +254 -0
- velocity/db/servers/postgres/sql.py +1041 -0
- velocity/db/servers/postgres/types.py +109 -0
- velocity/db/servers/sqlite.py +1 -210
- velocity/db/servers/sqlite_reserved.py +208 -0
- velocity/db/servers/sqlserver.py +1 -316
- velocity/db/servers/sqlserver_reserved.py +314 -0
- velocity/db/servers/tablehelper.py +277 -0
- velocity/misc/conv/iconv.py +277 -91
- velocity/misc/conv/oconv.py +5 -4
- velocity/misc/db.py +2 -2
- velocity/misc/format.py +2 -2
- {velocity_python-0.0.34.dist-info → velocity_python-0.0.64.dist-info}/METADATA +6 -6
- velocity_python-0.0.64.dist-info/RECORD +47 -0
- {velocity_python-0.0.34.dist-info → velocity_python-0.0.64.dist-info}/WHEEL +1 -1
- velocity/db/servers/postgres.py +0 -1396
- velocity_python-0.0.34.dist-info/RECORD +0 -39
- {velocity_python-0.0.34.dist-info → velocity_python-0.0.64.dist-info}/LICENSE +0 -0
- {velocity_python-0.0.34.dist-info → velocity_python-0.0.64.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import decimal
|
|
2
|
+
import datetime
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class TYPES:
|
|
6
|
+
"""
|
|
7
|
+
A simple mapping of Python types <-> SQL types (for PostgreSQL).
|
|
8
|
+
"""
|
|
9
|
+
|
|
10
|
+
TEXT = "TEXT"
|
|
11
|
+
INTEGER = "INTEGER"
|
|
12
|
+
NUMERIC = "NUMERIC"
|
|
13
|
+
DATETIME_TZ = "TIMESTAMP WITH TIME ZONE"
|
|
14
|
+
TIMESTAMP_TZ = "TIMESTAMP WITH TIME ZONE"
|
|
15
|
+
DATETIME = "TIMESTAMP WITHOUT TIME ZONE"
|
|
16
|
+
TIMESTAMP = "TIMESTAMP WITHOUT TIME ZONE"
|
|
17
|
+
DATE = "DATE"
|
|
18
|
+
TIME_TZ = "TIME WITH TIME ZONE"
|
|
19
|
+
TIME = "TIME WITHOUT TIME ZONE"
|
|
20
|
+
BIGINT = "BIGINT"
|
|
21
|
+
SMALLINT = "SMALLINT"
|
|
22
|
+
BOOLEAN = "BOOLEAN"
|
|
23
|
+
BINARY = "BYTEA"
|
|
24
|
+
INTERVAL = "INTERVAL"
|
|
25
|
+
|
|
26
|
+
@classmethod
|
|
27
|
+
def get_type(cls, v):
|
|
28
|
+
"""
|
|
29
|
+
Returns a suitable SQL type string for a Python value/object.
|
|
30
|
+
"""
|
|
31
|
+
if isinstance(v, str) and v.startswith("@@"):
|
|
32
|
+
# e.g. @@CURRENT_TIMESTAMP => special usage
|
|
33
|
+
return v[2:] or cls.TEXT
|
|
34
|
+
if isinstance(v, str) or v is str:
|
|
35
|
+
return cls.TEXT
|
|
36
|
+
if isinstance(v, bool) or v is bool:
|
|
37
|
+
return cls.BOOLEAN
|
|
38
|
+
if isinstance(v, int) or v is int:
|
|
39
|
+
return cls.BIGINT
|
|
40
|
+
if isinstance(v, float) or v is float:
|
|
41
|
+
return f"{cls.NUMERIC}(19, 6)"
|
|
42
|
+
if isinstance(v, decimal.Decimal) or v is decimal.Decimal:
|
|
43
|
+
return f"{cls.NUMERIC}(19, 6)"
|
|
44
|
+
if isinstance(v, datetime.datetime) or v is datetime.datetime:
|
|
45
|
+
return cls.DATETIME
|
|
46
|
+
if isinstance(v, datetime.date) or v is datetime.date:
|
|
47
|
+
return cls.DATE
|
|
48
|
+
if isinstance(v, datetime.time) or v is datetime.time:
|
|
49
|
+
return cls.TIME
|
|
50
|
+
if isinstance(v, datetime.timedelta) or v is datetime.timedelta:
|
|
51
|
+
return cls.INTERVAL
|
|
52
|
+
if isinstance(v, bytes) or v is bytes:
|
|
53
|
+
return cls.BINARY
|
|
54
|
+
return cls.TEXT
|
|
55
|
+
|
|
56
|
+
@classmethod
|
|
57
|
+
def get_conv(cls, v):
|
|
58
|
+
"""
|
|
59
|
+
Returns a base SQL type for expression usage (e.g. CAST).
|
|
60
|
+
"""
|
|
61
|
+
if isinstance(v, str) and v.startswith("@@"):
|
|
62
|
+
return v[2:] or cls.TEXT
|
|
63
|
+
if isinstance(v, str) or v is str:
|
|
64
|
+
return cls.TEXT
|
|
65
|
+
if isinstance(v, bool) or v is bool:
|
|
66
|
+
return cls.BOOLEAN
|
|
67
|
+
if isinstance(v, int) or v is int:
|
|
68
|
+
return cls.BIGINT
|
|
69
|
+
if isinstance(v, float) or v is float:
|
|
70
|
+
return cls.NUMERIC
|
|
71
|
+
if isinstance(v, decimal.Decimal) or v is decimal.Decimal:
|
|
72
|
+
return cls.NUMERIC
|
|
73
|
+
if isinstance(v, datetime.datetime) or v is datetime.datetime:
|
|
74
|
+
return cls.DATETIME
|
|
75
|
+
if isinstance(v, datetime.date) or v is datetime.date:
|
|
76
|
+
return cls.DATE
|
|
77
|
+
if isinstance(v, datetime.time) or v is datetime.time:
|
|
78
|
+
return cls.TIME
|
|
79
|
+
if isinstance(v, datetime.timedelta) or v is datetime.timedelta:
|
|
80
|
+
return cls.INTERVAL
|
|
81
|
+
if isinstance(v, bytes) or v is bytes:
|
|
82
|
+
return cls.BINARY
|
|
83
|
+
return cls.TEXT
|
|
84
|
+
|
|
85
|
+
@classmethod
|
|
86
|
+
def py_type(cls, v):
|
|
87
|
+
"""
|
|
88
|
+
Returns the Python type that corresponds to an SQL type string.
|
|
89
|
+
"""
|
|
90
|
+
v = str(v).upper()
|
|
91
|
+
if v == cls.INTEGER or v == cls.SMALLINT or v == cls.BIGINT:
|
|
92
|
+
return int
|
|
93
|
+
if v == cls.NUMERIC:
|
|
94
|
+
return decimal.Decimal
|
|
95
|
+
if v == cls.TEXT:
|
|
96
|
+
return str
|
|
97
|
+
if v == cls.BOOLEAN:
|
|
98
|
+
return bool
|
|
99
|
+
if v == cls.DATE:
|
|
100
|
+
return datetime.date
|
|
101
|
+
if v == cls.TIME or v == cls.TIME_TZ:
|
|
102
|
+
return datetime.time
|
|
103
|
+
if v == cls.DATETIME or v == cls.TIMESTAMP:
|
|
104
|
+
return datetime.datetime
|
|
105
|
+
if v == cls.INTERVAL:
|
|
106
|
+
return datetime.timedelta
|
|
107
|
+
if v == cls.DATETIME_TZ or v == cls.TIMESTAMP_TZ:
|
|
108
|
+
return datetime.datetime
|
|
109
|
+
raise Exception(f"Unmapped type {v}")
|
velocity/db/servers/sqlite.py
CHANGED
|
@@ -4,6 +4,7 @@ import decimal
|
|
|
4
4
|
import datetime
|
|
5
5
|
|
|
6
6
|
from velocity.db import exceptions
|
|
7
|
+
from .sqlite_reserved import reserved_words
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
def initialize(config):
|
|
@@ -965,213 +966,3 @@ class SQL(object):
|
|
|
965
966
|
BOOLEAN = "BOOLEAN"
|
|
966
967
|
BINARY = "BLOB"
|
|
967
968
|
INTERVAL = "INTERVAL"
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
reserved_words = [
|
|
971
|
-
"ADMIN",
|
|
972
|
-
"ALIAS",
|
|
973
|
-
"ALL",
|
|
974
|
-
"ALLOCATE",
|
|
975
|
-
"ANALYSE",
|
|
976
|
-
"ANALYZE",
|
|
977
|
-
"AND",
|
|
978
|
-
"ANY",
|
|
979
|
-
"ARE",
|
|
980
|
-
"ARRAY",
|
|
981
|
-
"AS",
|
|
982
|
-
"ASC",
|
|
983
|
-
"AUTHORIZATION",
|
|
984
|
-
"BETWEEN",
|
|
985
|
-
"BINARY",
|
|
986
|
-
"BLOB",
|
|
987
|
-
"BOTH",
|
|
988
|
-
"BREADTH",
|
|
989
|
-
"CALL",
|
|
990
|
-
"CASCADED",
|
|
991
|
-
"CASE",
|
|
992
|
-
"CAST",
|
|
993
|
-
"CATALOG",
|
|
994
|
-
"CHECK",
|
|
995
|
-
"CLOB",
|
|
996
|
-
"COLLATE",
|
|
997
|
-
"COLLATION",
|
|
998
|
-
"COLUMN",
|
|
999
|
-
"COMPLETION",
|
|
1000
|
-
"CONNECT",
|
|
1001
|
-
"CONNECTION",
|
|
1002
|
-
"CONSTRAINT",
|
|
1003
|
-
"CONSTRUCTOR",
|
|
1004
|
-
"CONTINUE",
|
|
1005
|
-
"CORRESPONDING",
|
|
1006
|
-
"CREATE",
|
|
1007
|
-
"CROSS",
|
|
1008
|
-
"CUBE",
|
|
1009
|
-
"CURRENT",
|
|
1010
|
-
"CURRENT_DATE",
|
|
1011
|
-
"CURRENT_PATH",
|
|
1012
|
-
"CURRENT_ROLE",
|
|
1013
|
-
"CURRENT_TIME",
|
|
1014
|
-
"CURRENT_TIMESTAMP",
|
|
1015
|
-
"CURRENT_USER",
|
|
1016
|
-
"DATA",
|
|
1017
|
-
"DATE",
|
|
1018
|
-
"DEFAULT",
|
|
1019
|
-
"DEFERRABLE",
|
|
1020
|
-
"DEPTH",
|
|
1021
|
-
"DEREF",
|
|
1022
|
-
"DESC",
|
|
1023
|
-
"DESCRIBE",
|
|
1024
|
-
"DESCRIPTOR",
|
|
1025
|
-
"DESTROY",
|
|
1026
|
-
"DESTRUCTOR",
|
|
1027
|
-
"DETERMINISTIC",
|
|
1028
|
-
"DIAGNOSTICS",
|
|
1029
|
-
"DICTIONARY",
|
|
1030
|
-
"DISCONNECT",
|
|
1031
|
-
"DISTINCT",
|
|
1032
|
-
"DO",
|
|
1033
|
-
"DYNAMIC",
|
|
1034
|
-
"ELSE",
|
|
1035
|
-
"END",
|
|
1036
|
-
"END-EXEC",
|
|
1037
|
-
"EQUALS",
|
|
1038
|
-
"EVERY",
|
|
1039
|
-
"EXCEPT",
|
|
1040
|
-
"EXCEPTION",
|
|
1041
|
-
"EXEC",
|
|
1042
|
-
"FALSE",
|
|
1043
|
-
"FIRST",
|
|
1044
|
-
"FOR",
|
|
1045
|
-
"FOREIGN",
|
|
1046
|
-
"FOUND",
|
|
1047
|
-
"FREE",
|
|
1048
|
-
"FREEZE",
|
|
1049
|
-
"FROM",
|
|
1050
|
-
"FULL",
|
|
1051
|
-
"GENERAL",
|
|
1052
|
-
"GO",
|
|
1053
|
-
"GOTO",
|
|
1054
|
-
"GRANT",
|
|
1055
|
-
"GROUP",
|
|
1056
|
-
"GROUPING",
|
|
1057
|
-
"HAVING",
|
|
1058
|
-
"HOST",
|
|
1059
|
-
"IDENTITY",
|
|
1060
|
-
"IGNORE",
|
|
1061
|
-
"ILIKE",
|
|
1062
|
-
"IN",
|
|
1063
|
-
"INDICATOR",
|
|
1064
|
-
"INITIALIZE",
|
|
1065
|
-
"INITIALLY",
|
|
1066
|
-
"INNER",
|
|
1067
|
-
"INTERSECT",
|
|
1068
|
-
"INTO",
|
|
1069
|
-
"IS",
|
|
1070
|
-
"ISNULL",
|
|
1071
|
-
"ITERATE",
|
|
1072
|
-
"JOIN",
|
|
1073
|
-
"LARGE",
|
|
1074
|
-
"LAST",
|
|
1075
|
-
"LATERAL",
|
|
1076
|
-
"LEADING",
|
|
1077
|
-
"LEFT",
|
|
1078
|
-
"LESS",
|
|
1079
|
-
"LIKE",
|
|
1080
|
-
"LIMIT",
|
|
1081
|
-
"LOCALTIME",
|
|
1082
|
-
"LOCALTIMESTAMP",
|
|
1083
|
-
"LOCATOR",
|
|
1084
|
-
"MAP",
|
|
1085
|
-
"MODIFIES",
|
|
1086
|
-
"MODIFY",
|
|
1087
|
-
"MODULE",
|
|
1088
|
-
"NAME",
|
|
1089
|
-
"NATURAL",
|
|
1090
|
-
"NCLOB",
|
|
1091
|
-
"NEW",
|
|
1092
|
-
"NOT",
|
|
1093
|
-
"NOTNULL",
|
|
1094
|
-
"NULL",
|
|
1095
|
-
"OBJECT",
|
|
1096
|
-
"OFF",
|
|
1097
|
-
"OFFSET",
|
|
1098
|
-
"OLD",
|
|
1099
|
-
"ON",
|
|
1100
|
-
"ONLY",
|
|
1101
|
-
"OPEN",
|
|
1102
|
-
"OPERATION",
|
|
1103
|
-
"OR",
|
|
1104
|
-
"ORDER",
|
|
1105
|
-
"ORDINALITY",
|
|
1106
|
-
"OUTER",
|
|
1107
|
-
"OUTPUT",
|
|
1108
|
-
"OVERLAPS",
|
|
1109
|
-
"PAD",
|
|
1110
|
-
"PARAMETER",
|
|
1111
|
-
"PARAMETERS",
|
|
1112
|
-
"PLACING",
|
|
1113
|
-
"POSTFIX",
|
|
1114
|
-
"PREFIX",
|
|
1115
|
-
"PREORDER",
|
|
1116
|
-
"PRESERVE",
|
|
1117
|
-
"PRIMARY",
|
|
1118
|
-
"PUBLIC",
|
|
1119
|
-
"READS",
|
|
1120
|
-
"RECURSIVE",
|
|
1121
|
-
"REF",
|
|
1122
|
-
"REFERENCES",
|
|
1123
|
-
"REFERENCING",
|
|
1124
|
-
"RESULT",
|
|
1125
|
-
"RETURN",
|
|
1126
|
-
"RIGHT",
|
|
1127
|
-
"ROLE",
|
|
1128
|
-
"ROLLUP",
|
|
1129
|
-
"ROUTINE",
|
|
1130
|
-
"ROWS",
|
|
1131
|
-
"SAVEPOINT",
|
|
1132
|
-
"SCOPE",
|
|
1133
|
-
"SEARCH",
|
|
1134
|
-
"SECTION",
|
|
1135
|
-
"SELECT",
|
|
1136
|
-
"SESSION_USER",
|
|
1137
|
-
"SETS",
|
|
1138
|
-
"SIMILAR",
|
|
1139
|
-
"SIZE",
|
|
1140
|
-
"SOME",
|
|
1141
|
-
"SPACE",
|
|
1142
|
-
"SPECIFIC",
|
|
1143
|
-
"SPECIFICTYPE",
|
|
1144
|
-
"SQL",
|
|
1145
|
-
"SQLCODE",
|
|
1146
|
-
"SQLERROR",
|
|
1147
|
-
"SQLEXCEPTION",
|
|
1148
|
-
"SQLSTATE",
|
|
1149
|
-
"SQLWARNING",
|
|
1150
|
-
"STATE",
|
|
1151
|
-
"STATIC",
|
|
1152
|
-
"STRUCTURE",
|
|
1153
|
-
"SYSTEM_USER",
|
|
1154
|
-
"TABLE",
|
|
1155
|
-
"TERMINATE",
|
|
1156
|
-
"THAN",
|
|
1157
|
-
"THEN",
|
|
1158
|
-
"TIMESTAMP",
|
|
1159
|
-
"TIMEZONE_HOUR",
|
|
1160
|
-
"TIMEZONE_MINUTE",
|
|
1161
|
-
"TO",
|
|
1162
|
-
"TRAILING",
|
|
1163
|
-
"TRANSLATION",
|
|
1164
|
-
"TRUE",
|
|
1165
|
-
"UNDER",
|
|
1166
|
-
"UNION",
|
|
1167
|
-
"UNIQUE",
|
|
1168
|
-
"UNNEST",
|
|
1169
|
-
"USER",
|
|
1170
|
-
"USING",
|
|
1171
|
-
"VALUE",
|
|
1172
|
-
"VARIABLE",
|
|
1173
|
-
"VERBOSE",
|
|
1174
|
-
"WHEN",
|
|
1175
|
-
"WHENEVER",
|
|
1176
|
-
"WHERE",
|
|
1177
|
-
]
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
reserved_words = [
|
|
2
|
+
"ADMIN",
|
|
3
|
+
"ALIAS",
|
|
4
|
+
"ALL",
|
|
5
|
+
"ALLOCATE",
|
|
6
|
+
"ANALYSE",
|
|
7
|
+
"ANALYZE",
|
|
8
|
+
"AND",
|
|
9
|
+
"ANY",
|
|
10
|
+
"ARE",
|
|
11
|
+
"ARRAY",
|
|
12
|
+
"AS",
|
|
13
|
+
"ASC",
|
|
14
|
+
"AUTHORIZATION",
|
|
15
|
+
"BETWEEN",
|
|
16
|
+
"BINARY",
|
|
17
|
+
"BLOB",
|
|
18
|
+
"BOTH",
|
|
19
|
+
"BREADTH",
|
|
20
|
+
"CALL",
|
|
21
|
+
"CASCADED",
|
|
22
|
+
"CASE",
|
|
23
|
+
"CAST",
|
|
24
|
+
"CATALOG",
|
|
25
|
+
"CHECK",
|
|
26
|
+
"CLOB",
|
|
27
|
+
"COLLATE",
|
|
28
|
+
"COLLATION",
|
|
29
|
+
"COLUMN",
|
|
30
|
+
"COMPLETION",
|
|
31
|
+
"CONNECT",
|
|
32
|
+
"CONNECTION",
|
|
33
|
+
"CONSTRAINT",
|
|
34
|
+
"CONSTRUCTOR",
|
|
35
|
+
"CONTINUE",
|
|
36
|
+
"CORRESPONDING",
|
|
37
|
+
"CREATE",
|
|
38
|
+
"CROSS",
|
|
39
|
+
"CUBE",
|
|
40
|
+
"CURRENT",
|
|
41
|
+
"CURRENT_DATE",
|
|
42
|
+
"CURRENT_PATH",
|
|
43
|
+
"CURRENT_ROLE",
|
|
44
|
+
"CURRENT_TIME",
|
|
45
|
+
"CURRENT_TIMESTAMP",
|
|
46
|
+
"CURRENT_USER",
|
|
47
|
+
"DATA",
|
|
48
|
+
"DATE",
|
|
49
|
+
"DEFAULT",
|
|
50
|
+
"DEFERRABLE",
|
|
51
|
+
"DEPTH",
|
|
52
|
+
"DEREF",
|
|
53
|
+
"DESC",
|
|
54
|
+
"DESCRIBE",
|
|
55
|
+
"DESCRIPTOR",
|
|
56
|
+
"DESTROY",
|
|
57
|
+
"DESTRUCTOR",
|
|
58
|
+
"DETERMINISTIC",
|
|
59
|
+
"DIAGNOSTICS",
|
|
60
|
+
"DICTIONARY",
|
|
61
|
+
"DISCONNECT",
|
|
62
|
+
"DISTINCT",
|
|
63
|
+
"DO",
|
|
64
|
+
"DYNAMIC",
|
|
65
|
+
"ELSE",
|
|
66
|
+
"END",
|
|
67
|
+
"END-EXEC",
|
|
68
|
+
"EQUALS",
|
|
69
|
+
"EVERY",
|
|
70
|
+
"EXCEPT",
|
|
71
|
+
"EXCEPTION",
|
|
72
|
+
"EXEC",
|
|
73
|
+
"FALSE",
|
|
74
|
+
"FIRST",
|
|
75
|
+
"FOR",
|
|
76
|
+
"FOREIGN",
|
|
77
|
+
"FOUND",
|
|
78
|
+
"FREE",
|
|
79
|
+
"FREEZE",
|
|
80
|
+
"FROM",
|
|
81
|
+
"FULL",
|
|
82
|
+
"GENERAL",
|
|
83
|
+
"GO",
|
|
84
|
+
"GOTO",
|
|
85
|
+
"GRANT",
|
|
86
|
+
"GROUP",
|
|
87
|
+
"GROUPING",
|
|
88
|
+
"HAVING",
|
|
89
|
+
"HOST",
|
|
90
|
+
"IDENTITY",
|
|
91
|
+
"IGNORE",
|
|
92
|
+
"ILIKE",
|
|
93
|
+
"IN",
|
|
94
|
+
"INDICATOR",
|
|
95
|
+
"INITIALIZE",
|
|
96
|
+
"INITIALLY",
|
|
97
|
+
"INNER",
|
|
98
|
+
"INTERSECT",
|
|
99
|
+
"INTO",
|
|
100
|
+
"IS",
|
|
101
|
+
"ISNULL",
|
|
102
|
+
"ITERATE",
|
|
103
|
+
"JOIN",
|
|
104
|
+
"LARGE",
|
|
105
|
+
"LAST",
|
|
106
|
+
"LATERAL",
|
|
107
|
+
"LEADING",
|
|
108
|
+
"LEFT",
|
|
109
|
+
"LESS",
|
|
110
|
+
"LIKE",
|
|
111
|
+
"LIMIT",
|
|
112
|
+
"LOCALTIME",
|
|
113
|
+
"LOCALTIMESTAMP",
|
|
114
|
+
"LOCATOR",
|
|
115
|
+
"MAP",
|
|
116
|
+
"MODIFIES",
|
|
117
|
+
"MODIFY",
|
|
118
|
+
"MODULE",
|
|
119
|
+
"NAME",
|
|
120
|
+
"NATURAL",
|
|
121
|
+
"NCLOB",
|
|
122
|
+
"NEW",
|
|
123
|
+
"NOT",
|
|
124
|
+
"NOTNULL",
|
|
125
|
+
"NULL",
|
|
126
|
+
"OBJECT",
|
|
127
|
+
"OFF",
|
|
128
|
+
"OFFSET",
|
|
129
|
+
"OLD",
|
|
130
|
+
"ON",
|
|
131
|
+
"ONLY",
|
|
132
|
+
"OPEN",
|
|
133
|
+
"OPERATION",
|
|
134
|
+
"OR",
|
|
135
|
+
"ORDER",
|
|
136
|
+
"ORDINALITY",
|
|
137
|
+
"OUTER",
|
|
138
|
+
"OUTPUT",
|
|
139
|
+
"OVERLAPS",
|
|
140
|
+
"PAD",
|
|
141
|
+
"PARAMETER",
|
|
142
|
+
"PARAMETERS",
|
|
143
|
+
"PLACING",
|
|
144
|
+
"POSTFIX",
|
|
145
|
+
"PREFIX",
|
|
146
|
+
"PREORDER",
|
|
147
|
+
"PRESERVE",
|
|
148
|
+
"PRIMARY",
|
|
149
|
+
"PUBLIC",
|
|
150
|
+
"READS",
|
|
151
|
+
"RECURSIVE",
|
|
152
|
+
"REF",
|
|
153
|
+
"REFERENCES",
|
|
154
|
+
"REFERENCING",
|
|
155
|
+
"RESULT",
|
|
156
|
+
"RETURN",
|
|
157
|
+
"RIGHT",
|
|
158
|
+
"ROLE",
|
|
159
|
+
"ROLLUP",
|
|
160
|
+
"ROUTINE",
|
|
161
|
+
"ROWS",
|
|
162
|
+
"SAVEPOINT",
|
|
163
|
+
"SCOPE",
|
|
164
|
+
"SEARCH",
|
|
165
|
+
"SECTION",
|
|
166
|
+
"SELECT",
|
|
167
|
+
"SESSION_USER",
|
|
168
|
+
"SETS",
|
|
169
|
+
"SIMILAR",
|
|
170
|
+
"SIZE",
|
|
171
|
+
"SOME",
|
|
172
|
+
"SPACE",
|
|
173
|
+
"SPECIFIC",
|
|
174
|
+
"SPECIFICTYPE",
|
|
175
|
+
"SQL",
|
|
176
|
+
"SQLCODE",
|
|
177
|
+
"SQLERROR",
|
|
178
|
+
"SQLEXCEPTION",
|
|
179
|
+
"SQLSTATE",
|
|
180
|
+
"SQLWARNING",
|
|
181
|
+
"STATE",
|
|
182
|
+
"STATIC",
|
|
183
|
+
"STRUCTURE",
|
|
184
|
+
"SYSTEM_USER",
|
|
185
|
+
"TABLE",
|
|
186
|
+
"TERMINATE",
|
|
187
|
+
"THAN",
|
|
188
|
+
"THEN",
|
|
189
|
+
"TIMESTAMP",
|
|
190
|
+
"TIMEZONE_HOUR",
|
|
191
|
+
"TIMEZONE_MINUTE",
|
|
192
|
+
"TO",
|
|
193
|
+
"TRAILING",
|
|
194
|
+
"TRANSLATION",
|
|
195
|
+
"TRUE",
|
|
196
|
+
"UNDER",
|
|
197
|
+
"UNION",
|
|
198
|
+
"UNIQUE",
|
|
199
|
+
"UNNEST",
|
|
200
|
+
"USER",
|
|
201
|
+
"USING",
|
|
202
|
+
"VALUE",
|
|
203
|
+
"VARIABLE",
|
|
204
|
+
"VERBOSE",
|
|
205
|
+
"WHEN",
|
|
206
|
+
"WHENEVER",
|
|
207
|
+
"WHERE",
|
|
208
|
+
]
|