[ Index ]
 

Code source de phpMyAdmin 2.10.3

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/libraries/ -> sqlparser.data.php (source)

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


Généré le : Mon Nov 26 15:18:20 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics