• 【DAY_02】IDEA环境下,使用JDBC连接MySQL数据库,并进行增删改查


    【省略了配置tomcat和安装IDEA的过程。】文章介绍了如何配置MySQL,如何通过JDBC连接数据库,以及如何实现对数据库的增删改查。

     

    一、常见问题

    1.安装mysql卡在最后start service一步:没有删除干净。删除注册表里所有的mysql相关就可以了。

    2.execute、executeUpdate、executeQuery三者的区别(及返回值)

    executeQuery executeUpdate(String sql) execute(String sql)
    执行SQL查询,并返回ResultSet 对象 可执行增,删,改,返回执行受到影响的行数 可执行任何SQL语句,返回一个布尔值,表示是否返回ResultSet
    ResultSet rs = prst.executeQuery();
    while (rs.next()) {...}
    返回int

    返回boolean

     

     

     

    二、配置MySQL

    以前安装过MySQL的,再次安装会遇到问题,这时候要看是否将MySQL删除干净了。

    1.卸载软件,通过控制面板 2.删除文件夹,在安装目录和C:ProgramData隐藏文件夹下 3.删除注册表中的mysql相关内容

    删除HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesEventlogApplicationMySQL文件夹 删除HKEY_LOCAL_MACHINESYSTEMControlSet002ServicesEventlogApplicationMySQL文件夹。 删除HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesEventlogApplicationMySQL的文件夹。

    参考文章:https://www.cnblogs.com/jpfss/p/6652701.html

     

     

     

    三、连接数据库

    1.项目目录:

     

    2.导入jar包,这里我用的是mysql-connector-java-5.1.30.jar,在官网找半天没有下载成功,最后是在这个网站下载的:http://maven.outofmemory.cn/mysql/mysql-connector-java/5.1.30/

     

    3.连接数据库

     

    4.数据库中建表 我在test数据库中建立了student表格,随意输入了两条信息作为测试数据,如下图:

     

    5.测试代码 DBTest中:

    package com.dgd.test;
    
    import java.sql.*;
    
    /**
     * @author Dgd
     * @create 2017-10-16-21:25
     * 测试数据库
     */
    public class DBTest {
        //mysql驱动包名
        private static final String DRIVER_NAME = "com.mysql.jdbc.Driver";
        //数据库连接地址
        private static final String URL = "jdbc:mysql://localhost:3306/test";
        //用户名
        private static final String USER_NAME = "root";
        //密码
        private static final String PASSWORD = "123456";
        public static void main(String[] args){
            Connection connection = null;
            try {
                //加载mysql的驱动类
                Class.forName(DRIVER_NAME);
                //获取数据库连接
                connection = DriverManager.getConnection(URL, USER_NAME, PASSWORD);
                //mysql查询语句
                String sql = "SELECT Sname FROM student";
                PreparedStatement prst = connection.prepareStatement(sql);
                //结果集
                ResultSet rs = prst.executeQuery();
                while (rs.next()) {
                    System.out.println("用户名:" + rs.getString("Sname"));
                }
                rs.close();
                prst.close();
            } catch (Exception e) {
                e.printStackTrace();
            }finally {
                if (connection != null) {
                    try {
                        connection.close();
                    } catch (SQLException e) {
                        e.printStackTrace();
                    }
                }
            }
        }
    }

     

     

    6.测试成功,显示测试用例

     

     

    7.删除一条数据

    修改代码如下:

                Statement stmt = connection.createStatement();
                String sql = "DELETE FROM student WHERE Sname='李'";  //mysql查询语句
                stmt.executeUpdate(sql);
                System.out.println("成功删除");
    ​
                String sql2 = "SELECT * FROM student";
                PreparedStatement prst = connection.prepareStatement(sql2);
                ResultSet rs = prst.executeQuery();//结果集  

     

    结果如下:

     

     

    7.添加多条数据

    修改之前的代码,变为

    String sql = "INSERT INTO student VALUES (111,'王'),(222,'钱')";

     

    结果如下:

     

    8.修改多条数据

    修改代码如下:

                Statement stmt = connection.createStatement();
                //String sql = "DELETE FROM student WHERE Sname='李'";  //mysql查询语句
                String sql = "UPDATE student SET Sname = CASE id " +
                        " WHEN 111 THEN '刘' " +
                        " WHEN 222 THEN '孙' " +
                        " END " +
                        " WHERE id IN (111,222) ";
                stmt.executeUpdate(sql);
                System.out.println("成功修改"); 

     

    结果如图所示:

  • 相关阅读:
    《作业二》总结
    《作业一》总结
    团队项目-需求分析报告
    团队项目-选题报告
    第一次结对编程作业
    第一次个人编程作业
    第一次博客作业
    第12组 团队项目-需求分析报告
    团队项目-选题报告
    第二次结对编程作业
  • 原文地址:https://www.cnblogs.com/hikki-station/p/11087453.html
Copyright © 2020-2023  润新知