2010-11-07 55 views
2

從我讀了JTDS正確的連接字符串是:的Java JTDS連接問題Ubuntu服務器

jdbc:jtds:<server_type>://<server>[:<port>][/<database>] 

我相信這個問題是服務器名稱。服務器名稱格式如下

servername\adhoc 

一個SQLException獲取拋出任何時候我嘗試連接說:「未知的服務器主機名」

那是我的問題,還是有別的東西,我需要考慮的好...?

import java.sql.*; 

public class Main { 

    // The JDBC Connector Class. 
    private static final String MSdbClassName = "net.sourceforge.jtds.jdbc.Driver"; 
    private static final String MSHOST = "servername\\adhoc"; //cascrmeufosqlp1\adhoc 
    private static final String MSDATABASE = "tier2"; 
    private static final String MSUSER = "feed_****2"; 
    private static final String MSPASSWORD = "*******0"; 

    public static void main(String[] args) throws ClassNotFoundException,SQLException 
    { 
    Class.forName(MSdbClassName); 
    String url2 = "jdbc:jtds:sqlserver://" + MSHOST + ":1433/" + MSDATABASE; 
    Connection c2 = java.sql.DriverManager.getConnection(url2, MSUSER, MSPASSWORD); 
    System.out.println("MS SQL works..."); 
    c2.close(); 
    } 
} 
+1

您是否嘗試過使用的IP地址而不是cascrmeufosqlp1? – nos 2010-11-07 23:01:23

回答

2

它看起來像你試圖連接到SQL Server的「命名實例」。您將需要使用url中的「實例」屬性。像這樣的東西可能會奏效:

jdbc:jtds:sqlserver://servername:1433/dbName;appName=MyAPP;instance=instanceName

更多信息請參見該JTDS FAQ這裏找到:http://jtds.sourceforge.net/faq.html

+0

當我使用ip代替服務器名稱連接,但是當我連接使用名稱它不連接。可能的原因是什麼 – Bora 2013-06-19 06:47:41