~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to docs/information_schema.rst

  • Committer: Mark Atwood
  • Date: 2011-12-07 01:21:06 UTC
  • mfrom: (2466.1.2 i_s_docs)
  • Revision ID: me@mark.atwood.name-20111207012106-8smr2ld072th23j0
mergeĀ lp:~stewart/drizzle/i_s-docs

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
SQL standard. It should be used over DATA_DICTIONARY if you wish to write
6
6
tools portable to other RDBMs.
7
7
 
 
8
Drizzle currently provides the following INFORMATION_SCHEMA tables:
 
9
 
 
10
 * CHECK_CONSTRAINTS
 
11
 * COLUMNS
 
12
 * COLUMN_DOMAIN_USAGE
 
13
 * COLUMN_PRIVILEGES
 
14
 * CONSTRAINT_COLUMN_USAGE
 
15
 * CONSTRAINT_TABLE_USAGE
 
16
 * DOMAINS
 
17
 * DOMAIN_CONSTRAINTS
 
18
 * KEY_COLUMN_USAGE
 
19
 * PARAMETERS
 
20
 * REFERENTIAL_CONSTRAINTS
 
21
 * ROUTINES
 
22
 * ROUTINE_COLUMNS
 
23
 * SCHEMATA
 
24
 * TABLES
 
25
 * TABLE_CONSTRAINTS
 
26
 * TABLE_PRIVILEGES
 
27
 * VIEWS
 
28
 * VIEW_COLUMN_USAGE
 
29
 * VIEW_TABLE_USAGE
 
30
 
 
31
The INFORMATION_SCHEMA is implemented as a standard set of plugins that use the FunctionEngine. The FunctionEngine is a Drizzle Storage Engine plugin that allows table function plugins to iterate over internal data structures and present them to the user as normal SQL data. For all normal queries that either scan or do lookups on INFORMATION_SCHEMA, no tempory table is created; the data structures internal to Drizzle are iterated through and returned row by row to the user. The only exception is when the rnd_pos access method is used, then a copy of the table is made in memory so that we will not have to continually perform full table scans.
 
32
 
 
33
All of the INFORMATION_SCHEMA tables are read-only.
 
34
 
 
35
CHECK_CONSTRAINTS
 
36
-----------------
 
37
 
 
38
.. code-block:: mysql
 
39
 
 
40
 CREATE TABLE `CHECK_CONSTRAINTS` (
 
41
   `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
42
   `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
43
   `CONSTRAINT_NAME` VARCHAR(256) NOT NULL,
 
44
   `CHECK_CLAUSE` VARCHAR(256) NOT NULL
 
45
 ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
46
 
 
47
Since Drizzle does not currentl support CHECK constraints, this table is (currently) always empty and is provided for standards compatibility
 
48
 
 
49
 
 
50
COLUMNS
 
51
-------
 
52
 
 
53
.. code-block:: mysql
 
54
 
 
55
  CREATE TABLE `COLUMNS` (
 
56
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
57
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
58
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
59
    `COLUMN_NAME` VARCHAR(256) NOT NULL,
 
60
    `ORDINAL_POSITION` BIGINT NOT NULL,
 
61
    `COLUMN_DEFAULT` VARCHAR(256) DEFAULT NULL,
 
62
    `IS_NULLABLE` BOOLEAN NOT NULL,
 
63
    `DATA_TYPE` VARCHAR(256) NOT NULL,
 
64
    `CHARACTER_MAXIMUM_LENGTH` BIGINT DEFAULT NULL,
 
65
    `CHARACTER_OCTET_LENGTH` BIGINT DEFAULT NULL,
 
66
    `NUMERIC_PRECISION` BIGINT DEFAULT NULL,
 
67
    `NUMERIC_PRECISION_RADIX` BIGINT DEFAULT NULL,
 
68
    `NUMERIC_SCALE` BIGINT DEFAULT NULL,
 
69
    `DATETIME_PRECISION` VARCHAR(256) DEFAULT NULL,
 
70
    `CHARACTER_SET_CATALOG` VARCHAR(256) DEFAULT NULL,
 
71
    `CHARACTER_SET_SCHEMA` VARCHAR(256) DEFAULT NULL,
 
72
    `CHARACTER_SET_NAME` VARCHAR(256) DEFAULT NULL,
 
73
    `COLLATION_CATALOG` VARCHAR(256) DEFAULT NULL,
 
74
    `COLLATION_SCHEMA` VARCHAR(256) DEFAULT NULL,
 
75
    `COLLATION_NAME` VARCHAR(256) DEFAULT NULL,
 
76
    `DOMAIN_CATALOG` VARCHAR(256) DEFAULT NULL,
 
77
    `DOMAIN_SCHEMA` VARCHAR(256) DEFAULT NULL,
 
78
    `DOMAIN_NAME` VARCHAR(256) DEFAULT NULL
 
79
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
80
 
 
81
 
 
82
COLUMN_DOMAIN_USAGE
 
83
-------------------
 
84
 
 
85
.. code-block:: mysql
 
86
 
 
87
  CREATE TABLE `COLUMN_DOMAIN_USAGE` (
 
88
    `DOMAIN_CATALOG` VARCHAR(256) NOT NULL,
 
89
    `DOMAIN_SCHEMA` VARCHAR(256) NOT NULL,
 
90
    `DOMAIN_NAME` VARCHAR(256) NOT NULL,
 
91
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
92
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
93
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
94
    `COLUMN_NAME` VARCHAR(256) NOT NULL
 
95
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
96
 
 
97
 
 
98
COLUMN_PRIVILEGES
 
99
-----------------
 
100
 
 
101
.. code-block:: mysql
 
102
 
 
103
  CREATE TABLE `COLUMN_PRIVILEGES` (
 
104
    `GRANTOR` VARCHAR(256) NOT NULL,
 
105
    `GRANTEE` VARCHAR(256) NOT NULL,
 
106
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
107
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
108
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
109
    `COLUMN_NAME` VARCHAR(256) NOT NULL,
 
110
    `PRIVILEGE_TYPE` VARCHAR(256) NOT NULL,
 
111
    `IS_GRANTABLE` VARCHAR(256) NOT NULL
 
112
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
113
 
 
114
 
 
115
CONSTRAINT_COLUMN_USAGE
 
116
-----------------------
 
117
 
 
118
.. code-block:: mysql
 
119
 
 
120
  CREATE TABLE `CONSTRAINT_COLUMN_USAGE` (
 
121
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
122
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
123
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
124
    `COLUMN_NAME` VARCHAR(256) NOT NULL,
 
125
    `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
126
    `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
127
    `CONSTRAINT_NAME` VARCHAR(256) NOT NULL
 
128
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
129
 
 
130
CONSTRAINT_TABLE_USAGE
 
131
----------------------
 
132
 
 
133
.. code-block:: mysql
 
134
 
 
135
  CREATE TABLE `CONSTRAINT_TABLE_USAGE` (
 
136
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
137
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
138
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
139
    `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
140
    `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
141
    `CONSTRAINT_NAME` VARCHAR(256) NOT NULL
 
142
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
143
 
 
144
DOMAINS
 
145
-------
 
146
 
 
147
.. code-block:: mysql
 
148
 
 
149
  CREATE TABLE `DOMAINS` (
 
150
    `DOMAIN_CATALOG` VARCHAR(256) NOT NULL,
 
151
    `DOMAIN_SCHEMA` VARCHAR(256) NOT NULL,
 
152
    `DOMAIN_NAME` VARCHAR(256) NOT NULL,
 
153
    `DATA_TYPE` VARCHAR(256) NOT NULL,
 
154
    `CHARACTER_MAXIMUM_LENGTH` VARCHAR(256) NOT NULL,
 
155
    `CHARACTER_OCTET_LENGTH` VARCHAR(256) NOT NULL,
 
156
    `COLLATION_CATALOG` VARCHAR(256) NOT NULL,
 
157
    `COLLATION_SCHEMA` VARCHAR(256) NOT NULL,
 
158
    `COLLATION_NAME` VARCHAR(256) NOT NULL,
 
159
    `CHARACTER_SET_CATALOG` VARCHAR(256) NOT NULL,
 
160
    `CHARACTER_SET_SCHEMA` VARCHAR(256) NOT NULL,
 
161
    `CHARACTER_SET_NAME` VARCHAR(256) NOT NULL,
 
162
    `NUMERIC_PRECISION` VARCHAR(256) NOT NULL,
 
163
    `NUMERIC_PRECISION_RADIX` VARCHAR(256) NOT NULL,
 
164
    `NUMERIC_SCALE` VARCHAR(256) NOT NULL,
 
165
    `DATETIME_PRECISION` VARCHAR(256) NOT NULL,
 
166
    `DOMAIN_DEFAULT` VARCHAR(256) NOT NULL
 
167
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
168
 
 
169
 
 
170
DOMAIN_CONSTRAINTS
 
171
------------------
 
172
 
 
173
.. code-block:: mysql
 
174
 
 
175
  CREATE TABLE `DOMAIN_CONSTRAINTS` (
 
176
    `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
177
    `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
178
    `CONSTRAINT_NAME` VARCHAR(256) NOT NULL,
 
179
    `DOMAIN_CATALOG` VARCHAR(256) NOT NULL,
 
180
    `DOMAIN_SCHEMA` VARCHAR(256) NOT NULL,
 
181
    `DOMAIN_NAME` VARCHAR(256) NOT NULL,
 
182
    `IS_DEFERRABLE` BOOLEAN NOT NULL,
 
183
    `INITIALLY_DEFERRED` BOOLEAN NOT NULL
 
184
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
185
 
 
186
KEY_COLUMN_USAGE
 
187
----------------
 
188
 
 
189
 
 
190
.. code-block:: mysql
 
191
 
 
192
  CREATE TABLE `KEY_COLUMN_USAGE` (
 
193
    `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
194
    `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
195
    `CONSTRAINT_NAME` VARCHAR(256) NOT NULL,
 
196
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
197
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
198
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
199
    `COLUMN_NAME` VARCHAR(256) NOT NULL,
 
200
    `ORDINAL_POSITION` BIGINT NOT NULL
 
201
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
202
 
 
203
 
 
204
PARAMETERS
 
205
----------
 
206
 
 
207
 
 
208
.. code-block:: mysql
 
209
 
 
210
  CREATE TABLE `PARAMETERS` (
 
211
    `SPECIFIC_CATALOG` VARCHAR(256) NOT NULL,
 
212
    `SPECIFIC_SCHEMA` VARCHAR(256) NOT NULL,
 
213
    `SPECIFIC_NAME` VARCHAR(256) NOT NULL,
 
214
    `ORDINAL_POSITION` VARCHAR(256) NOT NULL,
 
215
    `PARAMETER_MODE` VARCHAR(256) NOT NULL,
 
216
    `IS_RESULT` VARCHAR(256) NOT NULL,
 
217
    `AS_LOCATOR` VARCHAR(256) NOT NULL,
 
218
    `PARAMETER_NAME` VARCHAR(256) NOT NULL,
 
219
    `DATA_TYPE` VARCHAR(256) NOT NULL,
 
220
    `CHARACTER_MAXIMUM_LENGTH` VARCHAR(256) NOT NULL,
 
221
    `CHARACTER_OCTET_LENGTH` VARCHAR(256) NOT NULL,
 
222
    `CHARACTER_OCTET_LENGTH` VARCHAR(256) NOT NULL,
 
223
    `COLLATION_CATALOG` VARCHAR(256) NOT NULL,
 
224
    `COLLATION_SCHEMA` VARCHAR(256) NOT NULL,
 
225
    `COLLATION_NAME` VARCHAR(256) NOT NULL,
 
226
    `CHARACTER_SET_CATALOG` VARCHAR(256) NOT NULL,
 
227
    `CHARACTER_SET_SCHEMA` VARCHAR(256) NOT NULL,
 
228
    `CHARACTER_SET_NAME` VARCHAR(256) NOT NULL,
 
229
    `NUMERIC_PRECISION` VARCHAR(256) NOT NULL,
 
230
    `NUMERIC_PRECISION_RADIX` VARCHAR(256) NOT NULL,
 
231
    `NUMERIC_SCALE` VARCHAR(256) NOT NULL,
 
232
    `DATETIME_PRECISION` VARCHAR(256) NOT NULL,
 
233
    `INTERVAL_TYPE` VARCHAR(256) NOT NULL,
 
234
    `INTERVAL_PRECISION` VARCHAR(256) NOT NULL,
 
235
    `USER_DEFINED_TYPE_CATALOG` VARCHAR(256) NOT NULL,
 
236
    `USER_DEFINED_TYPE_SCHEMA` VARCHAR(256) NOT NULL,
 
237
    `USER_DEFINED_TYPE_NAME` VARCHAR(256) NOT NULL,
 
238
    `SCOPE_CATALOG` VARCHAR(256) NOT NULL,
 
239
    `SCOPE_SCHEMA` VARCHAR(256) NOT NULL,
 
240
    `SCOPE_NAME` VARCHAR(256) NOT NULL
 
241
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
242
 
 
243
 
 
244
REFERENTIAL_CONSTRAINTS
 
245
-----------------------
 
246
 
 
247
 
 
248
.. code-block:: mysql
 
249
 
 
250
  CREATE TABLE `REFERENTIAL_CONSTRAINTS` (
 
251
    `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
252
    `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
253
    `CONSTRAINT_NAME` VARCHAR(256) NOT NULL,
 
254
    `UNIQUE_CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
255
    `UNIQUE_CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
256
    `UNIQUE_CONSTRAINT_NAME` VARCHAR(256) NOT NULL,
 
257
    `MATCH_OPTION` VARCHAR(256) NOT NULL,
 
258
    `UPDATE_RULE` VARCHAR(256) NOT NULL,
 
259
    `DELETE_RULE` VARCHAR(256) NOT NULL
 
260
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
261
 
 
262
 
 
263
ROUTINES
 
264
--------
 
265
 
 
266
 
 
267
.. code-block:: mysql
 
268
 
 
269
  CREATE TABLE `ROUTINES` (
 
270
    `SPECIFIC_CATALOG` VARCHAR(256) NOT NULL,
 
271
    `SPECIFIC_SCHEMA` VARCHAR(256) NOT NULL,
 
272
    `SPECIFIC_NAME` VARCHAR(256) NOT NULL,
 
273
    `ROUTINE_CATALOG` VARCHAR(256) NOT NULL,
 
274
    `ROUTINE_SCHEMA` VARCHAR(256) NOT NULL,
 
275
    `ROUTINE_NAME` VARCHAR(256) NOT NULL,
 
276
    `MODULE_CATALOG` VARCHAR(256) NOT NULL,
 
277
    `MODULE_SCHEMA` VARCHAR(256) NOT NULL,
 
278
    `MODULE_NAME` VARCHAR(256) NOT NULL,
 
279
    `UDT_CATALOG` VARCHAR(256) NOT NULL,
 
280
    `UDT_SCHEMA` VARCHAR(256) NOT NULL,
 
281
    `UDT_NAME` VARCHAR(256) NOT NULL,
 
282
    `DATA_TYPE` VARCHAR(256) NOT NULL,
 
283
    `CHARACTER_MAXIMUM_LENGTH` VARCHAR(256) NOT NULL,
 
284
    `CHARACTER_OCTET_LENGTH` VARCHAR(256) NOT NULL,
 
285
    `COLLATION_CATALOG` VARCHAR(256) NOT NULL,
 
286
    `COLLATION_SCHEMA` VARCHAR(256) NOT NULL,
 
287
    `COLLATION_NAME` VARCHAR(256) NOT NULL,
 
288
    `CHARACTER_SET_CATALOG` VARCHAR(256) NOT NULL,
 
289
    `CHARACTER_SET_SCHEMA` VARCHAR(256) NOT NULL,
 
290
    `CHARACTER_SET_NAME` VARCHAR(256) NOT NULL,
 
291
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
292
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
293
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
294
    `NUMERIC_PRECISION` VARCHAR(256) NOT NULL,
 
295
    `NUMERIC_PRECISION_RADIX` VARCHAR(256) NOT NULL,
 
296
    `NUMERIC_SCALE` VARCHAR(256) NOT NULL,
 
297
    `DATETIME_PRECISION` VARCHAR(256) NOT NULL,
 
298
    `INTERVAL_TYPE` VARCHAR(256) NOT NULL,
 
299
    `INTERVAL_PRECISION` VARCHAR(256) NOT NULL,
 
300
    `TYPE_UDT_CATALOG` VARCHAR(256) NOT NULL,
 
301
    `TYPE_UDT_SCHEMA` VARCHAR(256) NOT NULL,
 
302
    `TYPE_UDT_NAME` VARCHAR(256) NOT NULL,
 
303
    `SCOPE_CATALOG` VARCHAR(256) NOT NULL,
 
304
    `SCOPE_SCHEMA` VARCHAR(256) NOT NULL,
 
305
    `SCOPE_NAME` VARCHAR(256) NOT NULL,
 
306
    `MAXIMUM_CARDINALITY` VARCHAR(256) NOT NULL,
 
307
    `DTD_IDENTIFIER` VARCHAR(256) NOT NULL,
 
308
    `ROUTINE_BODY` VARCHAR(256) NOT NULL,
 
309
    `ROUTINE_DEFINITION` VARCHAR(256) NOT NULL,
 
310
    `EXTERNAL_NAME` VARCHAR(256) NOT NULL,
 
311
    `EXTERNAL_LANGUAGE` VARCHAR(256) NOT NULL,
 
312
    `PARAMETER_STYLE` VARCHAR(256) NOT NULL,
 
313
    `IS_DETERMINISTIC` VARCHAR(256) NOT NULL,
 
314
    `SQL_DATA_ACCESS` VARCHAR(256) NOT NULL,
 
315
    `IS_NULL_CALL` VARCHAR(256) NOT NULL,
 
316
    `SQL_PATH` VARCHAR(256) NOT NULL,
 
317
    `SCHEMA_LEVEL_ROUTINE` VARCHAR(256) NOT NULL,
 
318
    `MAX_DYNAMIC_RESULT_SETS` VARCHAR(256) NOT NULL,
 
319
    `IS_USER_DEFINED_CAST` VARCHAR(256) NOT NULL,
 
320
    `IS_IMPLICITLY_INVOCABLE` VARCHAR(256) NOT NULL,
 
321
    `CREATED` VARCHAR(256) NOT NULL,
 
322
    `LAST_ALTERED` VARCHAR(256) NOT NULL
 
323
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
324
 
 
325
 
 
326
ROUTINE_COLUMNS
 
327
---------------
 
328
 
 
329
.. code-block:: mysql
 
330
 
 
331
  CREATE TABLE `ROUTINE_COLUMNS` (
 
332
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
333
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
334
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
335
    `COLUMN_NAME` VARCHAR(256) NOT NULL,
 
336
    `ORDINAL_POSITION` VARCHAR(256) NOT NULL,
 
337
    `COLUMN_DEFAULT` VARCHAR(256) NOT NULL,
 
338
    `IS_NULLABLE` VARCHAR(256) NOT NULL,
 
339
    `DATA_TYPE` VARCHAR(256) NOT NULL,
 
340
    `CHARACTER_MAXIMUM_LENGTH` VARCHAR(256) NOT NULL,
 
341
    `CHARACTER_OCTET_LENGTH` VARCHAR(256) NOT NULL,
 
342
    `NUMERIC_PRECISION` VARCHAR(256) NOT NULL,
 
343
    `NUMERIC_PRECISION_RADIX` VARCHAR(256) NOT NULL,
 
344
    `NUMERIC_SCALE` VARCHAR(256) NOT NULL,
 
345
    `DATETIME_PRECISION` VARCHAR(256) NOT NULL,
 
346
    `CHARACTER_SET_CATALOG` VARCHAR(256) NOT NULL,
 
347
    `CHARACTER_SET_SCHEMA` VARCHAR(256) NOT NULL,
 
348
    `CHARACTER_SET_NAME` VARCHAR(256) NOT NULL,
 
349
    `COLLATION_CATALOG` VARCHAR(256) NOT NULL,
 
350
    `COLLATION_SCHEMA` VARCHAR(256) NOT NULL,
 
351
    `COLLATION_NAME` VARCHAR(256) NOT NULL,
 
352
    `DOMAIN_CATALOG` VARCHAR(256) NOT NULL,
 
353
    `DOMAIN_SCHEMA` VARCHAR(256) NOT NULL,
 
354
    `DOMAIN_NAME` VARCHAR(256) NOT NULL
 
355
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
356
 
 
357
SCHEMATA
 
358
--------
 
359
 
 
360
.. code-block:: mysql
 
361
 
 
362
  CREATE TABLE `SCHEMATA` (
 
363
    `CATALOG_NAME` VARCHAR(256) NOT NULL,
 
364
    `SCHEMA_NAME` VARCHAR(256) NOT NULL,
 
365
    `SCHEMA_OWNER` VARCHAR(256) DEFAULT NULL,
 
366
    `DEFAULT_CHARACTER_SET_CATALOG` VARCHAR(256) DEFAULT NULL,
 
367
    `DEFAULT_CHARACTER_SET_SCHEMA` VARCHAR(256) DEFAULT NULL,
 
368
    `DEFAULT_CHARACTER_SET_NAME` VARCHAR(256) DEFAULT NULL
 
369
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
370
 
 
371
 
 
372
TABLES
 
373
------
 
374
 
 
375
.. code-block:: mysql
 
376
 
 
377
  CREATE TABLE `TABLES` (
 
378
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
379
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
380
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
381
    `TABLE_TYPE` VARCHAR(256) NOT NULL
 
382
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
383
 
 
384
This table contains a row for every table and view in this catalog that the current user has permission to see.
 
385
 
 
386
The tuple of TABLE_CATALOG, TABLE_SCHEMA and TABLE_NAME uniquely identify a table.
 
387
 
 
388
TABLE_CONSTRAINTS
 
389
-----------------
 
390
 
 
391
 
 
392
.. code-block:: mysql
 
393
 
 
394
  CREATE TABLE `TABLE_CONSTRAINTS` (
 
395
    `CONSTRAINT_CATALOG` VARCHAR(256) NOT NULL,
 
396
    `CONSTRAINT_SCHEMA` VARCHAR(256) NOT NULL,
 
397
    `CONSTRAINT_NAME` VARCHAR(256) NOT NULL,
 
398
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
399
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
400
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
401
    `CONSTRAINT_TYPE` VARCHAR(256) NOT NULL,
 
402
    `IS_DEFERRABLE` BOOLEAN NOT NULL,
 
403
    `INITIALLY_DEFERRED` BOOLEAN NOT NULL
 
404
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
405
 
 
406
 
 
407
The tuple of TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME uniquely identifies the table that this constraint applies to.
 
408
 
 
409
CONSTRAINT_TYPE is one of UNIQUE, PRIMARY KEY, FOREIGN KEY or CHECK.
 
410
 
 
411
TABLE_PRIVILEGES
 
412
----------------
 
413
 
 
414
.. code-block:: mysql
 
415
 
 
416
  CREATE TABLE `TABLE_PRIVILEGES` (
 
417
    `GRANTOR` VARCHAR(256) NOT NULL,
 
418
    `GRANTEE` VARCHAR(256) NOT NULL,
 
419
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
420
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
421
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
422
    `COLUMN_NAME` VARCHAR(256) NOT NULL,
 
423
    `PRIVILEGE_TYPE` VARCHAR(256) NOT NULL,
 
424
    `IS_GRANTABLE` VARCHAR(256) NOT NULL
 
425
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
426
 
 
427
VIEWS
 
428
-----
 
429
 
 
430
 
 
431
.. code-block:: mysql
 
432
 
 
433
  CREATE TABLE `VIEWS` (
 
434
    `VIEW_CATALOG` VARCHAR(256) NOT NULL,
 
435
    `VIEW_SCHEMA` VARCHAR(256) NOT NULL,
 
436
    `VIEW_NAME` VARCHAR(256) NOT NULL,
 
437
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
438
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
439
    `TABLE_NAME` VARCHAR(256) NOT NULL
 
440
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
441
 
 
442
VIEW_COLUMN_USAGE
 
443
-----------------
 
444
 
 
445
.. code-block:: mysql
 
446
 
 
447
  CREATE TABLE `VIEW_COLUMN_USAGE` (
 
448
    `VIEW_CATALOG` VARCHAR(256) NOT NULL,
 
449
    `VIEW_SCHEMA` VARCHAR(256) NOT NULL,
 
450
    `VIEW_NAME` VARCHAR(256) NOT NULL,
 
451
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
452
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
453
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
454
    `COLUMN_NAME` VARCHAR(256) NOT NULL
 
455
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
456
 
 
457
 
 
458
VIEW_TABLE_USAGE
 
459
----------------
 
460
 
 
461
.. code-block:: mysql
 
462
 
 
463
  CREATE TABLE `VIEW_TABLE_USAGE` (
 
464
    `TABLE_CATALOG` VARCHAR(256) NOT NULL,
 
465
    `TABLE_SCHEMA` VARCHAR(256) NOT NULL,
 
466
    `TABLE_NAME` VARCHAR(256) NOT NULL,
 
467
    `VIEW_DEFINITION` VARCHAR(256) NOT NULL,
 
468
    `CHECK_OPTION` VARCHAR(256) NOT NULL,
 
469
    `IS_UPDATABLE` VARCHAR(256) NOT NULL
 
470
  ) ENGINE=FunctionEngine COLLATE = utf8_general_ci REPLICATE = FALSE DEFINER 'SYSTEM'
 
471
 
8
472