【sql server 2005】因使用关键字做为表名引起的Hibernate报错
来源:互联网 发布:java汽车租赁费用 编辑:程序博客网 时间:2024/06/05 04:24
今天做个管理管登陆的测试页面的时候,出现添加管理员失败,
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 被中括号括起来了!才想起来
是:关键字作为表名或字段名是要加中括号。
修改表名之后:插入成功!
所以建议各位别使用关键字做为表名或字段。 表名userinfo更好用。
- 【sql server 2005】因使用关键字做为表名引起的Hibernate报错
- SQL关键字作为列名引起的sql异常场景
- 机器名改动引起的SQL Server 2005的26,40 or 53错误一则
- 将表名,字段名做为参数传递到Sql Server中
- 因not open force loggning 引起的DG ora-1578 报错
- 处理SQL Server 因修改过计算机名无法登陆的问题
- Hibernate 因别名引起的Column Not Found(Mysql)
- SQL变量做为列名
- Sql Server 表名、表字段与关键字冲突
- 使用mysql关键字做类字段名报的错,花了我一个钟,坑啊
- 【SQL server】merge 关键字的使用
- 因mysql表名与mysql关键字冲突导致的com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException
- SQL Server 如何使用命令修改表名或表的列名 和 删除表
- SQL Server表名
- sql server 2005的登录名
- sql server 2005的默认登录名
- 坑了我一天的500错误QAQ(用了SQL Server的关键字作为表名)
- 使用mysql数据库的关键字作为表的属性名,同时使用hibernate时出现异常错误:MySQLSyntaxErrorException
- gstreamer中playbin的播放原理
- ADF中的 'pessimistic 锁' 和 'optimistic 锁'
- Linux进程间通信的方法
- mysql 查询慢分析
- hdu 2058 The sum problem
- 【sql server 2005】因使用关键字做为表名引起的Hibernate报错
- Android 从服务器下载文件
- oracle获取本周、本月、本季度、本年度的第一天和最后一天
- 车厢调度算法
- PSIA与ONVIF:如何评估两种视频监控标准
- RichFaces 简介
- C#入门概念--解决方案、项目、程序集、命名空间
- 盗梦空间各种YY
- 配置spket到Eclipse作为ExtJS编辑器