Справочное руководство по MySQL версии 4.1.1-alpha

       

Придирчив'' ли MySQL к зарезервированным словам?


Это общая проблема, возникающая при попытке создать таблицу с именами столбцов, использующих принятые в MySQL названия типов данных или функций, такие как TIMESTAMP или GROUP. Иногда это возможно (например, ABS является разрешенным именем для столбца), но не допускается пробел между именем функции и сразу же следующей за ним скобкой `(' при использовании имен функций, совпадающих с именами столбцов.

Следующие слова являются зарезервированными в MySQL. Большинство из них не допускаются в ANSI SQL92 как имена столбцов и/или таблиц (например GROUP). Некоторые зарезервированы для нужд MySQL и используются (в настоящее время) синтаксическим анализатором yacc:



Word
Word Word
ADD
ALL ALTER
ANALYZE
AND AS
ASC
ASENSITIVE AUTO_INCREMENT
BDB
BEFORE BERKELEYDB
BETWEEN
BIGINT BINARY
BLOB
BOTH BTREE
BY
CALL CASCADE
CASE
CHANGE CHAR
CHARACTER
CHECK COLLATE
COLUMN
COLUMNS CONNECTION
CONSTRAINT
CREATE CROSS
CURRENT_DATE
CURRENT_TIME CURRENT_TIMESTAMP
CURSOR
DATABASE DATABASES
DAY_HOUR
DAY_MINUTE DAY_SECOND
DEC
DECIMAL DECLARE
DEFAULT
DELAYED DELETE
DESC
DESCRIBE DISTINCT
DISTINCTROW
DIV DOUBLE
DROP
ELSE ELSEIF
ENCLOSED
ERRORS ESCAPED
EXISTS
EXPLAIN FALSE
FIELDS
FLOAT FOR
FORCE
FOREIGN FROM
FULLTEXT
GRANT GROUP
HASH
HAVING HIGH_PRIORITY
HOUR_MINUTE
HOUR_SECOND IF
IGNORE
IN INDEX
INFILE
INNER INNODB
INOUT
INSENSITIVE INSERT
INT
INTEGER INTERVAL
INTO
IS ITERATE
JOIN
KEY KEYS
KILL
LEADING LEAVE
LEFT
LIKE LIMIT
LINES
LOAD LOCALTIME
LOCALTIMESTAMP
LOCK LONG
LONGBLOB
LONGTEXT LOOP
LOW_PRIORITY
MASTER_SERVER_ID MATCH
MEDIUMBLOB
MEDIUMINT MEDIUMTEXT
MIDDLEINT
MINUTE_SECOND MOD
MRG_MYISAM
NATURAL NOT
NULL
NUMERIC ON
OPTIMIZE
OPTION OPTIONALLY
OR
ORDER OUT
OUTER
OUTFILE PRECISION
PRIMARY
PRIVILEGES PROCEDURE
PURGE
READ REAL
REFERENCES
REGEXP RENAME
REPEAT
REPLACE REQUIRE
RESTRICT
RETURN
RETURNS
REVOKE
RIGHT RLIKE
RTREE
SELECT SENSITIVE
SEPARATOR
SET SHOW
SMALLINT
SOME SONAME
SPATIAL
SPECIFIC SQL_BIG_RESULT
SQL_CALC_FOUND_ROWS
SQL_SMALL_RESULT SSL
STARTING
STRAIGHT_JOIN STRIPED
TABLE
TABLES TERMINATED
THEN
TINYBLOB TINYINT
TINYTEXT
TO TRAILING
TRUE
TYPES UNION
UNIQUE
UNLOCK UNSIGNED
UNTIL
UPDATE USAGE
USE
USER_RESOURCES USING
VALUES
VARBINARY VARCHAR
VARCHARACTER
VARYING WARNINGS
WHEN
WHERE WHILE
WITH
WRITE XOR
YEAR_MONTH
ZEROFILL

Следующие символы ( из приведенной выше таблицы таблицы) не разрешены в ANSI SQL, но допускаются в MySQL как имена столбцов/таблиц. Это объясняется тем, что некоторые из этих имен являются словами естественного языка и уже использованы многими потребителями.

  • ACTION

  • BIT

  • DATE

  • ENUM

  • NO

  • TEXT

  • TIME

  • TIMESTAMP


  • Содержание раздела