idea连接mysql数据库并操作(增删改查)

Java中提供了丰富的类和接口用于数据库编程,利用这些类和接口可以方便地进行数据库访问和处理。我们常用的JDBC接口和类都在java.sql包中。

1、Connection接口

Connection接口代表与特定的数据库的连接,在连接上下文中进行SQL语句并返回结果。

2.Statement接口

Statement接口用于已经建立连接的基础上向数据发送SQL语句。在JDBC中有3种Statement对象,分别是Statement、PreparedStatement和CallableStatement。Statement用于执行不带参数的简单的SQL语句;PreparedStatement继承了Statement,用来执行动态的SQL语句;CallableStatement继承了PreparedStatement,用于执行对数据库存储的过程中的调用。

3.PreparedStatement接口

PreparedStatement接口用来动态地执行SQL语句。通过PreparedStatement实例执行的动态的SQL语句,将被预编译并保存到PreparedStatement实例中,从而可以实现反复执行SQL语句。当向数据库发送一个SQL语句,数据库中的SQL解释器负责把SQL语句生成底层的内部命令,然后执行该命令,完成相关的数据操作。如果不断的向数据库提交SQL语句,肯定会增加数据库中SQL解释器的负担,影响执行速度。
对于JDBC,可以通过Connection对象的prepareStatement(String sql)方法对SQL语句实行预编译,生成数据库底层的内部命令,并将该命令封装在PreparedStatement对象中,通过调用该对象的相应的方法执行底层数据库命令。这样应用程序就能针对连接的数据库,实现将SQL语句解释为数据库底层的内部命令,然后让数据库执行这个命令,这样就可以减轻数据库的负担,提高访问数据库的速度。

4.DriverManager类

DriverManager类用来管理数据库中的所有驱动程序。他是JDBC的管理层,作用于用户和驱动程序之间,跟踪可用的驱动程序,并在数据库的驱动程序之间建立联系。通过getConnection(String url,String user,String password)方法建立连接。

5.ResultSet接口

ResultSet接口类似于临时表,用来暂时存放数据库查询操作所获得的结果集。ResultSet的实例具有指向当前数据行的指针,指针开始的位置在第一条记录的前面,通过next()方法可将指针向下移。

上面介绍操作数据的用到的一些类和接口,下面这里必不可少的需要导入mysql-connector-java-5.1.7-bin.jar包。下载连接http://pan.baidu.com/s/1c99Axw

下面再来看下导入jar的步骤
图片写的很清楚在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到这里所有连接mysql的工作已经做完了。
接下来就是数据库进行增删改查操作。
操作步骤一共分为以下七步:加载驱动、创建连接、写一个 sql 语句、预编译 sql 语句、执行 sql语句、获得结果、处理结果、关闭所有连接。

在项目中创建类Test

代码如下

package sql;

import java.sql.*;

public class Test { //创建 HandleSql 类

    static Connection con; //声明 Connection 对象
    static PreparedStatement pStmt;//声明预处理 PreparedStatement 对象
    static ResultSet res;//声明结果 ResultSet 对象

    static String url = "jdbc:mysql://localhost:3306/db_test";
    static String user = "root";
    static String password = "youpassword";

    public Connection getConnection() {//建立返回值为 Connection 的方法

        //代码块(1):加载数据库驱动类
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            System.out.println("数据库驱动加载成功");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

        //代码块(2):通过访问数据库的URL获取数据库连接对象
        try {
            con = DriverManager.getConnection(url,user,password);
            System.out.println("数据库连接成功");
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return con;
    }
    public static void main(String[] args) {//主方法
        HandleSql h = new HandleSql();//创建本类对象
        con = h.getConnection();//与数据库建立连接
        
    }

}

基本的增删改查操作都可以完成了,具体的解释代码里面都有。

  • 8
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
1. 添加JDBC驱动 下载JDBC驱动jar包,将其拷贝到项目中的lib文件夹下,右键选择Add as Library。在弹出的对话框中,选择MySQL JDBC Driver,点击OK。此时,jar包已经被添加到项目中。 2. 定义MySQL连接地址、用户名和密码 1)打开数据库,创建自己的数据库并创建表结构 2)在IDEA中,选择View->Tool Windows->Database,弹出Database面板 3)点击“+”,选择MySQL,输入相关信息,点击Test Connection并验证成功后,点击OK。 3. 使用JDBC连接MySQL数据库 1)在设置好数据库连接之后,在需要操作数据库的类中,通过DriverManager获取数据库连接,如下所示: ```java Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?user=root&password=root&characterEncoding=UTF-8&useSSL=false"); ``` 其中,驱动名为com.mysql.jdbc.Driver,连接信息为 jdbc:mysql://localhost:3306/test?user=root&password=root&characterEncoding=UTF-8&useSSL=false,其中test为数据库名,root为数据库用户名和密码。 2)在获取到数据库连接之后,即可进行增删操作。 4. 实现增删操作 1)INSERT操作: ```java PreparedStatement pstmt = conn.prepareStatement("insert into user(name,age) values(?,?)"); pstmt.setString(1, "Tom"); pstmt.setInt(2, 20); pstmt.executeUpdate(); //执行插入操作 pstmt.close(); ``` 2)DELETE操作: ```java PreparedStatement pstmt = conn.prepareStatement("delete from user where id = ?"); pstmt.setInt(1, 1); pstmt.executeUpdate(); //执行删除操作 pstmt.close(); ``` 3)UPDATE操作: ```java PreparedStatement pstmt = conn.prepareStatement("update user set age = ? where name = ?"); pstmt.setInt(1, 22); pstmt.setString(2, "Tom"); pstmt.executeUpdate(); //执行更新操作 pstmt.close(); ``` 4)SELECT操作: ```java PreparedStatement pstmt = conn.prepareStatement("select * from user where id = ?"); pstmt.setInt(1, 2); ResultSet rs = pstmt.executeQuery(); //执行操作 while (rs.next()) { System.out.println("id: " + rs.getInt("id")); System.out.println("name: " + rs.getString("name")); System.out.println("age: " + rs.getInt("age")); } rs.close(); pstmt.close(); ``` 5. 关闭数据库连接 执行完数据库操作后,需要关闭ResultSet、PreparedStatement和Connection对象。 ```java rs.close(); pstmt.close(); conn.close(); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值