home *** CD-ROM | disk | FTP | other *** search
/ PC Professionell 2005 June / PCpro_2005_06.ISO / files / opensource / xamp / xampp-win32.exe / xampp / sqlparser.data.php < prev    next >
Encoding:
PHP Script  |  2005-02-26  |  8.4 KB  |  529 lines

  1. <?php
  2. /* $Id: sqlparser.data.php,v 2.15.2.2 2005/02/27 11:21:57 rabus Exp $ */
  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.  
  17. $PMA_SQPdata_function_name = array (
  18.     'ABS',
  19.     'ACOS',
  20.     'ADDDATE',
  21.     'AES_ENCRYPT',
  22.     'AES_DECRYPT',
  23.     'ASCII',
  24.     'ASIN',
  25.     'ATAN',
  26.     'ATAN2',
  27.     'AVG',
  28.     'BENCHMARK',
  29.     'BIN',
  30.     'BIT_AND',
  31.     'BIT_COUNT',
  32.     'BIT_LENGTH',
  33.     'BIT_OR',
  34.     'CAST',
  35.     'CEIL',
  36.     'CEILING',
  37.     'CHAR_LENGTH',
  38.     'CHARACTER_LENGTH',
  39.     'COALESCE',
  40.     'CONCAT',
  41.     'CONCAT_WS',
  42.     'CONNECTION_ID',
  43.     'CONV',
  44.     'CONVERT',
  45.     'COS',
  46.     'COT',
  47.     'COUNT',
  48.     'CURDATE',
  49.     'CURRENT_DATE',
  50.     'CURRENT_TIME',
  51.     'CURRENT_TIMESTAMP',
  52.     'CURRENT_USER',
  53.     'CURTIME',
  54.     'DATABASE',
  55.     'DATE_ADD',
  56.     'DATE_FORMAT',
  57.     'DATE_SUB',
  58.     'DAYNAME',
  59.     'DAYOFMONTH',
  60.     'DAYOFWEEK',
  61.     'DAYOFYEAR',
  62.     'DECODE',
  63.     'DEGREES',
  64.     'DES_ENCRYPT',
  65.     'DES_DECRYPT',
  66.     'ELT',
  67.     'ENCODE',
  68.     'ENCRYPT',
  69.     'EXP',
  70.     'EXPORT_SET',
  71.     'EXTRACT',
  72.     'FIELD',
  73.     'FIND_IN_SET',
  74.     'FLOOR',
  75.     'FORMAT',
  76.     'FOUND_ROWS',
  77.     'FROM_DAYS',
  78.     'FROM_UNIXTIME',
  79.     'GET_FORMAT',
  80.     'GET_LOCK',
  81.     'GREATEST',
  82.     'GROUP_CONCAT',
  83.     'GROUP_UNIQUE_USERS',
  84.     'HEX',
  85.     'IFNULL',
  86.     'INET_ATON',
  87.     'INET_NTOA',
  88.     'INSTR',
  89.     'INTERVAL',
  90.     'IS_FREE_LOCK',
  91.     'ISNULL',
  92.     'LAST_INSERT_ID',
  93.     'LCASE',
  94.     'LEAST',
  95.     'LEFT',
  96.     'LENGTH',
  97.     'LN',
  98.     'LOAD_FILE',
  99.     'LOCATE',
  100.     'LOG',
  101.     'LOG2',
  102.     'LOG10',
  103.     'LOWER',
  104.     'LPAD',
  105.     'LTRIM',
  106.     'MAKE_SET',
  107.     'MASTER_POS_WAIT',
  108.     'MAX',
  109.     'MD5',
  110.     'MID',
  111.     'MIN',
  112.     'MOD',
  113.     'MONTH',
  114.     'MONTHNAME',
  115.     'NOW',
  116.     'NULLIF',
  117.     'OCT',
  118.     'OCTET_LENGTH',
  119.     'OLD_PASSWORD',
  120.     'ORD',
  121.     'PASSWORD',
  122.     'PERIOD_ADD',
  123.     'PERIOD_DIFF',
  124.     'PI',
  125.     'POSITION',
  126.     'POW',
  127.     'POWER',
  128.     'QUARTER',
  129.     'QUOTE',
  130.     'RADIANS',
  131.     'RAND',
  132.     'RELEASE_LOCK',
  133.     'REPEAT',
  134.     'REVERSE',
  135.     'RIGHT',
  136.     'ROUND',
  137.     'RPAD',
  138.     'RTRIM',
  139.     'SEC_TO_TIME',
  140.     'SESSION_USER',
  141.     'SHA',
  142.     'SHA1',
  143.     'SIGN',
  144.     'SIN',
  145.     'SOUNDEX',
  146.     'SPACE',
  147.     'SQRT',
  148.     'STD',
  149.     'STDDEV',
  150.     'STR_TO_DATE',
  151.     'STRCMP',
  152.     'SUBDATE',
  153.     'SUBSTRING',
  154.     'SUBSTRING_INDEX',
  155.     'SUM',
  156.     'SYSDATE',
  157.     'SYSTEM_USER',
  158.     'TAN',
  159.     'TIME_FORMAT',
  160.     'TIME_TO_SEC',
  161.     'TO_DAYS',
  162.     'TRIM',
  163.     'UCASE',
  164.     'UNIQUE_USERS',
  165.     'UNIX_TIMESTAMP',
  166.     'UPPER',
  167.     'USER',
  168.     'VERSION',
  169.     'WEEK',
  170.     'WEEKDAY',
  171.     'YEAR',
  172.     'YEARWEEK'
  173. );
  174. //$PMA_SQPdata_function_name_cnt = count($PMA_SQPdata_function_name);
  175. $PMA_SQPdata_function_name_cnt = 155;
  176.  
  177. $PMA_SQPdata_column_attrib = array (
  178.     'AUTO_INCREMENT',
  179.     'BDB',
  180.     'BERKELEYDB',
  181.     'BINARY',
  182.     'DEFAULT',
  183.     'INNOBASE',
  184.     'INNODB',
  185.     'ISAM',
  186.     'MERGE',
  187.     'MRG_ISAM',
  188.     'MRG_MYISAM',
  189.     'MYISAM',
  190.     'NATIONAL',
  191.     'NDB',
  192.     'NDBCLUSTER',
  193.     'PRECISION',
  194.     'UNDEFINED',
  195.     'UNSIGNED',
  196.     'VARYING',
  197.     'ZEROFILL'
  198. );
  199. //$PMA_SQPdata_column_attrib_cnt = count($PMA_SQPdata_column_attrib);
  200. $PMA_SQPdata_column_attrib_cnt = 20;
  201.  
  202. $PMA_SQPdata_reserved_word = array (
  203.     'ACTION',
  204.     'ADD',
  205.     'AFTER',
  206.     'AGAINST',
  207.     'AGGREGATE',
  208.     'ALGORITHM',
  209.     'ALL',
  210.     'ALTER',
  211.     'ANALYSE',
  212.     'ANALYZE',
  213.     'AND',
  214.     'AS',
  215.     'ASC',
  216.     'AUTOCOMMIT',
  217.     'AUTO_INCREMENT',
  218.     'AVG_ROW_LENGTH',
  219.     'BACKUP',
  220.     'BEGIN',
  221.     'BETWEEN',
  222.     'BINLOG',
  223.     'BOTH',
  224.     'BY',
  225.     'CASCADE',
  226.     'CASE',
  227.     'CHANGE',
  228.     'CHANGED',
  229.     'CHARSET',
  230.     'CHECK',
  231.     'CHECKSUM',
  232.     'CLIENT',
  233.     'COLLATE',
  234.     'COLLATION',
  235.     'COLUMN',
  236.     'COLUMNS',
  237.     'COMMENT',
  238.     'COMMIT',
  239.     'COMMITTED',
  240.     'COMPRESSED',
  241.     'CONCURRENT',
  242.     'CONSTRAINT',
  243.     'CREATE',
  244.     'CROSS',
  245.     'CURRENT_TIMESTAMP',
  246.     'DATA',
  247.     'DATABASE',
  248.     'DATABASES',
  249.     'DAY',
  250.     'DAY_HOUR',
  251.     'DAY_MINUTE',
  252.     'DAY_SECOND',
  253.     'DELAYED',
  254.     'DELAY_KEY_WRITE',
  255.     'DELETE',
  256.     'DESC',
  257.     'DESCRIBE',
  258.     'DISTINCT',
  259.     'DISTINCTROW',
  260.     'DIV',
  261.     'DO',
  262.     'DROP',
  263.     'DUMPFILE',
  264.     'DYNAMIC',
  265.     'ELSE',
  266.     'ENCLOSED',
  267.     'END',
  268.     'ENGINE',
  269.     'ENGINES',
  270.     'ESCAPE',
  271.     'ESCAPED',
  272.     'EVENTS',
  273.     'EXECUTE',
  274.     'EXISTS',
  275.     'EXPLAIN',
  276.     'EXTENDED',
  277.     'FAST',
  278.     'FIELDS',
  279.     'FILE',
  280.     'FIRST',
  281.     'FIXED',
  282.     'FLUSH',
  283.     'FOR',
  284.     'FORCE',
  285.     'FOREIGN',
  286.     'FROM',
  287.     'FULL',
  288.     'FULLTEXT',
  289.     'FUNCTION',
  290.     'GEMINI',
  291.     'GEMINI_SPIN_RETRIES',
  292.     'GLOBAL',
  293.     'GRANT',
  294.     'GRANTS',
  295.     'GROUP',
  296.     'HAVING',
  297.     'HEAP',
  298.     'HIGH_PRIORITY',
  299.     'HOSTS',
  300.     'HOUR',
  301.     'HOUR_MINUTE',
  302.     'HOUR_SECOND',
  303.     'IDENTIFIED',
  304.     'IF',
  305.     'IGNORE',
  306.     'IN',
  307.     'INDEX',
  308.     'INDEXES',
  309.     'INFILE',
  310.     'INNER',
  311.     'INSERT',
  312.     'INSERT_ID',
  313.     'INSERT_METHOD',
  314.     'INTERVAL',
  315.     'INTO',
  316.     'IS',
  317.     'ISOLATION',
  318.     'JOIN',
  319.     'KEY',
  320.     'KEYS',
  321.     'KILL',
  322.     'LAST_INSERT_ID',
  323.     'LEADING',
  324.     'LEFT',
  325.     'LEVEL',
  326.     'LIKE',
  327.     'LIMIT',
  328.     'LINES',
  329.     'LOAD',
  330.     'LOCAL',
  331.     'LOCK',
  332.     'LOCKS',
  333.     'LOGS',
  334.     'LOW_PRIORITY',
  335.     'MASTER',
  336.     'MASTER_CONNECT_RETRY',
  337.     'MASTER_HOST',
  338.     'MASTER_LOG_FILE',
  339.     'MASTER_LOG_POS',
  340.     'MASTER_PASSWORD',
  341.     'MASTER_PORT',
  342.     'MASTER_USER',
  343.     'MATCH',
  344.     'MAX_CONNECTIONS_PER_HOUR',
  345.     'MAX_QUERIES_PER_HOUR',
  346.     'MAX_ROWS',
  347.     'MAX_UPDATES_PER_HOUR',
  348.     'MEDIUM',
  349.     'MERGE',
  350.     'MIN_ROWS',
  351.     'MINUTE',
  352.     'MINUTE_SECOND',
  353.     'MODE',
  354.     'MODIFY',
  355.     'MONTH',
  356.     'MRG_MYISAM',
  357.     'MYISAM',
  358.     'NAMES',
  359.     'NATURAL',
  360.     // 'NO' is not allowed in SQL-99 but is allowed in MySQL
  361.     //'NO',
  362.     'NOT',
  363.     'NULL',
  364.     'OFFSET',
  365.     'ON',
  366.     'OPEN',
  367.     'OPTIMIZE',
  368.     'OPTION',
  369.     'OPTIONALLY',
  370.     'OR',
  371.     'ORDER',
  372.     'OUTER',
  373.     'OUTFILE',
  374.     'PACK_KEYS',
  375.     'PARTIAL',
  376.     'PASSWORD',
  377.     'PRIMARY',
  378.     'PRIVILEGES',
  379.     'PROCEDURE',
  380.     'PROCESS',
  381.     'PROCESSLIST',
  382.     'PURGE',
  383.     'QUICK',
  384.     'RAID0',
  385.     'RAID_CHUNKS',
  386.     'RAID_CHUNKSIZE',
  387.     'RAID_TYPE',
  388.     'READ',
  389.     'REFERENCES',
  390.     'REGEXP',
  391.     'RELOAD',
  392.     'RENAME',
  393.     'REPAIR',
  394.     'REPEATABLE',
  395.     'REPLACE',
  396.     'REPLICATION',
  397.     'RESET',
  398.     'RESTORE',
  399.     'RESTRICT',
  400.     'RETURN',
  401.     'RETURNS',
  402.     'REVOKE',
  403.     'RIGHT',
  404.     'RLIKE',
  405.     'ROLLBACK',
  406.     'ROW',
  407.     'ROW_FORMAT',
  408.     'ROWS',
  409.     'SECOND',
  410.     'SELECT',
  411.     'SEPARATOR',
  412.     'SERIALIZABLE',
  413.     'SESSION',
  414.     'SHARE',
  415.     'SHOW',
  416.     'SHUTDOWN',
  417.     'SLAVE',
  418.     'SONAME',
  419.     'SQL_AUTO_IS_NULL',
  420.     'SQL_BIG_RESULT',
  421.     'SQL_BIG_SELECTS',
  422.     'SQL_BIG_TABLES',
  423.     'SQL_BUFFER_RESULT',
  424.     'SQL_CACHE',
  425.     'SQL_CALC_FOUND_ROWS',
  426.     'SQL_LOG_BIN',
  427.     'SQL_LOG_OFF',
  428.     'SQL_LOG_UPDATE',
  429.     'SQL_LOW_PRIORITY_UPDATES',
  430.     'SQL_MAX_JOIN_SIZE',
  431.     'SQL_NO_CACHE',
  432.     'SQL_QUOTE_SHOW_CREATE',
  433.     'SQL_SAFE_UPDATES',
  434.     'SQL_SELECT_LIMIT',
  435.     'SQL_SLAVE_SKIP_COUNTER',
  436.     'SQL_SMALL_RESULT',
  437.     'SQL_WARNINGS',
  438.     'START',
  439.     'STARTING',
  440.     'STATUS',
  441.     'STOP',
  442.     'STORAGE',
  443.     'STRAIGHT_JOIN',
  444.     'STRING',
  445.     'STRIPED',
  446.     'SUPER',
  447.     'TABLE',
  448.     'TABLES',
  449.     'TEMPORARY',
  450.     'TERMINATED',
  451.     'THEN',
  452.     'TO',
  453.     'TRAILING',
  454.     'TRUNCATE',
  455.     'TYPE',
  456.     'TYPES',
  457.     'UNCOMMITTED',
  458.     'UNION',
  459.     'UNIQUE',
  460.     'UNLOCK',
  461.     'UPDATE',
  462.     'USAGE',
  463.     'USE',
  464.     'USING',
  465.     'VALUES',
  466.     'VARIABLES',
  467.     'VIEW',
  468.     'WHEN',
  469.     'WHERE',
  470.     'WITH',
  471.     'WORK',
  472.     'WRITE',
  473.     'XOR',
  474.     'YEAR_MONTH'
  475. );
  476. //$PMA_SQPdata_reserved_word_cnt = count($PMA_SQPdata_reserved_word);
  477. $PMA_SQPdata_reserved_word_cnt = 270;
  478.  
  479. $PMA_SQPdata_column_type = array (
  480.     'BIGINT',
  481.     'BINARY',
  482.     'BIT',
  483.     'BLOB',
  484.     'BOOL',
  485.     'CHAR',
  486.     'CHARACTER',
  487.     'DATE',
  488.     'DATETIME',
  489.     'DEC',
  490.     'DECIMAL',
  491.     'DOUBLE',
  492.     'ENUM',
  493.     'FLOAT',
  494.     'FLOAT4',
  495.     'FLOAT8',
  496.     'INT',
  497.     'INT1',
  498.     'INT2',
  499.     'INT3',
  500.     'INT4',
  501.     'INT8',
  502.     'INTEGER',
  503.     'LONG',
  504.     'LONGBLOB',
  505.     'LONGTEXT',
  506.     'MEDIUMBLOB',
  507.     'MEDIUMINT',
  508.     'MEDIUMTEXT',
  509.     'MIDDLEINT',
  510.     'NCHAR',
  511.     'NUMERIC',
  512.     'REAL',
  513.     'SET',
  514.     'SMALLINT',
  515.     'TEXT',
  516.     'TIME',
  517.     'TIMESTAMP',
  518.     'TINYBLOB',
  519.     'TINYINT',
  520.     'TINYTEXT',
  521.     'VARBINARY',
  522.     'VARCHAR',
  523.     'YEAR'
  524. );
  525. //$PMA_SQPdata_column_type_cnt = count($PMA_SQPdata_column_type);
  526. $PMA_SQPdata_column_type_cnt = 44;
  527.  
  528. ?>
  529.