• 数据库操作查看用户名和端口,以及如何Mac 版本idea 如何实现JDBC和MySql建立连接,以及如何操作数据以及连接时出现的常见错误


    1.数据库操作查看用户名

    (1)查看用户名

    select host,user from mysql.user请添加图片描述

    (2)查看端口号

    show global variables like ‘port’

    请添加图片描述

    (3)注意事项

    unique![请添加图片描述](https://img-blog.csdnimg.cn/d8be05047ca9442d902e284bd2dae4b2.png唯一值不能重复,但能多个值为null
    char删除尾部空格,varchar 保留

    2.json:数据交换格式。

    3.JDBC和数据库建立连接后,如何进行操作数据库数据

    (1)加载驱动:通过静态代码快,加载驱动类,不同版本写法不同,8.0s是分界线
    (2)创建连接数据库
    桥接 端口号 数据库名称 用户名和密码
    (3)执行查询
    获取数据库连接 创建statement对象用于执行sql
    (4)执行sql
    (5)处理查询
    (6)关闭资源

    4.利用JDBC连接数据库时出现:

    Access denied for user ‘root’@‘localhost’ (using password: YES)
    一般为密码错误

    5.如何让Mac 版idea 社区版本上JDBC和数据库建立连接、

    (1)下载MySql版本对应的jar
    下载网址:
    链接: link
    下载界面:
    (1)在Select Operating System:中选择操作系统,MAC 版本选择Platform independent
    请添加图片描述
    (2)选择相应格式版本,(我的是mac book air 2020款)选择ZIP Archive,此处是最新版本,M1版本的电脑下载tar Archive格式的
    请添加图片描述
    (3)此处是老旧版本选择,请先查看你的MySql是什么版本,再下载相匹配的的格式版本,我的是8.0.28,我选择8.0.28版本的MySql Product Archives

    请添加图片描述请添加图片描述
    这是我下载成功后得到的jar包
    请添加图片描述
    (4)打开idea,如图选择左上角的文件,打开项目结构请添加图片描述
    (5)如图在库下,点击新建项目库,点击java添加你下载的jar包请添加图片描述
    选择后,点击open,连接完成,可以进行数据库操作。
    请添加图片描述

    6代码实例实现数据库的操作

    import java.sql.*;//所属包
    
    public class JDBCUtils {
        //1.加载驱动
        //静态代码块
        static {
            //加载驱动类
            try {
                Class.forName("com.mysql.cj.jdbc.Driver");//8.0版本以上格式
    //            Class.forName("com.mysql.jdbc.Driver");//8.0以下版本
    
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
        //2.创建链接
        public static Connection openConn(){
            String url = "jdbc:mysql://localhost:填端口号/填数据库名";
            String userNm = "填数据库的用户名";//默认为root
            String pwd = "";//填相应密码,注意是否正确,否则连接失败
            try {
                Connection connection = DriverManager.getConnection(url, userNm, pwd);
                return connection;
            } catch (SQLException e) {
                e.printStackTrace();
            }
            return null;
        }
        //3.执行查询
        public void select() throws SQLException {
            //1.获取数据库链接
            Connection connection = openConn();
            //2.创建statement对象 执行sql
            PreparedStatement statement = connection.prepareStatement("select * from Student");
            //3.执行sql语句
            ResultSet resultSet = statement.executeQuery();
            //4.处理查询结果
            ResultSetMetaData metaData = resultSet.getMetaData();
            while (resultSet.next()){
                int idex = resultSet.getInt(1);//id
                System.out.println(idex);
                String sex = resultSet.getString(2);
                System.out.println(sex);
                String name = resultSet.getString(3);
                System.out.println(name);
    
               // int age = resultSet.getInt(4);
               // System.out.println(age);
                //int classId = resultSet.getInt(5);
                //System.out.println(classId);
                //Date brithday = resultSet.getDate(6);
               // System.out.println(brithday);
            }
            //5.关闭资源
            resultSet.close();
            statement.close();
            connection.close();
        }
    
        public static void main(String[] args) throws SQLException {
            JDBCUtils jdbcUtils = new JDBCUtils();
            jdbcUtils.select();
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65

    运行截图:
    请添加图片描述
    数据库数据图:
    请添加图片描述

  • 相关阅读:
    C++之浅拷贝、深拷贝、拷贝构造函数、拷贝赋值运算符、自定义的深拷贝函数应用总结(二百二十九)
    Android Compose页面跳转Demo
    数据库-理论基础
    如何利用vscode进行断点调试后端node开发的项目,如express或koa?
    创建域名邮箱邮件地址的方法与步骤
    spring boot英语在线学习系统毕业设计-附源码211714
    Nginx + tomcat 的搭建
    188.买卖股票的最佳时机Ⅳ【Java】
    多个pdf合并成一个文件,3个方法合并pdf
    华为数通方向HCIP-DataCom H12-821题库(多选题:41-60)
  • 原文地址:https://blog.csdn.net/m0_59416550/article/details/126644578