因使用关键字做为表名引起的Hibernate报错
2011-05-27 11:12
260 查看
今天做个管理管登陆的测试页面的时候,出现添加管理员失败,
Myeclipse 提示错误如下:
Hibernate: insert into Student.dbo.User (username, password) values (?, ?)
org.hibernate.exception.SQLGrammarException: could not insert: [com.yaxing.domain.User]
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 关键字 'User' 附近有语法错误。
这就奇怪了 既然sql语句已经显示出来了,下面的那个错误 想必就是Sql Server 2005 报错了。
于是到Sql Server 2005 里面试试插入语句
可以看到插入失败:
查询语句:
也是失败。于是查看下图
发现 User 被中括号括起来了!才想起来
是:关键字作为表名或字段名是要加中括号。
修改表名之后:插入成功!
所以建议各位别使用关键字做为表名或字段。
本文出自 “幽灵柯南的技术blog” 博客,请务必保留此出处http://enetq.blog.51cto.com/479739/575396
Myeclipse 提示错误如下:
Hibernate: insert into Student.dbo.User (username, password) values (?, ?)
org.hibernate.exception.SQLGrammarException: could not insert: [com.yaxing.domain.User]
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 关键字 'User' 附近有语法错误。
这就奇怪了 既然sql语句已经显示出来了,下面的那个错误 想必就是Sql Server 2005 报错了。
于是到Sql Server 2005 里面试试插入语句
可以看到插入失败:
查询语句:
也是失败。于是查看下图
发现 User 被中括号括起来了!才想起来
是:关键字作为表名或字段名是要加中括号。
修改表名之后:插入成功!
所以建议各位别使用关键字做为表名或字段。
本文出自 “幽灵柯南的技术blog” 博客,请务必保留此出处http://enetq.blog.51cto.com/479739/575396
相关文章推荐
- 【sql server 2005】因使用关键字做为表名引起的Hibernate报错
- 解决使用SQL关键字作为列名引起的sql异常场景
- iOS9关键字的简单使用
- Java关键字final、static使用总结
- break和continue关键字使用总结
- 1、要搜索一个确切的字符串,即精确搜索,需要使用双引号引起来:path:”/app/logs/nginx/access.log” 2、如果不带引号,将会匹配每个单词:uid token 3、模糊搜
- break和continue关键字使用总结
- 使用php进行文章关键字(标签)的提取
- 使用consul做为配置中心
- RobotFramework下的http接口自动化Get关键字的使用
- 使用 CHttpConnection,CHttpFile引起内存泄漏
- C++中extern关键字的使用
- java中this 关键字的使用
- 为什么静态方法中不能使用this和super关键字
- 使用策略模式(strategy pattern)实现多关键字排序(3)
- CreateThread 使用不当引起内在泄露? CreateThread 和 _beginthreadex 区别。
- 了解何时使用 Override 和 New 关键字(C# 编程指南)
- 【自我修养】理解static关键字的使用
- iOS中属性@property中的关键字的使用说明
- Java transient关键字使用小记