MySQL / JDBC问题

时间:2014-06-24 17:34:29

标签: java mysql sql jdbc

我正在学习一门教程并且对JDBC完全陌生,我对Java有扎实的了解并且对SQL有简要的了解。我有一个在线VPS,其中有一个小型数据库(只是用它来学习这个)但在以下情况下不断出现错误:

  1. 注册驱动程序
  2. 打开连接
  3. 这是我的简单课程。如果有人能提供帮助,我们将不胜感激。

    import java.sql.*;
    
    public class ExampleJava {
    static final String USER = "HIDDEN_USERNAME";
    static final String PASS = "HIDDEN_PASSWORD";
    static final String DB_URL = "studiobooch.x10.mx";
    static Connection conn;
    
    
    
    public static void main(String[] args) {
        System.out.println("Connecting to database");
        try {
            Class.forName("com.mysql.jdbc.Driver");
            conn = DriverManager.getConnection("DB_URL", USER, PASS);
    
        }catch(SQLException e){
            System.out.println("Connection error");
            e.printStackTrace();
        }catch(ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
    }
    

    打印出以下内容:

    Connecting to database
        java.sql.SQLException: No suitable driver found for studiobooch.x10.mx
    at java.sql.DriverManager.getConnection(DriverManager.java:596)
    at java.sql.DriverManager.getConnection(DriverManager.java:215)
    at ExampleJava.main(ExampleJava.java:18)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at             
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
    

2 个答案:

答案 0 :(得分:2)

使用conn = DriverManager.getConnection("DB_URL", USER, PASS);

更改conn = DriverManager.getConnection(DB_URL, USER, PASS);

编辑:对于ClassNotFoundException,请确保正确地将.jar驱动程序添加到lib。

答案 1 :(得分:1)

我认为DB_URL需要是一个JDBC连接字符串,而不仅仅是一个域。尝试类似于此的东西:

static final String DB_URL = "jdbc:mysql://studiobooch.x10.mx/myDatabase"

从这里开始:What is the MySQL JDBC driver connection string?