网络编程
位置:首页>> 网络编程>> 数据库>> MySQL 语言参考(5)

MySQL 语言参考(5)

 来源:MYSQL.CN 发布时间:2007-11-21 20:37:00 

标签:mysql,语法,参考

6.1.7 MySQL 对保留字挑剔吗?


一个常见的问题来于试图使用 MySQL 内置的数据类型或函数名作为表的字段名来创建数据表,例如 TIMESTAMP 或 GROUP。但是,允许你这样做(例如,ABS 是一个允许的列名),当使用函数名也是列名的函数时,函数名与后面跟着的  之间不允许存在空格。

下面的词在 MySQL 中是被明确保留的。它们大多数被 ANSI SQL92 禁止作为列或表名(例如, GROUP)。一些被保留是因为 MySQL 需要它们并且它使用的是一个 yacc 语法分析器:


单词 单词 单词
ADDALLALTER
ANALYZEANDAS
ASCAUTO_INCREMENTBDB
BEFOREBERKELEYDBBETWEEN
BIGINTBINARYBLOB
BOTHBTREEBY
CASCADECASECHANGE
CHARCHARACTERCHECK
COLLATECOLUMNCOLUMNS
CONSTRAINTCREATECROSS
CURRENT_DATECURRENT_TIMECURRENT_TIMESTAMP
DATABASEDATABASESDAY_HOUR
DAY_MINUTEDAY_SECONDDEC
DECIMALDEFAULTDELAYED
DELETEDESCDESCRIBE
DISTINCTDISTINCTROWDIV
DOUBLEDROPELSE
ENCLOSEDERRORSESCAPED
EXISTSEXPLAINFALSE
FIELDSFLOATFOR
FORCEFOREIGNFROM
FULLTEXTFUNCTIONGRANT
GROUPHASHHAVING
HIGH_PRIORITYHOUR_MINUTEHOUR_SECOND
IFIGNOREIN
INDEXINFILEINNER
INNODBINSERTINT
INTEGERINTERVALINTO
ISJOINKEY
KEYSKILLLEADING
LEFTLIKELIMIT
LINESLOADLOCALTIME
LOCALTIMESTAMPLOCKLONG
LONGBLOBLONGTEXTLOW_PRIORITY
MASTER_SERVER_IDMATCHMEDIUMBLOB
MEDIUMINTMEDIUMTEXTMIDDLEINT
MINUTE_SECONDMODMRG_MYISAM
NATURALNOTNULL
NUMERICONOPTIMIZE
OPTIONOPTIONALLYOR
ORDEROUTEROUTFILE
PRECISIONPRIMARYPRIVILEGES
PROCEDUREPURGEREAD
REALREFERENCESREGEXP
RENAMEREPLACEREQUIRE
RESTRICTRETURNSREVOKE
RIGHTRLIKERTREE
SELECTSETSHOW
SMALLINTSOMESONAME
SPATIALSQL_BIG_RESULTSQL_CALC_FOUND_ROWS
SQL_SMALL_RESULTSSLSTARTING
STRAIGHT_JOINSTRIPEDTABLE
TABLESTERMINATEDTHEN
TINYBLOBTINYINTTINYTEXT
TOTRAILINGTRUE
TYPESUNIONUNIQUE
UNLOCKUNSIGNEDUPDATE
USAGEUSEUSER_RESOURCES
USINGVALUESVARBINARY
VARCHARVARCHARACTERVARYING
WARNINGSWHENWHERE
WITHWRITEXOR
YEAR_MONTHZEROFILL


以下的符号(来自上表)是被 ANSI SQL 禁止的,但是可以被 MySQL 用于列/表名。这是由于用他们命名是很自然的并且有很多的人已经使用了它们。

  • ACTION

  • BIT

  • DATE

  • ENUM

  • NO

  • TEXT

  • TIME

  • TIMESTAMP

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com