1.创建一个数据库

CREATE DATABASE jdbcStudy CHARACTER SET utf8 COLLATE    utf8_general_ci;
USE jdbcStudy;
CREATE TABLE users(
id INT PRIMARY KEY,
`name`VARCHAR (40),
`password`VARCHAR(60),
email VARCHAR(60),
birthday DATE

);

INSERT    INTO users (id,`name`,`password`,`email`,`birthday`)
VALUES (1,'zhansan','123456','zs@sina.com','1980-12-04'),
(2,'zhanlai','123456','as@lin.com','1982-09-16'),
(3,'hunagli','123456','ad@li.com','1999-09-09');

2.导入数据库驱动

创建一个包

把mysql-connector-java-5.1.47.jar复制粘贴进去

加载一下,这个包才用用

2.java---IDEA创建一个项目

1.加载驱动(两种写法,推荐第二种)

DriverManager.registerDriver(new com.mysql.jdbc.Driver());//这种写法加载完,还创建了一个注册了一个,可能会重复注册

 

Class.forName("com.mysql.jdbc.Driver");//固定写法

 

2.url

协议://主机地址:端口号/数据库?参数1&参数2&参数3

 useUnicode=true 运用统一编码(支持中文) &characterEncoding=utf8 编码类型为utf-8 &useSSL=true (使用安全的连接)mysql数据库用的是gbk编码,而项目数据库用的是utf-8编码。存取时进行转化

mysql===3306

String url = "jdbc:mysql://localhost:3306/jdbcstudy?    。。。";

oralce=== 1521

jdbcoralce:thin:@local:1521:sid

3.连接数据库DriverManager 

connection 代表数据库

数据库设置自动提交

connection.setAutoCommit();

事务提交

connection.commit();

事务回滚

connection.rollback();

4.获得执行sql的对象Statement

statement.executeQuery(sql);//查询操作返回Resultset
statement.execute();//执行任何SQL
statement.executeLargeUpdate();//更新、插入、删除。都是用这个,返回一个受影响的行数

 

5.获得返回的结果集

            resultSet.getObject();//不知道列类型的时候使用
        //知道就是使用对应的类型 resultSet.getInt(); resultSet.getString(); resultSet.getDate();
        。。。。。

遍历

        resultSet.beforeFirst();//把光标移动到最前面
        resultSet.afterLast();//把光标移动到最后面
        resultSet.next();//移动到下一个
        resultSet.previous();//移动到下一行
        resultSet.absolute(row);//移动到指定位置

 

6.释放连接

 很占用内存,用完就关掉

        resultSet.close();
        statement.close();
        connection.close();

 

 

 

 

package com.sql.my.lin.less01;

import javax.security.auth.login.Configuration;
import java.sql.*;

//我的第一个JDBC程序
public class jdbcFirstDome {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.加载驱动
        Class.forName("com.mysql.jdbc.Driver");//固定写法

        //2.用户信息和url
        //useUnicode=true 运用统一编码(支持中文) &characterEncoding=utf8 编码类型为utf-8 &useSSL=true (使用安全的连接)
//        mysql数据库用的是gbk编码,而项目数据库用的是utf-8编码。存取时进行转化
        String url = "jdbc:mysql://localhost:3306/jdbcstudy?useUnicode=true&characterEncoding=utf8&useSSL=true";
        String username="root";
        String password="123456";
        //3.连接成功,数据库对象  Connection 代表数据库
        Connection connection = DriverManager.getConnection(url,username,password);
        // 4.执行SQL的对象  Statement 执行sql对象
        Statement statement= connection.createStatement();

        //5.执行SQL的对象 去 执行SQL,可能存在结果,查看返回结果
        String sql ="SELECT*FROM users";
        ResultSet resultSet = statement.executeQuery(sql);// 返回的结果集
        while(resultSet.next()){
            System.out.println("id="+resultSet.getObject("id"));
            System.out.println("name="+resultSet.getObject("name"));
            System.out.println("pwd="+resultSet.getObject("password"));
            System.out.println("email="+resultSet.getObject("email"));
            System.out.println("birth="+resultSet.getObject("birthday"));
        }


        //6.释放连接
        resultSet.close();
        statement.close();
        connection.close();
    }
}

 

posted on 2022-05-11 19:58  阿霖找BUG  阅读(13)  评论(0编辑  收藏  举报