数据库(1)

数据库分类

关系型数据库:mysql ,oracle,sqlserver

非关系型数据库:redis,memcatch,mogodb,hadoop

关系型数据库三范式:

第一范式:列数据的不可分割性,

二:主键

三:外键

反三范式:有的时候为了效率可以设置重复的或可推导的值

订单(总价)与订单项(单价)

事务的四大特征:

事务:一个操作,要么都做,要么都不做

原子性:事务内操作不可份割,要么都成功,要么都失败。

一致性:要么都成功,要么都失败,如果失败,要回滚

隔离性:一个事务开始了,不能受其他事务干扰

持久性; 事务开始了,就不能终止。

mysql的最大连接数?

mysql数据库只能支撑在一定时间连接的最大数目,默认为100

mysql的分页

在大多数情况,数据不能完全显示

limit  索引 ,大小

jdbc的调用存储过程

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

jdbc 是java定义的一个接口

数据库厂商如果想对java支持,就必须实现jdbc接口

PreparedStatement相比statement的好处

1.   PreparedStatement是预编译的 ,比statement 速度快

2.   PreparedStatement的可读性和可维护性更好

3.安全性更高(防止sql注入攻击)

数据库优化

1. 定位慢查询,优化sql语句

2. 创建索引

3. 分表:某些表字段很少使用时,可以采用水平分表或垂直分表

4. 读写分离

5. 缓存:利用redis来进行缓存

myISam 和innodb 的主要区别??

1.  事务安全    myISam 不支持事务, innodb 支持事务

2. 查询和增加速度,myIsam 查找和增加的速度快

3.全文索引: myisam支持全文索引,inndb 不支持

4.锁  myisam 支持表锁,inndb支持行锁。

5.外键 myisam 不支持外键 , inndb 支持外键

选择合适的索引?

普通索引:

唯一索引

主键索引

全文索引

原文地址:https://www.cnblogs.com/mm163/p/11089603.html