2016-09-28 2 views
-1

Ich habe Schwierigkeiten, eine Verbindung zu einem SQL-Server mit Java herzustellen. Hier ist mein Code:Verbinden mit SQL in Java?

package com.C2S.java; 
import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.sql.Statement; 

public class C2S 
    { 


     public static void main(String[] args) throws SQLException, ClassNotFoundException { 

      try 
      { 
       Class.forName("com.txfb.bai.jtds.jdbc.Driver"); 

       String userName = "USEVL01"; 
       String password = "safevL01"; 
       String url = "jdbc:jtds:sqlserver://TXS9316110MISC;instance=MISC;"; 

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

       Statement sta = conn.createStatement(); 

       String sql = "select * from OpenQuery(LINKEDDBTP, 'SELECT B.*" 
         + " FROM (SELECT *" 
         + " FROM SFBCDBTP.TXPROD.SUB_AGREEMENT" 
         + " WHERE POL_SYMBOL IN (''HOL'', ''PA6'', ''TXC'')" 
         + " AND TRANS_TYPE = ''NB''" 
         + " AND SUB_AGRMNT_TYPE = ''PL''" 
         + " AND SUB_AGMNT_STATUS = ''A''" 
         + " AND TRANS_EFF_DATE > ''2015-12-31''" 
         + " AND TRANS_EFF_DATE < ''2016-01-16''" 
         + " AND AGREEMENT > 0" 
         + " ORDER BY AGREEMENT" 
         + " FETCH FIRST 300 ROWS ONLY) AS A, TXPROD.COVERAGE_RATES AS B" 
         + " WHERE A.AGREEMENT = B.AGREEMENT" 
         + " AND A.POL_SYMBOL = B.POL_SYMBOL" 
         + " AND A.SUB_AGREEMENT = B.SUB_AGREEMENT;');"; 

       ResultSet rs = sta.executeQuery(sql); 

       while (rs.next()) { 
        System.out.println(rs.getString("txt_title")); 
       } 


      } catch (Exception e) 
      { 
       e.printStackTrace(); 
       System.out.println("DB Error: " + e); 
      } 
    } 


} 

Wenn ich die Anwendung ausführen ich diesen Fehler:

java.lang.RuntimeException: Keine Nachricht Ressource für Nachrichteneigenschaft prop.servertype bei com.txfb.bai gefunden. jtds.jdbc.Messages.get (Messages.java:120) bei com.txfb.bai.jtds.jdbc.Messages.get (Messages.java:67) bei com.txfb.bai.jtds.jdbc.Driver. parseURL (Driver.java:374) bei com.txfb.bai.jtds.jdbc.Driver.setupConnectProperties (Driver.java:239) bei com.txfb.bai.jtds.jdbc.Driver.connect (Driver.java: 182) bei com. txfb.bai.jtds.jdbc.Driver.connect (Driver.java:1) bei java.sql.DriverManager.getConnection (unbekannte Quelle) bei java.sql.DriverManager.getConnection (unbekannte Quelle) bei com.C2S. java.C2S.main (C2S.java:23) DB Fehler: java.lang.RuntimeException: Keine Nachrichtenressource für Nachrichteneigenschaft gefunden prop.servertyp

Kann mir jemand sagen, was ich falsch mache?

+0

Nun, die Ausnahme ist aufgrund einer fehlenden Nachrichtenressource für 'prop.servertyp', aber das zugrunde liegende Problem ist wahrscheinlich ein Fehler in der URL. – Kayaman

+0

Der Klassenname für den 'jtds' Treiber ist' net.sourceforge.jtds.jdbc.Driver' http://jtds.sourceforge.net/faq.html –

Antwort

0

Durch Ändern des JTDS-Treibernamens in net.sourceforge.jtds.jdbc.Driver wurde das Problem behoben. Danke an die Empfehlung von user a-horse-with-no-name!