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的连接,分享和大家互相学习

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

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

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

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180722A0V9ZM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券