使用jdbc 连接sybase 11 时出现的问题

出现异常:

 

java.sql.SQLException: JZ0SJ: 没有在此数据库中发现元数据存取器信息。 请按 jConnect 文档中所述安装 所需的表。

        at com.sybase.jdbc2.jdbc.ErrorMessage.raiseError(ErrorMessage.java:498)

        at com.sybase.jdbc2.jdbc.MdaManager.loadMetaData(MdaManager.java:458)

        at com.sybase.jdbc2.jdbc.MdaManager.<init>(MdaManager.java:145)

        at com.sybase.jdbc2.jdbc.MdaManager.<init>(MdaManager.java:130)

        at com.sybase.jdbc2.jdbc.SybConnection.checkMDA(SybConnection.java:1747)

        at com.sybase.jdbc2.jdbc.SybConnection.getMDA(SybConnection.java:1528)

        at com.sybase.jdbc2.tds.Tds.setOption(Tds.java:1079)

        at com.sybase.jdbc2.jdbc.SybConnection.setAutoCommit(SybConnection.java:626)

 

解决的办法是:

 

Sybase网站上down下来的驱动程序包解开后,里面有个目录sp,目录下有几个.sql文件,

把那几个文件放到sql advantage中执行一下即可。

一般:sybase 11 执行sql_server.sql,

 

Sybase的产品好像比较特别,如果需要支持JDBC连接数据库必须要执行几个.sql文件,

另外:基本上执行以后对数据库没多大影响。

 

补充:要在url=jdbc:sybase:Tds:172.23.7.99:5000/jwgl后加上指定字符编码的格式:?charset=cp936,否则会出现乱码

本文参考:http://blog.csdn.net/sydongda/archive/2005/01/20/260507.aspx

posted on 2009-08-04 11:42  分布式编程  阅读(242)  评论(0编辑  收藏  举报

导航