在 MySQL 中,下表中的字显式被保留。其中大多数字进制被标准 SQL 用作列名 和/或 表名( 例如,GROUP) 。少数被保留了,因为 MySQL 需要它们,( 目前) 使用 yacc 解析程序。保留字被引起来后可以用作识别符。

你不小心使用了下面的关键字,那么就会报这个错误:

SQL Error: 1064, SQLState: 42000

MySQL 关键字和保留字

下面这个表格的目前 MySQL 所拥有的关键字和保留字,在使用 MySQL 创建库名、表名、字段名等的时候,最好避免直接使用这些单词,并且不分大小写,否则的话很容易报错。

1

2

3

ADD

ALL

ALTER

ANALYZE

AND

AS

ASC

ASENSITIVE

BEFORE

BETWEEN

BIGINT

BINARY

BLOB

BOTH

BY

CALL

CASCADE

CASE

CHANGE

CHAR

CHARACTER

CHECK

COLLATE

COLUMN

CONDITION

CONNECTION

CONSTRAINT

CONTINUE

CONVERT

CREATE

CROSS

CURRENT_DATE

CURRENT_TIME

CURRENT_TIMESTAMP

CURRENT_USER

CURSOR

DATABASE

DATABASES

DAY_HOUR

DAY_MICROSECOND

DAY_MINUTE

DAY_SECOND

DEC

DECIMAL

DECLARE

DEFAULT

DELAYED

DELETE

DESC

DESCRIBE

DETERMINISTIC

DISTINCT

DISTINCTROW

DIV

DOUBLE

DROP

DUAL

EACH

ELSE

ELSEIF

ENCLOSED

ESCAPED

EXISTS

EXIT

EXPLAIN

FALSE

FETCH

FLOAT

FLOAT4

FLOAT8

FOR

FORCE

FOREIGN

FROM

FULLTEXT

GOTO

GRANT

GROUP

HAVING

HIGH_PRIORITY

HOUR_MICROSECOND

HOUR_MINUTE

HOUR_SECOND

IF

IGNORE

IN

INDEX

INFILE

INNER

INOUT

INSENSITIVE

INSERT

INT

INT1

INT2

INT3

INT4

INT8

INTEGER

INTERVAL

INTO

IS

ITERATE

JOIN

KEY

KEYS

KILL

LABEL

LEADING

LEAVE

LEFT

LIKE

LIMIT

LINEAR

LINES

LOAD

LOCALTIME

LOCALTIMESTAMP

LOCK

LONG

LONGBLOB

LONGTEXT

LOOP

LOW_PRIORITY

MATCH

MEDIUMBLOB

MEDIUMINT

MEDIUMTEXT

MIDDLEINT

MINUTE_MICROSECOND

MINUTE_SECOND

MOD

MODIFIES

NATURAL

NOT

NO_WRITE_TO_BINLOG

NULL

NUMERIC

ON

OPTIMIZE

OPTION

OPTIONALLY

OR

ORDER

OUT

OUTER

OUTFILE

PRECISION

PRIMARY

PROCEDURE

PURGE

RAID0

RANGE

READ

READS

REAL

REFERENCES

REGEXP

RELEASE

RENAME

REPEAT

REPLACE

REQUIRE

RESTRICT

RETURN

REVOKE

RIGHT

RLIKE

SCHEMA

SCHEMAS

SECOND_MICROSECOND

SELECT

SENSITIVE

SEPARATOR

SET

SHOW

SMALLINT

SPATIAL

SPECIFIC

SQL

SQLEXCEPTION

SQLSTATE

SQLWARNING

SQL_BIG_RESULT

SQL_CALC_FOUND_ROWS

SQL_SMALL_RESULT

SSL

STARTING

STRAIGHT_JOIN

TABLE

TERMINATED

THEN

TINYBLOB

TINYINT

TINYTEXT

TO

TRAILING

TRIGGER

TRUE

UNDO

UNION

UNIQUE

UNLOCK

UNSIGNED

UPDATE

USAGE

USE

USING

UTC_DATE

UTC_TIME

UTC_TIMESTAMP

VALUES

VARBINARY

VARCHAR

VARCHARACTER

VARYING

WHEN

WHERE

WHILE

WITH

WRITE

X509

XOR

YEAR_MONTH

ZEROFILL

解决方法

有时候由于特殊原因,又必须使用这些关键字当作名称怎么办?办法还是有的,这里推荐三种方式来解决这个问题。

一、将表名或字段名用方括号([])括起来

xml 配置:

注解:

@Column(name = "[DESC]", nullable = false)

public String getDesc() {

return this.desc;

}

二、将表名或字段名用两个重音符号(`)括起来

重音符号键即是键盘上 “1” 键左边的、“Tab” 键上边的那个键。此符号亦被称为“反向引号”。

xml 配置:

注解:

@Column(name = "`DESC`", nullable = false)

public String getDesc() {

return this.desc;

}

三、将表名或字段名用双引号(")括起来

xml 配置:

注解:

@Column(name = "\"DESC\"", nullable = false)

public String getDesc() {

return this.desc;

}

mysql sqlstate 42000_MySQL SQL Error: 1064, SQLState: 42000 错误相关推荐

  1. MySQL SQL Error: 1064, SQLState: 42000 错误

    在 MySQL 中,下表中的字显式被保留.其中大多数字进制被标准 SQL 用作列名 和/或 表名( 例如,GROUP) .少数被保留了,因为 MySQL 需要它们,( 目前) 使用 yacc 解析程序 ...

  2. mysql 42000 报错_MySQL SQL Error: 1064, SQLState: 42000 错误

    你不小心使用了下面的关键字,那么就会报这个错误: SQL Error: 1064, SQLState: 42000 MySQL 关键字和保留字 下面这些是目前 MySQL 所拥有的关键字和保留字,在使 ...

  3. ssh mysql 警告_ssh 对数据表查询出错。警告: SQL Error: 1064, SQLState: 42000

    数据表CREATETABLE`order`(`id`varchar(30)NOTNULL,`username`varchar(10)NOTNULL,`productid`int(5)NOTNULL,` ...

  4. SQL Error: 957, SQLState: 42000 ORA-00957: duplicate column name

    1. PositionLinkage config <?xml version="1.0" encoding="utf-8"?> <!DOCT ...

  5. 修改mysql密码时遇见ERROR 1064 (42000) You have an error in your SQL syntax; check the manual that correspo

    修改mysql密码时遇见ERROR 1064 (42000) You have an error in your SQL syntax; check the manual that correspon ...

  6. mysql报08S01的错误- SQL Error: 0, SQLState: 08S01 偶发

    mysql报08S01的错误- SQL Error: 0, SQLState: 08S01 偶发 后台res回来的值为: {"error_code":"UNKNOWN&q ...

  7. SQL Error: 904, SQLState: 42000

    SQL Error: 904, SQLState: 42000 2011年03月04日 问题: WARN 2011-03-04 09:33:18 org.hibernate.util.JDBCExce ...

  8. mysql hy000 1030_解决MySQL数据库SQL Error:1030, SQLState: HY000,Got error 28 from storage engine...

    解决MySQL数据库SQL Error:1030, SQLState: HY000,Got error 28 from storage engine MySQL数据库报以下错误: ERROR 22-0 ...

  9. 关于 SQL Error: 1146, SQLState: 42S02的解决方案

    ** 关于 SQL Error: 1146, SQLState: 42S02的解决方案 ** 描述:项目在windows系统上正常运行(链接本地windows mysql数据库),但在linux(当前 ...

最新文章

  1. NBT:PICRUSt2预测宏基因组功能
  2. java 暂停多线程_关于java中多线程的暂停
  3. stdthread(2)创建
  4. MongoDB只查询一个字段
  5. HTML特效之团购页面效果
  6. 管家婆SQL SERVER数据库“可能发生了架构损坏。请运行DBCC CHECKCATALOG”修复
  7. 吴恩达机器学习笔记十三之推荐系统
  8. PHP导出成word文档
  9. 5.2.1.开启驱动开发之路
  10. 导入php插件_漏洞分析丨WordPress评论插件wpDiscuz任意文件上传
  11. miui主题编辑器和java jdk_MIUI主题编辑器手机版下载|MIUI主题编辑器安卓版下载 v1.0.8 - 跑跑车安卓网...
  12. 闲置商标转让怎样管理最好?
  13. Orcad capture
  14. latch mysql_MySQL中的latch(閂鎖)詳解——易產生的問題以及原因分析
  15. SAP FICO全解析之-货币换算比率
  16. Process finished with exit code 1Class not found:
  17. Java实现Apriori算法
  18. IMU内参标定以及初始化(9轴IMU,比6轴多三个姿态角信息)
  19. RJ45隔离变压器作用
  20. 最新百亿量化私募名单

热门文章

  1. 【地图服务】实现地图上 打点 连线的功能
  2. 手机内置摄像头接线图解_这不是我们第一次听到有关GalaxyZFold3的内置摄像头的信息...
  3. Java compiler level does not match the version of the instal
  4. 350EB锂电保护IC-350EB锂电保护IC
  5. 三相同步发电机的空载短路的simulink仿真
  6. pku1222(高斯消元1)
  7. 2021.12.29国内第一家量产蓝牙AOA高精度定位基站设备原厂深圳核芯物联荣获第二十三届高交会双项大奖
  8. ObjectARX常用类和函数
  9. [LeetCode]快慢指针笔记[142和287]
  10. 【FLASH存储器系列七】NAND FLASH之ONFI规范