一个很简单的连接mysql 的例子(连接本机数据库test,用户名test,密码123456):
import java.sql.*;
public class mytest
{
        public static void main(String[] args)
        {
                String url =  "jdbc:mysql://127.0.0.1/test?user=test&password=123456&useUnicode=true&characterEncoding=GBK";
                 Connection con;
                String strsql1 = "insert into test(id,name) values(4,'李四');";
                Statement stmt;
                try
                {
                        Class.forName("org.gjt.mm.mysql.Driver");
                }
                catch(java.lang.ClassNotFoundException e)
                {
                        System.err.print("ClassNotFoundException:");
                        System.err.println(e.getMessage());
                }
                try
                {
                        con = DriverManager.getConnection(url,"test","123456");
                        stmt = con.createStatement();
                        stmt.executeUpdate(strsql1);

                        stmt.close();
                        con.close();
                }
                catch(SQLException e)
                {
                        System.err.println("SQLException="+e.getMessage());
                }
        }
}

解决方案 »

  1.   

    可能早上是没说清楚  
    操作系统是windows  
    Access数据库作成了windows下的数据源odbc
    在tomcat的classes里
    有一个连接数据库的beans:DBConnect.class
    现在想换连接到mysql数据库下   
    数据库名不变  用户名是root  密码是root
    如果也想作成odbc数据源  该怎样做  如何改beans
    如果直接连接 又该怎么修改DBConnect.class
    DBConnect.class是这样的 (Access数据库模式下):
    ---------------------------------------
    package EIMS;
    import java.sql.* ;
    import java.util.*;
    public class DBConnect
    {
    private String sdbDriver="sun.jdbc.odbc.JdbcOdbcDriver";  //JDBC-ODBC驱动程序
    private String sdbUrl="jdbc:odbc:empinfo";  //empinfo为本地ODBC数据源
            private String sdbUsername="admin";  //登陆帐户
    private String sdbPassword="admin";  //登陆口令
            public Statement stmt;
    public Connection conn = null;
            ResultSet rs=null;
    public DBConnect() throws ClassNotFoundException,SQLException{
    try {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance(); //加载JDBC-ODBC驱动程序
    conn=DriverManager.getConnection(sdbUrl,sdbUsername,sdbPassword);
    //与本地ODBC数据源permission建立连接,sdbUsername,sdbPassword是用户名与口令
    }
    catch(Exception e){//捕捉错误
    System.out.print("Exception occur.Message is:"+e.getMessage());
    }
    } public Connection getConn()
    {
          //getConn()返回Connection对象
    System.out.println("数据库连接成功");
    return(conn);
    }
    public ResultSet executeQuery(String sql) 
    {//执行SQL语句
    rs = null;
    try {
      stmt=conn.createStatement();//创建语句对象
      rs=stmt.executeQuery(sql);//执行SQL语句
      System.out.println("rs返回成功");

    catch(SQLException ex) { 
    System.err.println("aq.executeQuery:" + ex.getMessage());
    System.err.println("aq.executeQuerystrSQL: " + sql);
    }
    return rs;//返回结果集
    }
    public void executeUpdate(String sql) {//执行SQL语句
    try {
    stmt = conn.createStatement();//创建语句对象
    stmt.executeUpdate(sql);//执行SQL语句

    catch(SQLException ex) { 
    System.err.println("aq.executeUpdate: " + ex.getMessage());
    System.err.println("aq.executeUpadatestrSQL: " + sql);
    }
    }
    /**
    * 关闭数据库连接
    */
    public void destroy() 
    {
    try 
    {
    stmt.close();//关闭语句对象
    conn.close();//关闭数据库连接

    catch (Exception e) 
    {
    e.printStackTrace();
    }
    }
    }
    ------------------------------
    急望高人指点
      

  2.   

    通过JDBC-ODBC访问数据库(ms的一些数据库外:access/foxpro/..)极少存在,除非是个人爱好,因为在实际工作、编程中根本就不用。
    如果是作业,那太....。直接用JDBC吧,随风已经给了答案。
      

  3.   

    嗯,随风的例子可以运行成功,一会我再改一下吧。不用odbc数据源了,直接调好了。先谢谢楼上几位了
      

  4.   

    mytest能运行,但是jsp还是不能运行成功。看来不是MySQL的问题,应该是程序中连接数据库的beans有问题。不是说jdbc忽略不同数据库的差异,提供统一接口的吗?为什么Access的beans换MySQL之后就不能用了?下面是我连接MySQL的beans,大家看有什么错误:
    import java.sql.* ;
    import java.util.*;
    public class DBConnect
    {
    private String sdbDriver="com.mysql.jdbc.Driver";  //JDBC-ODBC驱动程序
    private String sdbUrl="jdbc:mysql://127.0.0.1/empinfo?user=root&password=root&useUnicode=true&characterEncoding=GBK";  //empinfo为本地ODBC数据源
                    public Statement stmt;
    public Connection conn = null;
            ResultSet rs=null;
    public DBConnect() throws ClassNotFoundException,SQLException{
    try {
    Class.forName("com.mysql.jdbc.Driver").newInstance(); //加载JDBC-ODBC驱动程序
    conn=DriverManager.getConnection(sdbUrl,"root","root");
    //与本地ODBC数据源permission建立连接,sdbUsername,sdbPassword是用户名与口令
    }
    catch(Exception e){//捕捉错误
    System.out.print("Exception occur.Message is:"+e.getMessage());
    }
    } public Connection getConn()
    {
          //getConn()返回Connection对象
    System.out.println("数据库连接成功");
    return(conn);
    }
    public ResultSet executeQuery(String sql) 
    {//执行SQL语句
    rs = null;
    try {
      stmt=conn.createStatement();//创建语句对象
      rs=stmt.executeQuery(sql);//执行SQL语句
      System.out.println("rs返回成功");

    catch(SQLException ex) { 
    System.err.println("aq.executeQuery:" + ex.getMessage());
    System.err.println("aq.executeQuerystrSQL: " + sql);
    }
    return rs;//返回结果集
    }
    public void executeUpdate(String sql) {//执行SQL语句
    try {
    stmt = conn.createStatement();//创建语句对象
    stmt.executeUpdate(sql);//执行SQL语句

    catch(SQLException ex) { 
    System.err.println("aq.executeUpdate: " + ex.getMessage());
    System.err.println("aq.executeUpadatestrSQL: " + sql);
    }
    }
    /**
    * 关闭数据库连接
    */
    public void destroy() 
    {
    try 
    {
    stmt.close();//关闭语句对象
    conn.close();//关闭数据库连接

    catch (Exception e) 
    {
    e.printStackTrace();
    }
    }
    }