用hibernate做持久层工具,建立User对象,映射到sqlserver的USER表,但在做查询的时候不断的报sql错误,打印hibernate产生的sql语句到sqlserver查询工具执行,报同样的错误。给表名加上[]后sql可以正常执行。例如:select * from USER错误。select * from [USER]正确。开始以为是什么地方配置的问题。因为以前用过达梦数据库,它默认也是必须给表名加[]的,可以通过设置数据库属性解决这个问题。但也没有发现什么配置。后来在SecuritySite群提问,illusion提示是与系统表重名,更改表名后果然正常。于是感到很奇怪:USER这么常用的表名怎么会与系统表重名呢?
http://www.blogjava.net/ronghao 荣浩原创,转载请注明出处:)
posted on 2007-03-11 11:29
ronghao 阅读(1750)
评论(4) 编辑 收藏 所属分类:
工作日志