您的位置:首页 > 产品设计 > UI/UE

(解决方法)c3p0、hibernate 连接sybase数据库无法设置连接选项 SET_READONLY_TRUE、SET_CATALOG

2011-11-29 13:52 447 查看
解决hibernate连sybase出现的"SET_READONLY_TRUE"警告

原因:

java.sql.Connection有一个setReadOnly(boolean)方法用以通知数据库优化返回的结果集,但Sybase及Sybase ASE不需要。

解决:

Darrell Fuller已经解决了此问题。

(参见http://forums.hibernate.org/viewtopic.php?p=2209134&highlight=&sid=d94eb4a43870a4d8303b6557af2aee5d)

Sybase及SQLAnywher有一叫spt_mda的系统表,修改此表中的数据,可解决此问题。(此表在Sybase存放在master数据库中)

ASA数据库

(参见http://forums.hibernate.org/viewtopic.php?p=2209134&highlight=&sid=d94eb4a43870a4d8303b6557af2aee5d)

Sybase及SQLAnywher有一叫spt_mda的系统表,修改此表中的数据,可解决此问题。(此表在Sybase存放在master数据库中)

(用sa账号登录,用master数据库命令:use master )

通过“select * from spt_mda where mdinfo='SET_READONLY_FALSE' or mdinfo='SET_READONLY_TRUE'”的语句可列出相应内容:

mdinfoquerytypequery
SET_READONLY_FALSE3
SET_READONLY_TRUE3
使用

update spt_mda set querytype = 4, query = '0' where mdinfo = 'SET_READONLY_FALSE'



update spt_mda set querytype = 4, query = '0' where mdinfo = 'SET_READONLY_TRUE'

的语句将此表修改。原来的3代表不支持,因此发出SQLWarning。改为4及0后,将不报错。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐