2016-09-28 51 views
-1

我很难用Java连接到SQL服务器。这里是我的代码:在Java中连接到SQL?

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); 
      } 
    } 


} 

当我跑我得到这个错误的应用程序:

了java.lang.RuntimeException:没有消息资源在com.txfb.bai发现消息属性prop.servertype 。 jtds.jdbc.Messages.get(Messages.java:120) at com.txfb.bai.jtds.jdbc.Messages.get(Messages.java:67) at com.txfb.bai.jtds.jdbc.Driver。 parseURL(Driver.java:374) at com.txfb.bai.jtds.jdbc.Driver.setupConnectProperties(Driver.java:239) at com.txfb.bai.jtds.jdbc.Driver.connect(Driver.java: 182) at com。 txfb.bai.jtds.jdbc.Driver.connect(Driver.java:1) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.C2S。数据库错误:java.lang.RuntimeException:找不到消息属性的消息资源prop.servertype

有人能告诉我我做错了什么吗?

+0

嗯,这个例外是由于'prop.servertype'缺少消息资源,但是底层的问题可能是URL中的错误。 – Kayaman

+0

'jtds' Driver的类名是'net.sourceforge.jtds.jdbc.Driver' http://jtds.sourceforge.net/faq.html –

回答

0

将JTDS驱动程序的名称更改为net.sourceforge.jtds.jdbc.Driver修复了该问题。感谢来自用户的不带名称的推荐!