hibernate问题,hibernate高手或自认为是高手的都入,^_^ 100分!谢谢

kaymo 2005-01-17 10:37:48
写hql以id(PK)查出相应数据库记录(用的是MySQL)
query后,对结果iterator的时候抛出异常

com.us.util.DataAccessException: net.sf.hibernate.JDBCException: Could not execute query

at com.us.dao.common.DAOImplBase.findByStringPK(DAOImplBase.java:134)

at com.us.dao.LoginDAO.findByPrimaryKey(LoginDAO.java:11)

at com.us.logic.hibernatetest.main(hibernatetest.java:23)

Caused by: net.sf.hibernate.JDBCException: Could not execute query

at net.sf.hibernate.impl.SessionImpl.iterate(SessionImpl.java:1580)

at net.sf.hibernate.impl.QueryImpl.iterate(QueryImpl.java:27)

at com.us.dao.common.DAOImplBase.findByStringPK(DAOImplBase.java:128)

... 2 more

Caused by: java.sql.SQLException: General error message from server: "Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (gbk_chinese_ci,COERCIBLE) for operation '='"

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1997)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1167)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1278)

at com.mysql.jdbc.Connection.execSQL(Connection.java:2247)

at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1586)

at net.sf.hibernate.impl.BatcherImpl.getResultSet(BatcherImpl.java:87)

at net.sf.hibernate.loader.Loader.getResultSet(Loader.java:795)

at net.sf.hibernate.hql.QueryTranslator.iterate(QueryTranslator.java:848)

at net.sf.hibernate.impl.SessionImpl.iterate(SessionImpl.java:1577)

... 4 more

Exception in thread "main"
...全文
170 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fjpan2002 2005-01-19
  • 打赏
  • 举报
回复
楼主是不是把"="写成"="了?
kaymo 2005-01-18
  • 打赏
  • 举报
回复
想过改mySQL的my.ini文件默认字符为GBK等,但没用,还是latin1

to: drugon(想换工作,准备跳槽................................)

既然你碰到过多次,请问一下,你都是怎么解决的呢?有什么好的方法

我自己的方法是:create表的时候设定字符集类型为GBK或是UTF-8
但觉得很麻烦,每次建表都要加一句话。
redex 2005-01-18
  • 打赏
  • 举报
回复
"Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (gbk_chinese_ci,COERCIBLE) for operation '='"
kaymo 2005-01-18
  • 打赏
  • 举报
回复
这种问题一般怎么解决???
是改mysql的字符类型还是save持久的时候转换一下字符类型
drugon 2005-01-18
  • 打赏
  • 举报
回复
楼主的连接数据库的URL中是不是指定了字符编码?
如果指定了把它去掉就可以了,这个问题我用MYSQL的时候遇到过好几次。
wadsunglow 2005-01-18
  • 打赏
  • 举报
回复
数据库字符集的问题
laoer 2005-01-18
  • 打赏
  • 举报
回复
数据库字符集的问题!
fanly 2005-01-18
  • 打赏
  • 举报
回复
=用了别的字符

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧