mirror of
https://github.com/pierre42100/comunic
synced 2024-11-17 02:51:13 +00:00
269 lines
4.3 KiB
PHP
Executable File
269 lines
4.3 KiB
PHP
Executable File
<?php
|
|
|
|
// TODO: These are MySQL specific
|
|
|
|
$keywords = array(
|
|
'ABORT', 'ACTION', 'ADD', 'AFTER', 'ALL', 'ALTER', 'ANALYZE', 'AS',
|
|
'ASC', 'ATTACH', 'AUTOINCREMENT', 'AUTO_INCREMENT', 'BEFORE', 'BEGIN',
|
|
'BY', 'CASCADE', 'CAST', 'CHECK', 'COLLATE', 'COLUMN',
|
|
'COMMIT', 'CONFLICT', 'CONSTRAINT', 'CREATE', 'CROSS', 'CURRENT_DATE',
|
|
'CURRENT_TIME', 'CURRENT_TIMESTAMP','DATABASE', 'DEFAULT', 'DEFERRABLE',
|
|
'DEFERRED', 'DELETE', 'DESC', 'DETACH', 'DISTINCT', 'DROP', 'EACH', 'ELSE',
|
|
'END', 'ESCAPE', 'EXCEPT', 'EXCLUSIVE', 'EXISTS', 'EXPLAIN', 'FAIL', 'FOR',
|
|
'FOREIGN', 'FROM', 'FULL', 'GLOB', 'GROUP', 'HAVING', 'IF', 'IGNORE',
|
|
'IMMEDIATE', 'IN', 'INDEX', 'INDEXED', 'INITITIALLY', 'INNER', 'INSERT',
|
|
'INSTEAD', 'INTERSECT', 'INTO', 'ISNULL', 'JOIN', 'KEY', 'LEFT', 'LIKE',
|
|
'LIMIT', 'MATCH', 'NATURAL', 'NO', 'NOTNULL', 'OF', 'OFFSET',
|
|
'ON', 'OR', 'ORDER', 'OUTER', 'PLAN', 'PRAGMA', 'PRIMARY', 'QUERY', 'RAISE',
|
|
'REFERENCES', 'REGEXP', 'REINDEX', 'RELEASE', 'RENAME', 'REPLACE', 'RESTRICT',
|
|
'RIGHT', 'ROLLBACK', 'ROW', 'SAVEPOINT', 'SELECT', 'SET', 'TABLE', 'TEMP',
|
|
'TEMPORARY', 'THEN', 'TO', 'TRANSACTION', 'TRIGGER', 'UNION', 'UNIQUE',
|
|
'UPDATE', 'USING', 'VACUUM', 'VALUES', 'VIEW', 'VIRTUAL', 'WHEN', 'WHERE',
|
|
'WITH',
|
|
|
|
// type qualifier stuff
|
|
'SIGNED', 'UNSIGNED', 'ZEROFILL',
|
|
|
|
// seem to be missing these, probably not standard
|
|
'MINVALUE', 'MAXVALUE', 'START'
|
|
);
|
|
|
|
$types = array(
|
|
'BINARY', 'BIT', 'BIGINT', 'BIGINTEGER', 'BLOB',
|
|
'CHAR', 'CLOB',
|
|
'DATE', 'DATETIME', 'DEC', 'DECIMAL', 'DOUBLE', 'DOUBLE_PRECISION',
|
|
'ENUM',
|
|
'FIXED', 'FLOAT',
|
|
'INT', 'INTEGER',
|
|
'MEDIUMINT', 'MEDIUMINTEGER',
|
|
'NUMERIC',
|
|
'REAL',
|
|
'SMALLINT', 'SMALLINTEGER',
|
|
'SET', 'TEXT', 'TIME', 'TIMESTAMP', 'TINYINT',
|
|
'TINYINTEGER',
|
|
'VARBINARY', 'VARCHAR',
|
|
'YEAR',
|
|
'ZONE' // for time zone
|
|
);
|
|
|
|
|
|
$values = array('NULL');
|
|
|
|
|
|
// http://dev.mysql.com/doc/refman/5.0/en/func-op-summary-ref.html
|
|
|
|
$operators = array('AND', 'BETWEEN', 'BINARY', 'CASE', 'DIV', 'IS',
|
|
'LIKE', 'NOT', 'SOUNDS', 'XOR');
|
|
|
|
$functions = array(
|
|
'ABS',
|
|
'ACOS',
|
|
'ADDDATE',
|
|
'ADDTIME',
|
|
'AES_DECRYPT',
|
|
'AES_ENCRYPT',
|
|
'ASCII',
|
|
'ASIN',
|
|
'ATAN2',
|
|
'ATAN',
|
|
'AVG',
|
|
'BENCHMARK',
|
|
'BIN',
|
|
'BIT_AND',
|
|
'BIT_COUNT',
|
|
'BIT_LENGTH',
|
|
'BIT_OR',
|
|
'BIT_XOR',
|
|
'CAST',
|
|
'CEIL',
|
|
'CEILING',
|
|
'CHAR_LENGTH',
|
|
'CHAR',
|
|
'CHARACTER_LENGTH',
|
|
'CHARSET',
|
|
'COALESCE',
|
|
'COERCIBILITY',
|
|
'COLLATION',
|
|
'COMPRESS',
|
|
'CONCAT_WS',
|
|
'CONCAT',
|
|
'CONNECTION_ID',
|
|
'CONV',
|
|
'CONVERT_TZ',
|
|
'Convert',
|
|
'COS',
|
|
'COT',
|
|
'COUNT',
|
|
'COUNT',
|
|
'CRC32',
|
|
'CURDATE',
|
|
'CURRENT_DATE',
|
|
'CURRENT_TIME',
|
|
'CURRENT_TIMESTAMP',
|
|
'CURRENT_USER',
|
|
'CURTIME',
|
|
'DATABASE',
|
|
'DATE_ADD',
|
|
'DATE_FORMAT',
|
|
'DATE_SUB',
|
|
'DATE',
|
|
'DATEDIFF',
|
|
'DAY',
|
|
'DAYNAME',
|
|
'DAYOFMONTH',
|
|
'DAYOFWEEK',
|
|
'DAYOFYEAR',
|
|
'DECODE',
|
|
'DEFAULT',
|
|
'DEGREES',
|
|
'DES_DECRYPT',
|
|
'DES_ENCRYPT',
|
|
'ELT',
|
|
'ENCODE',
|
|
'ENCRYPT',
|
|
'EXP',
|
|
'EXPORT_SET',
|
|
'EXTRACT',
|
|
'FIELD',
|
|
'FIND_IN_SET',
|
|
'FLOOR',
|
|
'FORMAT',
|
|
'FOUND_ROWS',
|
|
'FROM_DAYS',
|
|
'FROM_UNIXTIME',
|
|
'GET_FORMAT',
|
|
'GET_LOCK',
|
|
'GREATEST',
|
|
'GROUP_CONCAT',
|
|
'HEX',
|
|
'HOUR',
|
|
'IF',
|
|
'IFNULL',
|
|
'IN',
|
|
'INET_ATON',
|
|
'INET_NTOA',
|
|
'INSERT',
|
|
'INSTR',
|
|
'INTERVAL',
|
|
'IS_FREE_LOCK',
|
|
'IS_USED_LOCK',
|
|
'ISNULL',
|
|
'LAST_DAY',
|
|
'LAST_INSERT_ID',
|
|
'LCASE',
|
|
'LEAST',
|
|
'LEFT',
|
|
'LENGTH',
|
|
'LN',
|
|
'LOAD_FILE',
|
|
'LOCALTIME',
|
|
'LOCALTIMESTAMP,',
|
|
'LOCATE',
|
|
'LOG10',
|
|
'LOG2',
|
|
'LOG',
|
|
'LOWER',
|
|
'LPAD',
|
|
'LTRIM',
|
|
'MAKE_SET',
|
|
'MAKEDATE',
|
|
'MAKETIME',
|
|
'MASTER_POS_WAIT',
|
|
'MATCH',
|
|
'MAX',
|
|
'MD5',
|
|
'MICROSECOND',
|
|
'MID',
|
|
'MIN',
|
|
'MINUTE',
|
|
'MOD',
|
|
'MONTH',
|
|
'MONTHNAME',
|
|
'NAME_CONST',
|
|
'NOW',
|
|
'NULLIF',
|
|
'OCT',
|
|
'OCTET_LENGTH',
|
|
'OLD_PASSWORD',
|
|
'ORD',
|
|
'PASSWORD',
|
|
'PERIOD_ADD',
|
|
'PERIOD_DIFF',
|
|
'PI',
|
|
'POSITION',
|
|
'POW',
|
|
'POWER',
|
|
'ANALYSE',
|
|
'QUARTER',
|
|
'QUOTE',
|
|
'RADIANS',
|
|
'RAND',
|
|
'REGEXP',
|
|
'RELEASE_LOCK',
|
|
'REPEAT',
|
|
'REPLACE',
|
|
'REVERSE',
|
|
'RIGHT',
|
|
'RLIKE',
|
|
'ROUND',
|
|
'ROW_COUNT',
|
|
'RPAD',
|
|
'RTRIM',
|
|
'SCHEMA',
|
|
'SEC_TO_TIME',
|
|
'SECOND',
|
|
'SESSION_USER',
|
|
'SHA1',
|
|
'SIGN',
|
|
'SIN',
|
|
'SLEEP',
|
|
'SOUNDEX',
|
|
'SPACE',
|
|
'SQRT',
|
|
'STD',
|
|
'STDDEV_POP',
|
|
'STDDEV_SAMP',
|
|
'STDDEV',
|
|
'STR_TO_DATE',
|
|
'STRCMP',
|
|
'SUBDATE',
|
|
'SUBSTR',
|
|
'SUBSTRING_INDEX',
|
|
'SUBSTRING',
|
|
'SUBTIME',
|
|
'SUM',
|
|
'SYSDATE',
|
|
'SYSTEM_USER',
|
|
'TAN',
|
|
'TIME_FORMAT',
|
|
'TIME_TO_SEC',
|
|
'TIME',
|
|
'TIMEDIFF',
|
|
'TIMESTAMP',
|
|
'TIMESTAMPADD',
|
|
'TIMESTAMPDIFF',
|
|
'TO_DAYS',
|
|
'TRIM',
|
|
'TRUNCATE',
|
|
'UCASE',
|
|
'UNCOMPRESS',
|
|
'UNCOMPRESSED_LENGTH',
|
|
'UNHEX',
|
|
'UNIX_TIMESTAMP',
|
|
'UPPER',
|
|
'USER',
|
|
'UTC_DATE',
|
|
'UTC_TIME',
|
|
'UTC_TIMESTAMP',
|
|
'UUID',
|
|
'VALUES',
|
|
'VAR_POP',
|
|
'VAR_SAMP',
|
|
'VARIANCE',
|
|
'VERSION',
|
|
'WEEK',
|
|
'WEEKDAY',
|
|
'WEEKOFYEAR',
|
|
'YEAR',
|
|
'YEARWEEK');
|