jtds

王朝百科·作者佚名  2010-02-20
窄屏简体版  字體: |||超大  

介绍JTDS是一个开放源代码的100%纯Java的,用于JDBC 3.0驱动Microsoft SQL Server (6.5 ,7 ,2000和2005版本)和Sybase(10 ,11 ,12 ,15 版本)的驱动程序 。 JTDS是基于freetds的,并且是目前最快的生产准备JDBC驱动程序为SQL Server和Sybase 。 JTDS完全与JDBC 3.0兼容,支持只向前的,和可滚动/可更新的结果集(ResultSets)中并行(完全独立)语句,并且可实施所有databasemetadata和resultsetmetadata方法。

下载与安装JTDS不需要特别的安装,只需要把JAR文件放在classpath路径中就可以了。

官方网站下载地址:http://sourceforge.net/project/showfiles.php?group_id=33291

官方网站首页:http://jtds.sourceforge.net/

用jtds连接SQL2000的方法要点:

数据库URL:jdbc:jtds:sqlserver://localhost:1433;DatabaseName=bid

驱动类:net.sourceforge.jtds.jdbc.Driver

-----------------------------------------------------------------------

对比:

//microsoft

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";

//jtds

Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();

String url = "jdbc:jtds:sqlserver://localhost:1433;DatabaseName=pubs";

//String url = "jdbc:jtds:sqlserver://localhost:1433/pubs";

String user = "sa";

String password = "dog";

Connection conn = DriverManager.getConnection(url, user, password);

Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);

String sql = "select top 10 * from titles"; //titles为表名;

ResultSet rs = stmt.executeQuery(sql);

---------------------------------------------------------------------

示例:

JAVA使用JTDS连接SQL2000问题

一般有以下几个方面:

1.WINDOWS防火墙屏蔽了1433端口

2.检查SQL2000是否使用的是1433端口

3.检查SQL2000是否升级到SP3以上版本(基本都是这个原因)

以下是使用JTDS连接SQL2000的代码段

连接SQL2000下的TheTest库

--------------------------------------------------------------

public static Connection getConnection(){

String dbDriver = "net.sourceforge.jtds.jdbc.Driver";

String strConnection = "jdbc:jtds:sqlserver://localhost:1433/TheTest";

String user = "sa";

String password = "sa";

Connection conn = null;

try{

//定义连接驱动

Class.forName(dbDriver);

}

catch(java.lang.ClassNotFoundException e){

System.err.println("DBconnection():"+e.getMessage());

}

//--------连接SQL数据库------------------

try

{

conn = DriverManager.getConnection(strConnection,user,password);

}

catch(SQLException ex)

{

System.err.println("aq.executeQuery:"+ex.getMessage());

}

return conn;

}

-----------------------以下为关闭连接--------------------------

public static void closeConnection(PreparedStatement ps,Connection conn,ResultSet rs){

try{

if (rs!=null){

rs.close();

}

if (ps!=null){

ps.close();

}

if (conn!=null){

conn.close();

}

}

catch(SQLException sqlerror){

sqlerror.printStackTrace();

}

}

public static void closeConnection(PreparedStatement ps,Connection conn){

try{

if (ps!=null){

ps.close();

}

if (conn!=null){

conn.close();

}

}

catch(SQLException sqlerror){

sqlerror.printStackTrace();

}

}

public static void closeConnection(Connection conn){

try{

if (conn!=null){

conn.close();

}

}

catch(SQLException sqlerror){

sqlerror.printStackTrace();

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航