Java学习DAY-18

目录

JDBC介绍

 JDBC数据库编程的流程

1.加载驱动类,注册驱动

2.创建数据库连接

3.写SQL语句

4.预编译SQL语句

 5.设置SQL语句中?处的值

 

URL字符串格式

MySQL服务端执行流程

Java对数据库进行操作(CRUD语法)

1.增 insert

 2.删 delete

 3.改 update

 4.查 select


JDBC介绍

JDBC(Java Database Connectivity) Java数据库连接技术

JDK中提供与JDBC有关的API都在java.sql包里面

API(Application Programming Interface)

API是三方库中的一系列类和接口中方法的集合

调用API指的就是调用三方库中代码

 JDBC数据库编程的流程

1.加载驱动类,注册驱动

Class.forName("驱动类路径")

2.创建数据库连接

DriverManager.getConnection()方法是用来建立client-server之间的TCP连接的方法

有三个参数        1.url连接地址字符串        2.用户名        3.密码

 

   private static String URL= "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false";     //URL
    private static String USER= "root";       //数据库用户名
    private static String PASSWORD= "root";   //数据库密码
    private static String DRIVER = "com.mysql.jdbc.Driver";
    private Connection conn = null;     //成员变量conn,存储连接对象的指针,可以被任意的测试方法访问到

    //在程序运行过程中,只需要做一次的注册驱动的代码放在静态代码块里面
    static {
        try {
            Class.forName(DRIVER);
            System.out.println("mysql驱动注册成功!");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            System.out.println("mysql驱动注册失败!");
        }
    }

    @Before
    public void before(){
        try {
            //建立数据库连接
            conn = DriverManager.getConnection(URL,USER,PASSWORD);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    @After
    public void after(){
        try {
            //关闭数据库连接
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

3.写SQL语句

用   为占位符代替值

4.预编译SQL语句

 5.设置SQL语句中?处的值

URL字符串格式

url字符串格式:

"jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false"

       协议// IP:端口/数据库名称?参数 名和参数值

1.(必须有)协议部分 "jdbc:mysql://"

        Client与Server之间的通信协议是TCP/IP

        传输的内容的协议是 "jdbc:mysql://"

2.(必须有)IP:端口   "localhost:3306"

        IP是服务端所在的机器的IP地址

        服务端在本地可以写localhost,如果不在本地,必须写对方的ip地址

        端口默认是3306

3.(必须有)数据库名称"test"

        Mysql允许一个数据库服务端创建多个数据仓库

        在建立CS连接的时候必须指定具体连接的仓库名称

        如果指定的仓库名称不存在,连接会失败

4.(可选)连接参数 用?拼接的部分

        每一组参数都是kv结构  k=v,k是参数名,v是参数值

        可以有多组,多组之间用&拼接

MySQL服务端执行流程

Java对数据库进行操作(CRUD语法)

1.增 insert

 

 

 2.删 delete

 delete  truncate    drop 有什么区别?
 delete   删除表中的数据,不会删表结构
 drop     会删除表的结构和所有数据行,及其约束、索引等
 truncate 会清空表中的所有行,但表结构及其约束、索引等保持不变,自增长的主键从头开始
 Delete语法: delete from 表名 where 条件
   没有where条件=删除整张表的数据

 

 3.改 update

Update语法:update 表名 set 字段名=值 [,字段名=值...]  where 条件
单列更新  多列更新
Update可以没有while条件,但是通常情况下都是要指定where条件防止全表更新

 

 4.查 select

  Select查询语法: select  列名列表  from  表名
                            [inner join | left join | right join  表名]
                            [on  连表条件]
                              where  条件
                              group by 分组字段
                              having  分组的筛选条件
                              limit  起始位置,往后的偏移量
                              order by  排序字段
增删改用executeUpdate() 方法执行,返回int,代表受影响的函数
只有查询用executeQuery()方法执行,返回ResultSet,代表查询的结果集

分享两篇详细Mysql执行流程的文章:

呕心沥血整理出来的mysql执行流程,一定要看!_流星007的博客-CSDN博客

深入理解MySQL执行过程及执行顺序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值