mysql8.0版本JDBC连接数据库

import java.sql.*;

//第一个jdbc程序
public class JdbcDemo01 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");//固定写法,加载驱动
        //2.用户信息和url
        //serverTimezone=UTC时区设置
        //useUnicode=true支持中文编码
        //&characterEncoding=utf8设置中文集utf8
        //&useSSL=true使用安全的4连接
        String url="jdbc:mysql://localhost:3306/school?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false";
        String username="root";
        String password="123456";
        //3.连接成功,数据库对象
        //对象connection代表数据库
        Connection connection = DriverManager.getConnection(url, username, password);
        //4.执行sql的对象 statement 执行sql的对象
        Statement statement = connection.createStatement();
        /*statement.executeQuery();//查询操作返回ResultSet
        statement.execute();//实行任何sql
        statement.executeUpdate();//更新、插入、删除,都是用这个,返回一个受影响的行数
        statement.executeBatch();//执行多个sql语句,批处理
         */
        //5.执行sql的对象去执行sql,可能存在结果,查看返回结果
        String sql="SELECT s.studentNo,studentName,subjectname,studentresult\n" +
                "FROM student AS s\n" +
                "RIGHT JOIN result AS r\n" +
                "ON r.studentNo = s.studentNo\n" +
                "INNER JOIN `subject` AS sub\n" +
                "ON r.subjectNo=sub.subjectNo;";
        ResultSet resultSet = statement.executeQuery(sql);//返回的结果集,结果集中封装了我们全部的查询出来的结果
        /*
        resultSet.getObject();//在不知道列类型的情况下使用
        resultSet.getString();//如果知道列的类型就使用指定的类型
        resultSet.getInt();
        resultSet.getFloat();
        resultSet.getDate();
        遍历,指针
        resultSet.beforeFirst();移动到最前面
        resultSet.afterLast();移动到最后面
        resultSet.next();移动到下一个数据
        resultSet.previous();移动到前一行
        resultSet.absolute(row);移动到指定行
         */
        while(resultSet.next()){
            System.out.println("studentNo="+resultSet.getObject("studentNo"));
            System.out.println("studentName="+resultSet.getObject("studentName"));
            System.out.println("subjectname="+resultSet.getObject("subjectname"));
            System.out.println("studentresult="+resultSet.getObject("studentresult"));
        }
        //6.释放连接
        resultSet.close();
        statement.close();
        connection.close();
    }
}

connection 代表数据库

数据库设置自动提交

connection.setAutoCommit();

事务提交

connection.commit();

事务回滚

connection.rollback();

你可能感兴趣的:(sql,数据库,mysql)