jtds

jTDS是一個開放原始碼的100%純Java實現的JDBC3.0驅動, 它用於連線 Microsoft SQL Server(6.5,7,2000,2005,2008 和 2012)和Sybase(10 ,11 ,12 ,15)。 jTDS是基於freeTDS的,並且是目前最快的可企業級套用的SQL Server和Sybase的JDBC驅動程式。 jTDS完全與JDBC3.0兼容,支持只向前和可滾動/可更新的結果集(ResultSets),並且支持完全獨立的並行Statements, 而且實現了所有的資料庫元數據(Database MetaData)和結果集元數據(ResultSet MetaData)方法。

下載與安裝

JTDS不需要特別的安裝,只需要把JAR檔案放在classpath路徑中就可以了。

maven的pom檔案配置:

<dependency>

<groupId>net.sourceforge.jtds</groupId>

<artifactId>jtds</artifactId>

<version>1.3.1</version>

</dependency>

連線方法

要點:

默認資料庫實例

資料庫URL:1)jdbc:jtds:sqlserver://localhost:1433;DatabaseName=bid

2)jdbc:jtds:sqlserver://localhost:1433/bid

非默認資料庫實例

資料庫URL:1)jdbc:jtds:sqlserver://localhost:1433;DatabaseName=bid;instance=myInstance(非默 認實例名)

2)jdbc:jtds:sqlserver://localhost:1433/bid;instance=myInstance(非默認實例名)

驅動類: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();

}

}

相關詞條

相關搜尋

熱門詞條

聯絡我們