当前位置:编程学习 > JAVA >>

mysql驱动问题

--------------------编程问答-------------------- 好像是还差一句:Class.forName("你的驱动"); --------------------编程问答--------------------
引用 1 楼 yangjunloveyu 的回复:
好像是还差一句:Class.forName("你的驱动");


是这样加了吧:Class.forName("org.gjt.mm.mysql.Driver");

还是不行 --------------------编程问答--------------------
引用 1 楼 yangjunloveyu 的回复:
好像是还差一句:Class.forName("你的驱动");


是这样加了吧:Class.forName("org.gjt.mm.mysql.Driver");

还是不行 --------------------编程问答-------------------- 用eclipse连接mysql数据时,驱动连接不上,提示错误是:
 No suitable driver found for jdbc: mysql: //localhost: 3306/openlab?user=openlab&password=open123 

这个跟你的URL一样?
url = "jdbc:mysql://127.0.0.1:3306/myfirst_jdbc"

不一样 -_-! --------------------编程问答--------------------
package cn.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
 * 
 * 数据库操作
 *
 * @author 莫小哆_ly 2011-12-31
 */
public class DBConn {
    
    private Connection conn;
    /**
     * 连接数据库
     * @return
     */
    public Connection getConn(){
        String url = "jdbc:mysql://localhost:3306/mydemo"; // 数据库地址[jdbc:mysql://<IP>:<db-port>/<db-name>]
        String user = "root"; // 数据库用户名
        String pwd = ""; // 数据库密码
        try {
            Class.forName("com.mysql.jdbc.Driver"); // 加载驱动
            conn = DriverManager.getConnection(url, user, pwd);// 注册驱动程序
            if (!conn.isClosed()) {
                System.out.println("连接成功");
            }
            if (conn == null) {
                System.out.println("连接数据库失败,从检查后重新启动!");
            }

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return conn;
    }
    /**
     * 关闭数据库连接
     */
    public void closeConn(){
        if(conn!=null) {
            try{
                conn.close();
            }catch(Exception e){
                e.printStackTrace();
            }
        }
    }
}

package cn.impl;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;

import cn.dao.DBConn;

/**
 * 
 * 本页代码包含 【insert】功能
 * 
 * @author 莫小哆_ly 2011-12-31
 */
public class InsertConOpera {
    
    /**
     * 用户注册功能
     * @param userName
     * @param passWord
     */
    public int save(String userName, String passWord) {
        int count = 0;
        try {
            DBConn db = new DBConn();
            Connection conn = db.getConn();
            
            // 执行静态SQL语句
            Statement stmt = conn.createStatement();
            
            //生成注册时间
            Date now = new Date();
            SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
            String registeredTime = format.format(now);

            String sql0 = "INSERT INTO user(userName,passWord,registeredTime) " + " VALUES (" + "'"
                    + userName + "','" + passWord + "','" + registeredTime + "')";
            count = stmt.executeUpdate(sql0);
            if (stmt != null) { // 关闭声明
                try {
                    stmt.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (conn != null) { // 关闭连接对象
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            db.closeConn();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return count;
    }
}


我习惯这么用 --------------------编程问答--------------------
引用 4 楼 robotta 的回复:
用eclipse连接mysql数据时,驱动连接不上,提示错误是:
 No suitable driver found for jdbc: mysql: //localhost: 3306/openlab?user=openlab&password=open123 

这个跟你的URL一样?
url = "jdbc:mysql://127.0.0.1:3306/myfirst_jd……


我也纠结呢?什么原因啊? --------------------编程问答--------------------
引用 4 楼 robotta 的回复:
用eclipse连接mysql数据时,驱动连接不上,提示错误是:
 No suitable driver found for jdbc: mysql: //localhost: 3306/openlab?user=openlab&password=open123 

这个跟你的URL一样?
url = "jdbc:mysql://127.0.0.1:3306/myfirst_jd……




今天刚开始学jdbc,不会啊 --------------------编程问答-------------------- 你的jdbc jar 包是放在哪里?重新贴出一份代码,我帮你看看,还有你此时运行的错误! --------------------编程问答-------------------- 一:连接URL格式出现了问题(Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/XX","root","XXXX") 

二:驱动字符串出错(com.mysql.jdbc.Driver) 
    
三:Classpath中没有加入合适的mysql_jdbc驱动(驱动要和你的数据库版本一致) 

四:驱动jar包放的位置不对

我估计是你的url写错拉、你仔细看看。 --------------------编程问答-------------------- url = "jdbc:mysql://127.0.0.1:3306/myfirst_jdbc"这个是数据库的名字吗?
--------------------编程问答-------------------- 没加驱动包吧! --------------------编程问答-------------------- 直接将驱动包放入 tom_cat的lib文件夹下
--------------------编程问答--------------------

package com.wxy.jdbc.day01;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.Connection;

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

public class MYJDBCDemo {
public static final String DBDRIVER = "com.mysql.jdbc.Driver";
//一般都是com.mysql.jdbc.Driver
    public static final String URL = "jdbc:mysql://127.0.0.1:3306/myfirst_jdbc";
    public static final String DBUSER = "root";
    public static final String DBPASSWORD = "root";
    
    public static void getParam(String filename){
        Properties props = new Properties();
        File file = new File(filename);
        
        try {
            FileInputStream fis = new FileInputStream(file);
            props.load(fis); 
            url = props.getProperty("url");
            dbUser = props.getProperty("dbUser");
            dbPassword = props.getProperty("dbPassword");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
        
    }
    
    public static void getEmpData(){
        Connection conn = null;
        Statement stmt = null;
//建议你看看PreparedStatement  它是statement的子类,能实现预处理
        ResultSet rs = null;
        String sql = "select * from emp";
        
        try {
Class.forName(DBDRIVER);
//加载驱动的jar包
            conn = DriverManager.getConnection(URL, DBUSER, DBPASSWORD);
         
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            
            while(rs.next()){
                int id = rs.getInt("id");
                String name = rs.getString("name");
                int age = rs.getInt("age");
                System.out.println(id+","+name+","+age);
            }
            rs.close();
            stmt.close();
            conn.close();
        }
        catch (SQLException e) {
            e.printStackTrace();
        }    
    }
    public static void main(String[] args){
        getParam("src/db_mysql.properties");
        getEmpData();
    }
}

最后检查下你的驱动Jar包是否放在了正确的位置。
--------------------编程问答-------------------- 驱动包有加了吗? --------------------编程问答-------------------- jar包问题 --------------------编程问答-------------------- 我这有个的例子。。

try{ 
     Class.forName("com.mysql.jdbc.Driver");
     }
 catch(ClassNotFoundException  e)  {}
//定义所要用到的三个数据库应用对象
    Connection con=null; //连接对象
    Statement  sql=null; //Statement对象(SQL语句)
    ResultSet   rs=null; //结果集对象
//进行数据源的连接
  try{ 
   con=DriverManager.getConnection ("jdbc:mysql://localhost/scutcs","","");//连接数据库的url  用户名和密码
   sql=con.createStatement();
   String to="Select * From user1 Where username='"+username+"'";
   rs=sql.executeQuery(to);  // --------------------编程问答-------------------- 新来的, 我能弱弱的问一下,这句话是什么意思吗?fis=SqlHelper.class.getClassLoader().getResourceAsStream("mysql.properties");
 pp.load(fis); --------------------编程问答-------------------- 感觉是jar包放错位置了.

建议你把mysql的驱动,放在eclipse安装目录的jar目录里面,如果放置正确,会如下图。

参照:





补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,