小白系列之通俗易懂的MySQL数据库

MySql数据库

只用于了解基本概念,不涉及深度剖析。

存储过程

存储过程是一组为了完成某种特定功能的sql语句集,是一个可编译的函数,经编译后存储在数据库中,用户通过指定存储过程的名字来调用执行它。
可以用于在不同平台或者应用程序中执行相同的函数或者封装特定功能。

索引

索引是帮助MySQL高效获取数据的数据结构。是一种满足特定查找算法的数据结构。
可以大大加快数据的检索速度和表与表之间的连接速度。但是索引的创建会消耗大量的时间和空间,如果给不适合的列创建了索引不会提高性能。
B-Tree索引类型
普通索引、Unique索引、Primary Key索引

视图

视图是一个虚拟表,和真表一样,但是不会在数据库中存储数据。

数据库优化

1.建立索引:建立索引是数据库优化中成本最低的,见效最快的方案,不需要对代码改动。
2.分库分表分区:按照业务将大量的数据分开存储,可以分流数据库的并发压力,使数据更条理。
3.分布式数据库:实现读写分离和高可用来提高数据库的性能。使用数据库中间件也可以实现优化,如MyCat。
4.合理设置字段属性,尽量不要将字段设置为NULL.
5.优化查询语句,比如在查询时避免使用*号而使用所有列名、尽量使用表的别名等。

sql关键字顺序

书写顺序:select form where group by having order by limit
执行顺序:from where group by having select order by limit

主键与外键的作用

主键:能够保证设置主键的列唯一且非空。
外键:用来保存表与表之间的关系。设置外键的列取值必须匹配主表中已有的值。

事务

是指逻辑上的一组操作,要求这组操作要么都完成,要么都不完成。
四大特性ACDI:
原子性(Atomicity):事务中的一组操作是一个不可分割的整体,要么都成功,要么都不成功。
一致性(Consistency):事务前后无论事务是否成功,数据应该保持一个完整性状态。
隔离性(Ioslation):多个并发事务之间应该互相隔离互不影响。
持久性(Durability):一个事务成功对数据库产生的影响是永久性的。
四大隔离级别:
read uncommitted(读未提交):不能提供隔离,但是效率最高。可能出现脏读、不可重复读、虚读问题。
read committed(读以提交):只能读其他事务已提交的数据。会有不可重复读、虚读问题。
Repeatable read(可重复读):不能读取后续事务已提交的数据。具有虚读问题。
Serializable:基于锁来实现,保证事务完全隔离。

删除数据

delete:可以删除指定记录,也可以删除表中所有记录。删除时将数据一条一条删除。
truncate:只能删除表中所有记录。删除时摧毁表,再重建一张结构相同的表。数据不可以回滚。
drop:删除表的内容和结构,是将整个表删除。

JDBC

数据库驱动,实现代码访问数据库。
实现步骤:
1.注册数据库驱动。2.获取数据库连接。3.获取传输器对象。利用传输器传输sql语句到数据库中执行,获取执行结果。5.遍历结果集获取结果数据。6.关闭资源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值