【sql server 2005】因使用关键字做为表名引起的Hibernate报错
2011-09-19 10:55
375 查看
今天做个管理管登陆的测试页面的时候,出现添加管理员失败,
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更好用。
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更好用。
相关文章推荐
- 因使用关键字做为表名引起的Hibernate报错
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字解决递归父子关系(详细)
- SQL Server 2005对T-SQL的增强之在聚合函数的后面使用over关键字
- SQL Server 2005---使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005新特性之使用with关键字解决递归父子关系
- SQL Server 2005中使用公用表表达式的递归查询(CTE是个好东西)
- 在执行一个 CLR 例程或 SQL Server 2005 中使用程序集时的错误消息:"在主机存储区中的组件在 GAC 中有一个不同的签名比程序集。
- 无法连接到WMI提供程序。你没有权限或者该服务器无法访问。请注意你只能使用SQL SERVER 配置管理器来管理sql server 2005服务器
- 让asp.net startkit使用SQL server 2005
- Visual C# 2008+SQL Server 2005 数据库与网络开发--8.2.1 使用连接字符串
- SQL Server 2005使用基于行版本控制的隔离级别初探(2) -- READ_COMMITTED_SNAPSHOT
- myeclipse 与 sql server 2005 连接 若干问题《一》请使用支持 JDBC 4.0 的 sqljdbc4.jar 类库
- 使用 SQL Server 2005 Compact Edition 和 Visual C#.NET 快速开发应用程序【转】