Mysql 错误,关键字
来源:互联网 发布:淘宝一天刷3单会被限号 编辑:程序博客网 时间:2024/05/12 10:13
工作中遇到个问题,分析后发现是使用关键字造成的,正好跟大家分享下。
在给某个对象添加了一个字段,其中数据库column 对应的名称是 ‘change’, 然后在添加对象的时候就会报:
the manual that corresponds to your MySQL server version for the right syntax to use near 'change, ra) values ('321', '2012-01-06 10:51:48', 10.00, 11.00, 0, 0, 0, 0, 0, 1' at line 1
这样的错误。
注意这儿 change 是mysql 的关键字哦, 我们经常用 alter table xxx change column 的change 哦。
由于使用了关键字,自然报错。
为什么我们在mysql 添加字段的时候不会报错呢。 那是因为我们在写sql 语句的时候,会在字段上面加反引号:
alter table running_account_order_item modify `pn` varchar(50) NOT NULL default '';
mysql 反引号的引入是用于历史原因造成的。 所以如果一条sql 语句 在不加反引号能运行成功,才是好的sql语句。
这样mysql 就不会把它当作关键字了,但是hibernate 在generate sql 的时候,并不会在sql 语句上面的字段 加上反引号。所以就会出问题。 hibernate 为什么不引入反引号呢,那是因为hibernate 不是完全是为了mysql 而设计的,其他的数据库就没有这种问题。
还有个问题,在java swing 的开发中,发现大家还经常出现这样的问题,在一个JPanel 中,不自觉就写如下方法:
getParent (), getLocation ()。
而这些方法本身又是Swing 组件有的方法,就相当于重写了Swing 的方法,就会导致莫名其妙的问题。
所以这些地方要多注意。
- Mysql 错误,关键字
- MySQL 1064 错误(付Mysql 关键字-保留字表)
- 关键字错误。。。
- 处理mysql使用in关键字子查询1317错误
- mysql类名不能是关键字,出现cannot insert错误
- mysql关键字
- MySql关键字
- MySql关键字
- mysql关键字
- Mysql关键字
- mysql 关键字
- mysql关键字
- MySQL关键字
- MySQL关键字
- mysql关键字
- mysql关键字
- mysql关键字
- MySQL 关键字
- 传统NAS和SAN相比 集群存储的优势何在
- 北邮12月份月赛A题
- 双语美文:今天我学会控制情绪
- Visio(流程图绘制软件)的免费替代品
- sencha-touch1.1中如何对数据源进行筛选
- Mysql 错误,关键字
- Service 类 使用
- Android BCM4330 蓝牙BT驱动调试记录
- 在Windows命令行中使用vs2005提供的编译、链接等工具对源程序进行处理
- Refactoring notes 20120106
- UEFI Events
- 如何在命令行下编译创建VC程序
- 从 C++ 到 Qt
- #undef