display message when search returns zero rows
[phpmyadmin/dkf.git] / libraries / sqlparser.data.php
blobdffd6b1662640864a2bf36bb3b4a3d0b3dda4be7
1 <?php
2 /* vim: set expandtab sw=4 ts=4 sts=4: */
3 /**
4 * SQL Parser Matching Data
6 * Copyright 2002 Robin Johnson <robbat2@users.sourceforge.net>
7 * http://www.orbis-terrarum.net/?l=people.robbat2
9 * This data is used by the SQL Parser to recognize keywords
11 * It has been extracted from the lex.h file in the MySQL BK tree
12 * (around 4.0.2) as well as the MySQL documentation.
14 * Note: before adding a value in the arrays, ensure that you respect
15 * proper sorting, especially with underscores. And don't forget to
16 * update the _cnt variable at the end of each array.
17 * (It's slower to have PHP do the count).
19 * It's easier to use only uppercase for proper sorting. In case of
20 * doubt, use the test case to verify.
22 * @package phpMyAdmin
24 if (! defined('PHPMYADMIN')) {
25 exit;
28 if (! isset($GLOBALS['sql_delimiter'])) {
29 $GLOBALS['sql_delimiter'] = ';';
32 /**
33 * @global array MySQL function names
35 $PMA_SQPdata_function_name = array (
36 'ABS',
37 'ACOS',
38 'ADDDATE',
39 'ADDTIME',
40 'AES_DECRYPT',
41 'AES_ENCRYPT',
42 'AREA', // Area() polygon-property-functions.html
43 'ASBINARY', // AsBinary()
44 'ASCII',
45 'ASIN',
46 'ASTEXT', // AsText()
47 'ATAN',
48 'ATAN2',
49 'AVG',
50 'BDMPOLYFROMTEXT', // BdMPolyFromText()
51 'BDMPOLYFROMWKB', // BdMPolyFromWKB()
52 'BDPOLYFROMTEXT', // BdPolyFromText()
53 'BDPOLYFROMWKB', // BdPolyFromWKB()
54 'BENCHMARK',
55 'BIN',
56 'BIT_AND',
57 'BIT_COUNT',
58 'BIT_LENGTH',
59 'BIT_OR',
60 'BIT_XOR', // group-by-functions.html
61 'BOUNDARY', // Boundary() general-geometry-property-functions.html
62 'BUFFER', // Buffer()
63 'CAST',
64 'CEIL',
65 'CEILING',
66 'CENTROID', // Centroid() multipolygon-property-functions.html
67 'CHAR', // string-functions.html
68 'CHARACTER_LENGTH',
69 'CHARSET', // information-functions.html
70 'CHAR_LENGTH',
71 'COALESCE',
72 'COERCIBILITY', // information-functions.html
73 'COLLATION', // information-functions.html
74 'COMPRESS', // string-functions.html
75 'CONCAT',
76 'CONCAT_WS',
77 'CONNECTION_ID',
78 'CONTAINS', // Contains()
79 'CONV',
80 'CONVERT',
81 'CONVERT_TZ',
82 'CONVEXHULL', // ConvexHull()
83 'COS',
84 'COT',
85 'COUNT',
86 'CRC32', // mathematical-functions.html
87 'CROSSES', // Crosses()
88 'CURDATE',
89 'CURRENT_DATE',
90 'CURRENT_TIME',
91 'CURRENT_TIMESTAMP',
92 'CURRENT_USER',
93 'CURTIME',
94 'DATABASE',
95 'DATE', // date-and-time-functions.html
96 'DATEDIFF', // date-and-time-functions.html
97 'DATE_ADD',
98 'DATE_DIFF',
99 'DATE_FORMAT',
100 'DATE_SUB',
101 'DAY',
102 'DAYNAME',
103 'DAYOFMONTH',
104 'DAYOFWEEK',
105 'DAYOFYEAR',
106 'DECODE',
107 'DEFAULT', // miscellaneous-functions.html
108 'DEGREES',
109 'DES_DECRYPT',
110 'DES_ENCRYPT',
111 'DIFFERENCE', // Difference()
112 'DIMENSION', // Dimension() general-geometry-property-functions.html
113 'DISJOINT', // Disjoint()
114 'DISTANCE', // Distance()
115 'ELT',
116 'ENCODE',
117 'ENCRYPT',
118 'ENDPOINT', // EndPoint() linestring-property-functions.html
119 'ENVELOPE', // Envelope() general-geometry-property-functions.html
120 'EQUALS', // Equals()
121 'EXP',
122 'EXPORT_SET',
123 'EXTERIORRING', // ExteriorRing() polygon-property-functions.html
124 'EXTRACT',
125 'EXTRACTVALUE', // ExtractValue() xml-functions.html
126 'FIELD',
127 'FIND_IN_SET',
128 'FLOOR',
129 'FORMAT',
130 'FOUND_ROWS',
131 'FROM_DAYS',
132 'FROM_UNIXTIME',
133 'GEOMCOLLFROMTEXT', // GeomCollFromText()
134 'GEOMCOLLFROMWKB', // GeomCollFromWKB()
135 'GEOMETRYCOLLECTION', // GeometryCollection()
136 'GEOMETRYCOLLECTIONFROMTEXT', // GeometryCollectionFromText()
137 'GEOMETRYCOLLECTIONFROMWKB', // GeometryCollectionFromWKB()
138 'GEOMETRYFROMTEXT', // GeometryFromText()
139 'GEOMETRYFROMWKB', // GeometryFromWKB()
140 'GEOMETRYN', // GeometryN() geometrycollection-property-functions.html
141 'GEOMETRYTYPE', // GeometryType() general-geometry-property-functions.html
142 'GEOMFROMTEXT', // GeomFromText()
143 'GEOMFROMWKB', // GeomFromWKB()
144 'GET_FORMAT',
145 'GET_LOCK',
146 'GLENGTH', // GLength() linestring-property-functions.html
147 'GREATEST',
148 'GROUP_CONCAT',
149 'GROUP_UNIQUE_USERS',
150 'HEX',
151 'HOUR',
152 'IF', //control-flow-functions.html
153 'IFNULL',
154 'INET_ATON',
155 'INET_NTOA',
156 'INSERT', // string-functions.html
157 'INSTR',
158 'INTERIORRINGN', // InteriorRingN() polygon-property-functions.html
159 'INTERSECTION', // Intersection()
160 'INTERSECTS', // Intersects()
161 'INTERVAL',
162 'ISCLOSED', // IsClosed() multilinestring-property-functions.html
163 'ISEMPTY', // IsEmpty() general-geometry-property-functions.html
164 'ISNULL',
165 'ISRING', // IsRing() linestring-property-functions.html
166 'ISSIMPLE', // IsSimple() general-geometry-property-functions.html
167 'IS_FREE_LOCK',
168 'IS_USED_LOCK', // miscellaneous-functions.html
169 'LAST_DAY',
170 'LAST_INSERT_ID',
171 'LCASE',
172 'LEAST',
173 'LEFT',
174 'LENGTH',
175 'LINEFROMTEXT', // LineFromText()
176 'LINEFROMWKB', // LineFromWKB()
177 'LINESTRING', // LineString()
178 'LINESTRINGFROMTEXT', // LineStringFromText()
179 'LINESTRINGFROMWKB', // LineStringFromWKB()
180 'LN',
181 'LOAD_FILE',
182 'LOCALTIME',
183 'LOCALTIMESTAMP',
184 'LOCATE',
185 'LOG',
186 'LOG10',
187 'LOG2',
188 'LOWER',
189 'LPAD',
190 'LTRIM',
191 'MAKEDATE',
192 'MAKETIME',
193 'MAKE_SET',
194 'MASTER_POS_WAIT',
195 'MAX',
196 'MBRCONTAINS', // MBRContains()
197 'MBRDISJOINT', // MBRDisjoint()
198 'MBREQUAL', // MBREqual()
199 'MBRINTERSECTS', // MBRIntersects()
200 'MBROVERLAPS', // MBROverlaps()
201 'MBRTOUCHES', // MBRTouches()
202 'MBRWITHIN', // MBRWithin()
203 'MD5',
204 'MICROSECOND',
205 'MID',
206 'MIN',
207 'MINUTE',
208 'MLINEFROMTEXT', // MLineFromText()
209 'MLINEFROMWKB', // MLineFromWKB()
210 'MOD',
211 'MONTH',
212 'MONTHNAME',
213 'MPOINTFROMTEXT', // MPointFromText()
214 'MPOINTFROMWKB', // MPointFromWKB()
215 'MPOLYFROMTEXT', // MPolyFromText()
216 'MPOLYFROMWKB', // MPolyFromWKB()
217 'MULTILINESTRING', // MultiLineString()
218 'MULTILINESTRINGFROMTEXT', // MultiLineStringFromText()
219 'MULTILINESTRINGFROMWKB', // MultiLineStringFromWKB()
220 'MULTIPOINT', // MultiPoint()
221 'MULTIPOINTFROMTEXT', // MultiPointFromText()
222 'MULTIPOINTFROMWKB', // MultiPointFromWKB()
223 'MULTIPOLYGON', // MultiPolygon()
224 'MULTIPOLYGONFROMTEXT', // MultiPolygonFromText()
225 'MULTIPOLYGONFROMWKB', // MultiPolygonFromWKB()
226 'NAME_CONST', // NAME_CONST()
227 'NOW', // NOW()
228 'NULLIF',
229 'NUMGEOMETRIES', // NumGeometries() geometrycollection-property-functions.html
230 'NUMINTERIORRINGS', // NumInteriorRings() polygon-property-functions.html
231 'NUMPOINTS', // NumPoints() linestring-property-functions.html
232 'OCT',
233 'OCTET_LENGTH',
234 'OLD_PASSWORD',
235 'ORD',
236 'OVERLAPS', // Overlaps()
237 'PASSWORD',
238 'PERIOD_ADD',
239 'PERIOD_DIFF',
240 'PI',
241 'POINT', // Point()
242 'POINTFROMTEXT', // PointFromText()
243 'POINTFROMWKB', // PointFromWKB()
244 'POINTN', // PointN() inestring-property-functions.html
245 'POINTONSURFACE', // PointOnSurface() multipolygon-property-functions.html
246 'POLYFROMTEXT', // PolyFromText()
247 'POLYFROMWKB', // PolyFromWKB()
248 'POLYGON', // Polygon()
249 'POLYGONFROMTEXT', // PolygonFromText()
250 'POLYGONFROMWKB', // PolygonFromWKB()
251 'POSITION',
252 'POW',
253 'POWER',
254 'QUARTER',
255 'QUOTE',
256 'RADIANS',
257 'RAND',
258 'RELATED', // Related()
259 'RELEASE_LOCK',
260 'REPEAT',
261 'REPLACE', // string-functions.html
262 'REVERSE',
263 'RIGHT',
264 'ROUND',
265 'ROW_COUNT', // information-functions.html
266 'RPAD',
267 'RTRIM',
268 'SCHEMA', // information-functions.html
269 'SECOND',
270 'SEC_TO_TIME',
271 'SESSION_USER',
272 'SHA',
273 'SHA1',
274 'SIGN',
275 'SIN',
276 'SLEEP', // miscellaneous-functions.html
277 'SOUNDEX',
278 'SPACE',
279 'SQRT',
280 'SRID', // general-geometry-property-functions.html
281 'STARTPOINT', // StartPoint() linestring-property-functions.html
282 'STD',
283 'STDDEV',
284 'STDDEV_POP', // group-by-functions.html
285 'STDDEV_SAMP', // group-by-functions.html
286 'STRCMP',
287 'STR_TO_DATE',
288 'SUBDATE',
289 'SUBSTR',
290 'SUBSTRING',
291 'SUBSTRING_INDEX',
292 'SUBTIME',
293 'SUM',
294 'SYMDIFFERENCE', // SymDifference()
295 'SYSDATE',
296 'SYSTEM_USER',
297 'TAN',
298 'TIME',
299 'TIMEDIFF',
300 'TIMESTAMP',
301 'TIMESTAMPADD',
302 'TIMESTAMPDIFF',
303 'TIME_FORMAT',
304 'TIME_TO_SEC',
305 'TOUCHES', // Touches()
306 'TO_DAYS',
307 'TRIM',
308 'TRUNCATE', // mathematical-functions.html
309 'UCASE',
310 'UNCOMPRESS', // string-functions.html
311 'UNCOMPRESSED_LENGTH', // string-functions.html
312 'UNHEX', // string-functions.html
313 'UNIQUE_USERS',
314 'UNIX_TIMESTAMP',
315 'UPDATEXML', // UpdateXML() xml-functions.html
316 'UPPER',
317 'USER',
318 'UTC_DATE',
319 'UTC_TIME',
320 'UTC_TIMESTAMP',
321 'UUID', // miscellaneous-functions.html
322 'VARIANCE', // group-by-functions.html
323 'VAR_POP', // group-by-functions.html
324 'VAR_SAMP', // group-by-functions.html
325 'VERSION',
326 'WEEK',
327 'WEEKDAY',
328 'WEEKOFYEAR',
329 'WITHIN', // Within()
330 'X', // point-property-functions.html
331 'Y', // point-property-functions.html
332 'YEAR',
333 'YEARWEEK'
336 * $PMA_SQPdata_function_name_cnt = count($PMA_SQPdata_function_name);
338 * @global integer MySQL attributes count
340 $PMA_SQPdata_function_name_cnt = 298;
343 * @global array MySQL attributes
345 $PMA_SQPdata_column_attrib = array (
346 'ARCHIVE', // Engine
347 'ASCII',
348 'AUTO_INCREMENT',
349 'BDB', // Engine
350 'BERKELEYDB', // Engine alias BDB
351 'BINARY',
352 'BLACKHOLE', // Engine
353 'CSV', // Engine
354 'DEFAULT',
355 'EXAMPLE', // Engine
356 'FEDERATED', // Engine
357 'HEAP', // Engine
358 'INNOBASE', // Engine alias InnoDB
359 'INNODB', // Engine InnoDB
360 'ISAM', // Engine
361 'MARIA', // Engine
362 'MEMORY', // Engine alias HEAP, but preferred
363 'MERGE', // Engine
364 'MRG_ISAM', // Engine
365 'MRG_MYISAM', // Engine alias MERGE
366 'MYISAM', // Engine MyISAM
367 'NATIONAL',
368 'NDB', // Engine alias NDBCLUSTER
369 'NDBCLUSTER', // Engine
370 'PRECISION',
371 'UNDEFINED',
372 'UNICODE',
373 'UNSIGNED',
374 'VARYING',
375 'ZEROFILL'
378 * $PMA_SQPdata_column_attrib_cnt = count($PMA_SQPdata_column_attrib);
380 * @global integer MySQL attributes count
382 $PMA_SQPdata_column_attrib_cnt = 30;
385 * words that are reserved by MySQL and may not be used as identifiers without quotes
387 * @see http://dev.mysql.com/doc/refman/5.1/en/reserved-words.html
389 * @global array MySQL reserved words
391 $PMA_SQPdata_reserved_word = array (
392 'ACCESSIBLE', // 5.1
393 'ACTION',
394 'ADD',
395 'AFTER',
396 'AGAINST',
397 'AGGREGATE',
398 'ALGORITHM',
399 'ALL',
400 'ALTER',
401 'ANALYSE',
402 'ANALYZE',
403 'AND',
404 'AS',
405 'ASC',
406 'AUTOCOMMIT',
407 'AUTO_INCREMENT',
408 'AVG_ROW_LENGTH',
409 'BACKUP',
410 'BEGIN',
411 'BETWEEN',
412 'BINLOG',
413 'BOTH',
414 'BY',
415 'CASCADE',
416 'CASE',
417 'CHANGE',
418 'CHANGED',
419 'CHARSET',
420 'CHECK',
421 'CHECKSUM',
422 'COLLATE',
423 'COLLATION',
424 'COLUMN',
425 'COLUMNS',
426 'COMMENT',
427 'COMMIT',
428 'COMMITTED',
429 'COMPRESSED',
430 'CONCURRENT',
431 'CONSTRAINT',
432 'CONTAINS',
433 'CONVERT',
434 'CREATE',
435 'CROSS',
436 'CURRENT_TIMESTAMP',
437 'DATABASE',
438 'DATABASES',
439 'DAY',
440 'DAY_HOUR',
441 'DAY_MINUTE',
442 'DAY_SECOND',
443 'DEFINER',
444 'DELAYED',
445 'DELAY_KEY_WRITE',
446 'DELETE',
447 'DESC',
448 'DESCRIBE',
449 'DETERMINISTIC',
450 'DISTINCT',
451 'DISTINCTROW',
452 'DIV',
453 'DO',
454 'DROP',
455 'DUMPFILE',
456 'DUPLICATE',
457 'DYNAMIC',
458 'ELSE',
459 'ENCLOSED',
460 'END',
461 'ENGINE',
462 'ENGINES',
463 'ESCAPE',
464 'ESCAPED',
465 'EVENTS',
466 'EXECUTE',
467 'EXISTS',
468 'EXPLAIN',
469 'EXTENDED',
470 'FAST',
471 'FIELDS',
472 'FILE',
473 'FIRST',
474 'FIXED',
475 'FLUSH',
476 'FOR',
477 'FORCE',
478 'FOREIGN',
479 'FROM',
480 'FULL',
481 'FULLTEXT',
482 'FUNCTION',
483 'GEMINI',
484 'GEMINI_SPIN_RETRIES',
485 'GLOBAL',
486 'GRANT',
487 'GRANTS',
488 'GROUP',
489 'HAVING',
490 'HEAP',
491 'HIGH_PRIORITY',
492 'HOSTS',
493 'HOUR',
494 'HOUR_MINUTE',
495 'HOUR_SECOND',
496 'IDENTIFIED',
497 'IF',
498 'IGNORE',
499 'IN',
500 'INDEX',
501 'INDEXES',
502 'INFILE',
503 'INNER',
504 'INSERT',
505 'INSERT_ID',
506 'INSERT_METHOD',
507 'INTERVAL',
508 'INTO',
509 'INVOKER',
510 'IS',
511 'ISOLATION',
512 'JOIN',
513 'KEY',
514 'KEYS',
515 'KILL',
516 'LAST_INSERT_ID',
517 'LEADING',
518 'LEFT',
519 'LEVEL',
520 'LIKE',
521 'LIMIT',
522 'LINEAR', // 5.1
523 'LINES',
524 'LOAD',
525 'LOCAL',
526 'LOCK',
527 'LOCKS',
528 'LOGS',
529 'LOW_PRIORITY',
530 'MARIA', // 5.1 ?
531 'MASTER',
532 'MASTER_CONNECT_RETRY',
533 'MASTER_HOST',
534 'MASTER_LOG_FILE',
535 'MASTER_LOG_POS',
536 'MASTER_PASSWORD',
537 'MASTER_PORT',
538 'MASTER_USER',
539 'MATCH',
540 'MAX_CONNECTIONS_PER_HOUR',
541 'MAX_QUERIES_PER_HOUR',
542 'MAX_ROWS',
543 'MAX_UPDATES_PER_HOUR',
544 'MAX_USER_CONNECTIONS',
545 'MEDIUM',
546 'MERGE',
547 'MINUTE',
548 'MINUTE_SECOND',
549 'MIN_ROWS',
550 'MODE',
551 'MODIFY',
552 'MONTH',
553 'MRG_MYISAM',
554 'MYISAM',
555 'NAMES',
556 'NATURAL',
557 // 'NO' is not allowed in SQL-99 but is allowed in MySQL
558 //'NO',
559 'NOT',
560 'NULL',
561 'OFFSET',
562 'ON',
563 'OPEN',
564 'OPTIMIZE',
565 'OPTION',
566 'OPTIONALLY',
567 'OR',
568 'ORDER',
569 'OUTER',
570 'OUTFILE',
571 'PACK_KEYS',
572 'PAGE', // 5.1-maria ?
573 'PAGE_CHECKSUM', // 5.1
574 'PARTIAL',
575 'PARTITION', // 5.1
576 'PARTITIONS', // 5.1
577 'PASSWORD',
578 'PRIMARY',
579 'PRIVILEGES',
580 'PROCEDURE',
581 'PROCESS',
582 'PROCESSLIST',
583 'PURGE',
584 'QUICK',
585 'RAID0',
586 'RAID_CHUNKS',
587 'RAID_CHUNKSIZE',
588 'RAID_TYPE',
589 'RANGE', // 5.1
590 'READ',
591 'READ_ONLY', // 5.1
592 'READ_WRITE', // 5.1
593 'REFERENCES',
594 'REGEXP',
595 'RELOAD',
596 'RENAME',
597 'REPAIR',
598 'REPEATABLE',
599 'REPLACE',
600 'REPLICATION',
601 'RESET',
602 'RESTORE',
603 'RESTRICT',
604 'RETURN',
605 'RETURNS',
606 'REVOKE',
607 'RIGHT',
608 'RLIKE',
609 'ROLLBACK',
610 'ROW',
611 'ROWS',
612 'ROW_FORMAT',
613 'SECOND',
614 'SECURITY',
615 'SELECT',
616 'SEPARATOR',
617 'SERIALIZABLE',
618 'SESSION',
619 'SHARE',
620 'SHOW',
621 'SHUTDOWN',
622 'SLAVE',
623 'SONAME',
624 'SOUNDS', // string-functions.html
625 'SQL',
626 'SQL_AUTO_IS_NULL',
627 'SQL_BIG_RESULT',
628 'SQL_BIG_SELECTS',
629 'SQL_BIG_TABLES',
630 'SQL_BUFFER_RESULT',
631 'SQL_CACHE',
632 'SQL_CALC_FOUND_ROWS',
633 'SQL_LOG_BIN',
634 'SQL_LOG_OFF',
635 'SQL_LOG_UPDATE',
636 'SQL_LOW_PRIORITY_UPDATES',
637 'SQL_MAX_JOIN_SIZE',
638 'SQL_NO_CACHE',
639 'SQL_QUOTE_SHOW_CREATE',
640 'SQL_SAFE_UPDATES',
641 'SQL_SELECT_LIMIT',
642 'SQL_SLAVE_SKIP_COUNTER',
643 'SQL_SMALL_RESULT',
644 'SQL_WARNINGS',
645 'START',
646 'STARTING',
647 'STATUS',
648 'STOP',
649 'STORAGE',
650 'STRAIGHT_JOIN',
651 'STRING',
652 'STRIPED',
653 'SUPER',
654 'TABLE',
655 'TABLES',
656 'TEMPORARY',
657 'TERMINATED',
658 'THEN',
659 'TO',
660 'TRAILING',
661 'TRANSACTIONAL', // 5.1 ?
662 'TRUNCATE',
663 'TYPE',
664 'TYPES',
665 'UNCOMMITTED',
666 'UNION',
667 'UNIQUE',
668 'UNLOCK',
669 'UPDATE',
670 'USAGE',
671 'USE',
672 'USING',
673 'VALUES',
674 'VARIABLES',
675 'VIEW',
676 'WHEN',
677 'WHERE',
678 'WITH',
679 'WORK',
680 'WRITE',
681 'XOR',
682 'YEAR_MONTH'
685 * $PMA_SQPdata_reserved_word_cnt = count($PMA_SQPdata_reserved_word);
687 * @global integer MySQL reserved words count
689 $PMA_SQPdata_reserved_word_cnt = 289;
692 * words forbidden to be used as column or table name wihtout quotes
693 * as seen in http://dev.mysql.com/doc/mysql/en/reserved-words.html
695 * @global array MySQL forbidden words
697 $PMA_SQPdata_forbidden_word = array (
698 'ACCESSIBLE', // 5.1
699 'ACTION',
700 'ADD',
701 'AFTER',
702 'AGAINST',
703 'AGGREGATE',
704 'ALGORITHM',
705 'ALL',
706 'ALTER',
707 'ANALYZE',
708 'AND',
709 'ANY',
710 'AS',
711 'ASC',
712 'ASCII',
713 'ASENSITIVE',
714 'AUTO_INCREMENT',
715 'AVG',
716 'AVG_ROW_LENGTH',
717 'BACKUP',
718 'BDB',
719 'BEFORE',
720 'BEGIN',
721 'BERKELEYDB',
722 'BETWEEN',
723 'BIGINT',
724 'BINARY',
725 'BINLOG',
726 'BIT',
727 'BLOB',
728 'BOOL',
729 'BOOLEAN',
730 'BOTH',
731 'BTREE',
732 'BY',
733 'BYTE',
734 'CACHE',
735 'CALL',
736 'CASCADE',
737 'CASCADED',
738 'CASE',
739 'CHAIN',
740 'CHANGE',
741 'CHANGED',
742 'CHAR',
743 'CHARACTER',
744 'CHARSET',
745 'CHECK',
746 'CHECKSUM',
747 'CIPHER',
748 'CLOSE',
749 'COLLATE',
750 'COLLATION',
751 'COLUMN',
752 'COLUMNS',
753 'COMMENT',
754 'COMMIT',
755 'COMMITTED',
756 'COMPACT',
757 'COMPRESSED',
758 'CONCURRENT',
759 'CONDITION',
760 'CONNECTION',
761 'CONSISTENT',
762 'CONSTRAINT',
763 'CONTAINS',
764 'CONTINUE',
765 'CONVERT',
766 'CREATE',
767 'CROSS',
768 'CUBE',
769 'CURRENT_DATE',
770 'CURRENT_TIME',
771 'CURRENT_TIMESTAMP',
772 'CURRENT_USER',
773 'CURSOR',
774 'DATA',
775 'DATABASE',
776 'DATABASES',
777 'DATE',
778 'DATETIME',
779 'DAY',
780 'DAY_HOUR',
781 'DAY_MICROSECOND',
782 'DAY_MINUTE',
783 'DAY_SECOND',
784 'DEALLOCATE',
785 'DEC',
786 'DECIMAL',
787 'DECLARE',
788 'DEFAULT',
789 'DEFINER',
790 'DELAYED',
791 'DELAY_KEY_WRITE',
792 'DELETE',
793 'DESC',
794 'DESCRIBE',
795 'DES_KEY_FILE',
796 'DETERMINISTIC',
797 'DIRECTORY',
798 'DISABLE',
799 'DISCARD',
800 'DISTINCT',
801 'DISTINCTROW',
802 'DIV',
803 'DO',
804 'DOUBLE',
805 'DROP',
806 'DUAL',
807 'DUMPFILE',
808 'DUPLICATE',
809 'DYNAMIC',
810 'EACH',
811 'ELSE',
812 'ELSEIF',
813 'ENABLE',
814 'ENCLOSED',
815 'END',
816 'ENGINE',
817 'ENGINES',
818 'ENUM',
819 'ERRORS',
820 'ESCAPE',
821 'ESCAPED',
822 'EVENTS',
823 'EXECUTE',
824 'EXISTS',
825 'EXIT',
826 'EXPANSION',
827 'EXPLAIN',
828 'EXTENDED',
829 'FALSE',
830 'FAST',
831 'FETCH',
832 'FIELDS',
833 'FILE',
834 'FIRST',
835 'FIXED',
836 'FLOAT',
837 'FLOAT4',
838 'FLOAT8',
839 'FLUSH',
840 'FOR',
841 'FORCE',
842 'FOREIGN',
843 'FOUND',
844 'FRAC_SECOND',
845 'FROM',
846 'FULL',
847 'FULLTEXT',
848 'FUNCTION',
849 'GEOMETRY',
850 'GEOMETRYCOLLECTION',
851 'GET_FORMAT',
852 'GLOBAL',
853 'GOTO',
854 'GRANT',
855 'GRANTS',
856 'GROUP',
857 'HANDLER',
858 'HASH',
859 'HAVING',
860 'HELP',
861 'HIGH_PRIORITY',
862 'HOSTS',
863 'HOUR',
864 'HOUR_MICROSECOND',
865 'HOUR_MINUTE',
866 'HOUR_SECOND',
867 'IDENTIFIED',
868 'IF',
869 'IGNORE',
870 'IMPORT',
871 'IN',
872 'INDEX',
873 'INDEXES',
874 'INFILE',
875 'INNER',
876 'INNOBASE',
877 'INNODB',
878 'INOUT',
879 'INSENSITIVE',
880 'INSERT',
881 'INSERT_METHOD',
882 'INT',
883 'INT1',
884 'INT2',
885 'INT3',
886 'INT4',
887 'INT8',
888 'INTEGER',
889 'INTERVAL',
890 'INTO',
891 'INVOKER',
892 'IO_THREAD',
893 'IS',
894 'ISOLATION',
895 'ISSUER',
896 'ITERATE',
897 'JOIN',
898 'KEY',
899 'KEYS',
900 'KILL',
901 'LABEL',
902 'LANGUAGE',
903 'LAST',
904 'LEADING',
905 'LEAVE',
906 'LEAVES',
907 'LEFT',
908 'LEVEL',
909 'LIKE',
910 'LIMIT',
911 'LINEAR', // 5.1
912 'LINES',
913 'LINESTRING',
914 'LOAD',
915 'LOCAL',
916 'LOCALTIME',
917 'LOCALTIMESTAMP',
918 'LOCK',
919 'LOCKS',
920 'LOGS',
921 'LONG',
922 'LONGBLOB',
923 'LONGTEXT',
924 'LOOP',
925 'LOW_PRIORITY',
926 'MASTER',
927 'MASTER_CONNECT_RETRY',
928 'MASTER_HOST',
929 'MASTER_LOG_FILE',
930 'MASTER_LOG_POS',
931 'MASTER_PASSWORD',
932 'MASTER_PORT',
933 'MASTER_SERVER_ID',
934 'MASTER_SSL',
935 'MASTER_SSL_CA',
936 'MASTER_SSL_CAPATH',
937 'MASTER_SSL_CERT',
938 'MASTER_SSL_CIPHER',
939 'MASTER_SSL_KEY',
940 'MASTER_USER',
941 'MATCH',
942 'MAX_CONNECTIONS_PER_HOUR',
943 'MAX_QUERIES_PER_HOUR',
944 'MAX_ROWS',
945 'MAX_UPDATES_PER_HOUR',
946 'MAX_USER_CONNECTIONS',
947 'MEDIUM',
948 'MEDIUMBLOB',
949 'MEDIUMINT',
950 'MEDIUMTEXT',
951 'MERGE',
952 'MICROSECOND',
953 'MIDDLEINT',
954 'MIGRATE',
955 'MINUTE',
956 'MINUTE_MICROSECOND',
957 'MINUTE_SECOND',
958 'MIN_ROWS',
959 'MOD',
960 'MODE',
961 'MODIFIES',
962 'MODIFY',
963 'MONTH',
964 'MULTILINESTRING',
965 'MULTIPOINT',
966 'MULTIPOLYGON',
967 'MUTEX',
968 'NAME',
969 'NAMES',
970 'NATIONAL',
971 'NATURAL',
972 'NCHAR',
973 'NDB',
974 'NDBCLUSTER',
975 'NEW',
976 'NEXT',
977 'NO',
978 'NONE',
979 'NOT',
980 'NO_WRITE_TO_BINLOG',
981 'NULL',
982 'NUMERIC',
983 'NVARCHAR',
984 'OFFSET',
985 'OLD_PASSWORD',
986 'ON',
987 'ONE',
988 'ONE_SHOT',
989 'OPEN',
990 'OPTIMIZE',
991 'OPTION',
992 'OPTIONALLY',
993 'OR',
994 'ORDER',
995 'OUT',
996 'OUTER',
997 'OUTFILE',
998 'PACK_KEYS',
999 'PARTIAL',
1000 'PASSWORD',
1001 'PHASE',
1002 'POINT',
1003 'POLYGON',
1004 'PRECISION',
1005 'PREPARE',
1006 'PREV',
1007 'PRIMARY',
1008 'PRIVILEGES',
1009 'PROCEDURE',
1010 'PROCESSLIST',
1011 'PURGE',
1012 'QUARTER',
1013 'QUERY',
1014 'QUICK',
1015 'RAID0',
1016 'RAID_CHUNKS',
1017 'RAID_CHUNKSIZE',
1018 'RAID_TYPE',
1019 'RANGE', // 5.1
1020 'READ',
1021 'READS',
1022 'READ_ONLY', // 5.1
1023 'READ_WRITE', // 5.1
1024 'REAL',
1025 'RECOVER',
1026 'REDUNDANT',
1027 'REFERENCES',
1028 'REGEXP',
1029 'RELAY_LOG_FILE',
1030 'RELAY_LOG_POS',
1031 'RELAY_THREAD',
1032 'RELEASE',
1033 'RELOAD',
1034 'RENAME',
1035 'REPAIR',
1036 'REPEAT',
1037 'REPEATABLE',
1038 'REPLACE',
1039 'REPLICATION',
1040 'REQUIRE',
1041 'RESET',
1042 'RESTORE',
1043 'RESTRICT',
1044 'RESUME',
1045 'RETURN',
1046 'RETURNS',
1047 'REVOKE',
1048 'RIGHT',
1049 'RLIKE',
1050 'ROLLBACK',
1051 'ROLLUP',
1052 'ROUTINE',
1053 'ROW',
1054 'ROWS',
1055 'ROW_FORMAT',
1056 'RTREE',
1057 'SAVEPOINT',
1058 'SCHEMA',
1059 'SCHEMAS',
1060 'SECOND',
1061 'SECOND_MICROSECOND',
1062 'SECURITY',
1063 'SELECT',
1064 'SENSITIVE',
1065 'SEPARATOR',
1066 'SERIAL',
1067 'SERIALIZABLE',
1068 'SESSION',
1069 'SET',
1070 'SHARE',
1071 'SHOW',
1072 'SHUTDOWN',
1073 'SIGNED',
1074 'SIMPLE',
1075 'SLAVE',
1076 'SMALLINT',
1077 'SNAPSHOT',
1078 'SOME',
1079 'SONAME',
1080 'SOUNDS',
1081 'SPATIAL',
1082 'SPECIFIC',
1083 'SQL',
1084 'SQLEXCEPTION',
1085 'SQLSTATE',
1086 'SQLWARNING',
1087 'SQL_BIG_RESULT',
1088 'SQL_BUFFER_RESULT',
1089 'SQL_CACHE',
1090 'SQL_CALC_FOUND_ROWS',
1091 'SQL_NO_CACHE',
1092 'SQL_SMALL_RESULT',
1093 'SQL_THREAD',
1094 'SQL_TSI_DAY',
1095 'SQL_TSI_FRAC_SECOND',
1096 'SQL_TSI_HOUR',
1097 'SQL_TSI_MINUTE',
1098 'SQL_TSI_MONTH',
1099 'SQL_TSI_QUARTER',
1100 'SQL_TSI_SECOND',
1101 'SQL_TSI_WEEK',
1102 'SQL_TSI_YEAR',
1103 'SSL',
1104 'START',
1105 'STARTING',
1106 'STATUS',
1107 'STOP',
1108 'STORAGE',
1109 'STRAIGHT_JOIN',
1110 'STRING',
1111 'STRIPED',
1112 'SUBJECT',
1113 'SUPER',
1114 'SUSPEND',
1115 'TABLE',
1116 'TABLES',
1117 'TABLESPACE',
1118 'TEMPORARY',
1119 'TEMPTABLE',
1120 'TERMINATED',
1121 'TEXT',
1122 'THEN',
1123 'TIME',
1124 'TIMESTAMP',
1125 'TIMESTAMPADD',
1126 'TIMESTAMPDIFF',
1127 'TINYBLOB',
1128 'TINYINT',
1129 'TINYTEXT',
1130 'TO',
1131 'TRAILING',
1132 'TRANSACTION',
1133 'TRIGGER',
1134 'TRIGGERS',
1135 'TRUE',
1136 'TRUNCATE',
1137 'TYPE',
1138 'TYPES',
1139 'UNCOMMITTED',
1140 'UNDEFINED',
1141 'UNDO',
1142 'UNICODE',
1143 'UNION',
1144 'UNIQUE',
1145 'UNKNOWN',
1146 'UNLOCK',
1147 'UNSIGNED',
1148 'UNTIL',
1149 'UPDATE',
1150 'USAGE',
1151 'USE',
1152 'USER',
1153 'USER_RESOURCES',
1154 'USE_FRM',
1155 'USING',
1156 'UTC_DATE',
1157 'UTC_TIME',
1158 'UTC_TIMESTAMP',
1159 'VALUE',
1160 'VALUES',
1161 'VARBINARY',
1162 'VARCHAR',
1163 'VARCHARACTER',
1164 'VARIABLES',
1165 'VARYING',
1166 'VIEW',
1167 'WARNINGS',
1168 'WEEK',
1169 'WHEN',
1170 'WHERE',
1171 'WHILE',
1172 'WITH',
1173 'WORK',
1174 'WRITE',
1175 'X509',
1176 'XA',
1177 'XOR',
1178 'YEAR',
1179 'YEAR_MONTH',
1180 'ZEROFILL'
1183 * count($PMA_SQPdata_forbidden_word);
1185 * @global integer MySQL forbidden words count
1187 $PMA_SQPdata_forbidden_word_cnt = 483;
1190 * the MySQL column/data types
1192 * @see http://dev.mysql.com/doc/refman/5.1/en/data-types.html
1193 * @see http://dev.mysql.com/doc/refman/5.1/en/mysql-spatial-datatypes.html
1195 * @global array MySQL column types
1197 $PMA_SQPdata_column_type = array (
1198 'BIGINT',
1199 'BINARY',
1200 'BIT',
1201 'BLOB',
1202 'BOOL',
1203 'BOOLEAN', // numeric-type-overview.html
1204 'CHAR',
1205 'CHARACTER',
1206 'DATE',
1207 'DATETIME',
1208 'DEC',
1209 'DECIMAL',
1210 'DOUBLE',
1211 'ENUM',
1212 'FLOAT',
1213 'FLOAT4',
1214 'FLOAT8',
1215 'GEOMETRY', // spatial
1216 'GEOMETRYCOLLECTION', // spatial
1217 'INT',
1218 'INT1',
1219 'INT2',
1220 'INT3',
1221 'INT4',
1222 'INT8',
1223 'INTEGER',
1224 'LINESTRING', // spatial
1225 'LONG',
1226 'LONGBLOB',
1227 'LONGTEXT',
1228 'MEDIUMBLOB',
1229 'MEDIUMINT',
1230 'MEDIUMTEXT',
1231 'MIDDLEINT',
1232 'MULTILINESTRING', // spatial
1233 'MULTIPOINT', // spatial
1234 'MULTIPOLYGON', // spatial
1235 'NCHAR',
1236 'NUMERIC',
1237 'POINT', // spatial
1238 'POLYGON', // spatial
1239 'REAL',
1240 'SERIAL', // alias for BIGINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY
1241 'SET',
1242 'SMALLINT',
1243 'TEXT',
1244 'TIME',
1245 'TIMESTAMP',
1246 'TINYBLOB',
1247 'TINYINT',
1248 'TINYTEXT',
1249 'VARBINARY',
1250 'VARCHAR',
1251 'YEAR'
1254 * $PMA_SQPdata_column_type_cnt = count($PMA_SQPdata_column_type);
1256 * @global integer MySQL column types count
1258 $PMA_SQPdata_column_type_cnt = 54;