2010-05-15 88 views
0

我剛開始使用連接並試用了此示例。我已經安裝了必要的軟件。也複製jar文件到/ EXT folder.Yet下面的代碼有以下錯誤與mysql錯誤的java連接

import java.sql.*; 
public class Jdbc00 { 
    public static void main(String args[]){ 
     try { 
     Statement stmt; 

      Class.forName("com.mysql.jdbc.Driver"); 
      String url = 
      "jdbc:mysql://localhost:3306/mysql" 
      DriverManager.getConnection(url,"root", "root"); 

     //Display URL and connection information 
     System.out.println("URL: " + url); 
     System.out.println("Connection: " + con); 

     //Get a Statement object 
     stmt = con.createStatement(); 

     //Create the new database 
     stmt.executeUpdate(
         "CREATE DATABASE JunkDB"); 

     stmt.executeUpdate(
      "GRANT SELECT,INSERT,UPDATE,DELETE," + 
      "CREATE,DROP " + 
      "ON JunkDB.* TO 'auser'@'localhost' " + 
      "IDENTIFIED BY 'drowssap';"); 
     con.close(); 
    }catch(Exception e) { 
     e.printStackTrace(); 
    }//end catch 
    }//end main 
}//end class Jdbc00 

,但它給了以下錯誤

D:\Java12\Explore>java Jdbc00 
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
     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 Jdbc00.main(Jdbc00.java:11) 

任何人都可以請指導我在糾正這種?

回答

2

包含MySQL驅動類(com.mysql.jdbc.Driver)的JAR文件未在類路徑中,當你運行你的應用程序。這就是ClassNotFoundException所抱怨的。

你需要它要麼添加到CLASSPATH環境變量,或運行Java時使用的類路徑選擇。例如:

java -cp mysql-connector-java-5.0.8-bin.jar Jdbc00 

使用您正在使用的任何MySQL連接器jar文件的名稱和位置。作爲@Ash說,(如果您尚未在本地主機上安裝了MySQL,那麼你的應用程序有數據連接,您可能必須做到這一點。)

1

,問題是,連接器/ J驅動程序不在你的類路徑上。您可以從this page下載最新版本(5.0.12)。