Java数据库基础知识

作者: singworld 分类: Java 发布时间: 2019-04-16 19:30

关系型数据库三范式

要满足第二范式必须满足第一范式,要满足第三范式必须满足第二范式
第一范式(列数据不可分割)
第二范式(主键)
第三范式(外键)
反三范式(可以设置重复信息)

事务

事务式并发控制对单位,用户定义一系列操作,这些操作要么都做要么都不做,是不可分割的工作单位
四大特征: 原子性 一致性 隔离性 持久性
原子性: 事务内操作不可分割
一致性: 要么都成功,要么都失败,失败对前面操作回滚
隔离性: 一个事务开始后,不能受其他事务干扰
持久性: 表示事务开始了,就不能终止

mysql数据库默认对最大连接数

特定服务器只能支持一定数目同时连接 默认最大连接数100

mysql对分页和oracle的分页

screenshot_upload_tmp.png

mysql使用关键字limit进行分页 limiit offset,size
oracle的分页 使用三层嵌套查询

触发器的使用场景

触发器需要触发条件,当满足什么条件执行什么操作

存储过程

screenshot_upload_tmp.png
screenshot_upload_tmp.png

jdbc调用存储过程

screenshot_upload_tmp.png

加载驱动 获取连接 设置参数 执行 释放连接

jdbc

screenshot_upload_tmp.png

Java database connection java数据库连接

写一个jdbc的程序

贾琏欲执事
加载驱动(com.mysql.jdbc.Driver,oracle.jdbc.driver.OracleDriver)
获取连接(DriverManger.getConnection(url,username,password))
设置参数 Statement PreparedStatement cstmt.setXXX(index,value)
执行 executeQuery executeUpdate
释放连接(从小到大,放在finnaly)

PreparedStatement相比Statement

  1. 预编译速度快
  2. 可读和可维护性好
  3. 安全性 使用预编译不需要对传入数据进行过滤

数据库连接池的作用

  1. 限定数据库连接的个数
  2. 数据库连接不需要每次都创建或销毁,节约资源
  3. 数据库不需要每次都去创建,响应时间更快

Leave a Reply

Your email address will not be published. Required fields are marked *