jdbc连接sybase数据库的问题

问题:开发jsp应用,测试用的sqlserver数据库,后来要改为sybase数据库,遇到的问题及解决。

首先是驱动

如果在电脑上安装了sybase数据库客户端,在sybase安装目录下是可以找到的。如我的安装目录是E:\sybase,目录下可以看到jConnect-6_0和jConnect-7_0文件夹(sybase客户端版本不同这两个文件夹也不一样的版本)。可以选择jConnect-6_0目录

jdbc连接sybase数据库的问题_第1张图片


这两个文件夹都有需要的驱动文件(jar格式的)

jdbc连接sybase数据库的问题_第2张图片

jdbc连接sybase数据库的问题_第3张图片


如我我选择用jconn3d.jar这个文件为驱动,将这个文件复制,然后粘贴到自己项目的文件夹下面,比如myeclipse中

jdbc连接sybase数据库的问题_第4张图片


再在项目名称上右键选择项目属性菜单,进入Java Build Path选项中的Libaries,加入引用刚刚的jconn3d.jar文件,OK确认。


jdbc连接sybase数据库的问题_第5张图片

这时,在项目中的Web App Libraries中可以看到引入的驱动文件

jdbc连接sybase数据库的问题_第6张图片

在项目中连接数据库

比如我在jsp页面中直接连接sybase数据库

try{
Class.forName("com.sybase.jdbc3.jdbc.SybDriver").newInstance();
Connection conn = DriverManager.getConnection("jdbc:sybase:Tds:127.0.0.1:80/databaseName","username","password");
return conn;

}catch(Exception e){
e.printStackTrace();
return null;
}

其中127.0.0.1是本机地址,如果连接远程数据库换成远程ip地址,80是端口号,databaseName是所连数据库的名字,username是用户名,password是密码。

这里我在Class.forName("com.sybase.jdbc3.jdbc.SybDriver").newInstance();动态引用类的时候就曾出现过什么找不到类的异常,如果引入的驱动不一样,这里面的forName里面的字符串要对应引用的jar中的类,可以通过在Web App Libraries中查看

jdbc连接sybase数据库的问题_第7张图片

找到SybDriver.class,所以Class.forName中是com.sybase.jdbc3.jdbc.SybDriver。

然后

sql = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

sqlString = "你的sql语句“;

rs = sql.executeQuery(sqlString);

就可以获取结果了。

你可能感兴趣的:(原创)