簡體   English   中英

連接到Java:JDBC的數據庫異常

[英]Exception connecting to a Database in Java:JDBC

我正在嘗試使用JDBC從表中獲取所有列值。

這是我在主程序中編寫的代碼。

 Class.forName( "com.mysql.jdbc.driver" );
 String url = "jdbc:jtds:sqlserver://test.com/abc_1_20121225;instance=abcd";
 Connection conn = DriverManager.getConnection(url,"uname","pwd");
 Statement stmt = conn.createStatement();
 ResultSet rs;

  rs = stmt.executeQuery("SELECT table_name, column_name, data_type, data_length FROM USER_TAB_COLUMNS WHERE table_name = 'MyTable'");
    while ( rs.next() ) {
         String colName = rs.getString("column_name");
                     System.out.println(colName);
      }
  conn.close();
 } catch (Exception e) {
   System.err.println("Got an exception! ");
 System.err.println(e.getMessage());

我在類路徑中添加了jtds.jar。 我收到此消息

Got an exception! 
com.mysql.jdbc.driver

有人可以告訴我問題的確切原因嗎?

編輯:

添加stactrace;

java.lang.ClassNotFoundException: com.mysql.jdbc.driver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at schwab.TestDB.main(TestDB.java:15)

Class.forName( "com.mysql.jdbc.driver" );

->如果您使用的是mysql驅動程序,則它是驅動程序類而不是驅動程序。

String url = "jdbc:jtds:sqlserver://test.com/abc_1_20121225;instance=abcd";

--->您的網址將指向SQL Server數據庫。

確保您正在使用哪個數據庫。 如果使用MySQL,請使用MySQL Connector jar和驅動程序類com.mysql.jdbc.Driver

如果您正在使用MS SQL Server,使用驅動程序類: net.sourceforge.jtds.jdbc.DriverjTDS Drivercom.microsoft.sqlserver.jdbc.SQLServerDriver為Microsoft SQL Server 2005 JDBC驅動程序

您正在加載錯誤的驅動程序。

替換為:

Class.forName("com.mysql.jdbc.driver");

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

我的猜測是您的類路徑中沒有MysQL驅動程序。 但是,如果提供完整的堆棧跟蹤,則應該可以確認這一點。

但是,您好像正在使用SQLServer數據庫,因此我不確定為什么要引用MYSQL驅動程序?

下載sqljdbc4-2.0.jar並附加到您的項目中。 它將解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM