|
Документация MySQL
Это общая проблема, возникающая при попытке создать таблицу с именами
столбцов, использующих принятые в MySQL названия типов данных или функций,
такие как TIMESTAMP или GROUP. Иногда это возможно (например, ABS является
разрешенным именем для столбца), но не допускается пробел между именем
функции и сразу же следующей за ним скобкой `(' при использовании имен
функций, совпадающих с именами столбцов.
Следующие слова являются зарезервированными в MySQL. Большинство из них не
допускаются в ANSI SQL92 как имена столбцов и/или таблиц (например
GROUP). Некоторые зарезервированы для нужд MySQL и используются (в
настоящее время) синтаксическим анализатором yacc:
| Слово
| Слово
| Слово
|
| ADD
| ALL
| ALTER
|
| ANALYZE
| AND
| AS
|
| ASC
| AUTO_INCREMENT
| BDB
|
| BERKELEYDB
| BETWEEN
| BIGINT
|
| BINARY
| BLOB
| BOTH
|
| BY
| CASCADE
| CASE
|
| CHANGE
| CHAR
| CHARACTER
|
| COLUMN
| COLUMNS
| CONSTRAINT
|
| CREATE
| CROSS
| CURRENT_DATE
|
| CURRENT_TIME
| CURRENT_TIMESTAMP
| DATABASE
|
| DATABASES
| DAY_HOUR
| DAY_MINUTE
|
| DAY_SECOND
| DEC
| DECIMAL
|
| DEFAULT
| DELAYED
| DELETE
|
| DESC
| DESCRIBE
| DISTINCT
|
| DISTINCTROW
| DOUBLE
| DROP
|
| ELSE
| ENCLOSED
| ESCAPED
|
| EXISTS
| EXPLAIN
| FIELDS
|
| FLOAT
| FOR
| FOREIGN
|
| FROM
| FULLTEXT
| FUNCTION
|
| GRANT
| GROUP
| HAVING
|
| HIGH_PRIORITY
| HOUR_MINUTE
| HOUR_SECOND
|
| IF
| IGNORE
| IN
|
| INDEX
| INFILE
| INNER
|
| INNODB
| INSERT
| INSERT_ID
|
| INT
| INTEGER
| INTERVAL
|
| INTO
| IS
| JOIN
|
| KEY
| KEYS
| KILL
|
| LAST_INSERT_ID
| LEADING
| LEFT
|
| LIKE
| LIMIT
| LINES
|
| LOAD
| LOCK
| LONG
|
| LONGBLOB
| LONGTEXT
| LOW_PRIORITY
|
| MASTER_SERVER_ID
| MATCH
| MEDIUMBLOB
|
| MEDIUMINT
| MEDIUMTEXT
| MIDDLEINT
|
| MINUTE_SECOND
| MRG_MYISAM
| NATURAL
|
| NOT
| NULL
| NUMERIC
|
| ON
| OPTIMIZE
| OPTION
|
| OPTIONALLY
| OR
| ORDER
|
| OUTER
| OUTFILE
| PARTIAL
|
| PRECISION
| PRIMARY
| PRIVILEGES
|
| PROCEDURE
| PURGE
| READ
|
| REAL
| REFERENCES
| REGEXP
|
| RENAME
| REPLACE
| REQUIRE
|
| RESTRICT
| RETURNS
| REVOKE
|
| RIGHT
| RLIKE
| SELECT
|
| SET
| SHOW
| SMALLINT
|
| SONAME
| SQL_AUTO_IS_NULL
| SQL_BIG_RESULT
|
| SQL_BIG_SELECTS
| SQL_BIG_TABLES
| SQL_BUFFER_RESULT
|
| SQL_CALC_FOUND_ROWS
| SQL_LOG_BIN
| SQL_LOG_OFF
|
| SQL_LOG_UPDATE
| SQL_LOW_PRIORITY_UPDATES
| SQL_MAX_JOIN_SIZE
|
| SQL_QUOTE_SHOW_CREATE
| SQL_SAFE_UPDATES
| SQL_SELECT_LIMIT
|
| SQL_SLAVE_SKIP_COUNTER
| SQL_SMALL_RESULT
| SQL_WARNINGS
|
| SSL
| STARTING
| STRAIGHT_JOIN
|
| STRIPED
| TABLE
| TABLES
|
| TERMINATED
| THEN
| TINYBLOB
|
| TINYINT
| TINYTEXT
| TO
|
| TRAILING
| UNION
| UNIQUE
|
| UNLOCK
| UNSIGNED
| UPDATE
|
| USAGE
| USE
| USER_RESOURCES
|
| USING
| VALUES
| VARBINARY
|
| VARCHAR
| VARYING
| WHEN
|
| WHERE
| WITH
| WRITE
|
| YEAR_MONTH
| ZEROFILL
| |
Следующие символы (из приведенной выше таблицы таблицы) не разрешены в
ANSI SQL, но допускаются в MySQL как имена столбцов/таблиц. Это
объясняется тем, что некоторые из этих имен являются словами естественного
языка и уже использованы многими потребителями.
- ACTION
- BIT
- DATE
- ENUM
- NO
- TEXT
- TIME
- TIMESTAMP
Документация Apache Документация MySQL Документация PHP
|