Java编程学习之JDBC连接MySQL

JDBC连接MySQL

一、JDBC连接数据库的步骤
1.加载数据库驱动
//加载驱动
Class.forName(driverClass)
----------------------------------
//加载MySQL驱动
Class.forName("com.mysql.jdbc.Driver");
//加载Oracle驱动
Class.forName("oracle.jdbc.Driver.OracleDriver");

2.通过DriverManager获取数据库连接
//获取数据库连接
DriverManager.getConnection(String url,String user,String pass)
---------------------------------------------
MySQL的URL写法:jdbc:mysql://hostname:port/databasename
Oracle的URL写法:jdbc:oracle:thin:@hostname:port:databasename

3.通过Connection对象创建Statement对象,Connection创建Statement的方法:
createStatement():创建基本的Statement对象
prepareStatement(String sql):根据传入的SQL语句创建预编译的Statement对象
prepareCall(String sql):根据传入的SQL语句创建CallableStatement对象

4.使用Statement执行SQL语句。
execute:可以执行任何SQL语句
executeUpdate:主要用于执行DML和DDL语句。执行DML返回受SQL语句影响的行数,执行DDL返回0
executeQuery:只能执行查询语句,执行后返回代表查询结果的ResultSet对象

5.操作结果集

6.回收数据库资源

❤Java初高级学习分享,共同学习才是最明智的选择,喜欢的话可以我的学习群64弍46衣3凌9,或加资料群69似64陆0吧3(进群备注平台名)
二、例子
import java.sql.*;

public class ConnMySQL{
    public static void main(String[] args) throws Exception{
        //加载MySQL驱动
        Class.forName("com.mysql.jdbc.Driver"); 
        //获取数据库连接
        Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test_cyw","root","root");
        //通过Connection对象创建Statement对象
        Statement stmt = conn.createStatement();
        //
        ResultSet rs = stmt.executeQuery("select * from t_student");
        while(rs.next()){
            System.out.println(rs.getInt(1) + "\t"
                + rs.getString(2) + "\t"
                + rs.getString(3));
        }
        //关闭数据库资源
        if(rs != null){
            rs.close();
        }
        if(stmt != null){
            stmt.close();
        }
        if(conn != null){
            conn.close();
        }
    }
}
---------------
在操作过程中出现问题:
1.JDBC数据库连接异常
异常情况:Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
问题说明:找不到mysql的驱动类
解决方法:
在环境变量的CLASSPATH中添加mysql-connector-java-5.1.20-bin.jar就可以了
本机的路径是:C:\Program Files\MySQL\MySQL Connector J\mysql-connector-java-5.1.20-bin.jar

2.MySql中文显示乱码
mysql> select * from t_student;
+----+------+-----+
| ID | NAME | SEX |
+----+------+-----+
|  1 | cyw  | 鐢? |
|  2 | ly   | 鐢? |
|  3 | gs   | 濂? |
+----+------+-----+
3 rows in set (0.00 sec)
解决方法:
mysql> set names 'gbk'

JDBC对数据库的连接,目前只是对MySQL的连接,分享和大家互相学习

❤提问/互动请留言,可直接在最底右下方"写留言即可"

❤如果觉得写得不错请点击“订阅”,每天更新全新的内容!

❤你们的喜欢和关注就是我最大的动力支撑!!!

猜你喜欢

转载自www.cnblogs.com/lxxl1234/p/9350531.html