数据库的基础语法

数据库操作(DML)

插入数据语法:insert into t_table (字段名),vlaues(值);

更新数据语法:update t_table set 字段名=值 where 字段名=值;

删除数据语法:delete from t_table where 字段名=值;

数据库操作(DQL)

查询数据语法:select * from t_table

sql事务

保证了数据的原子性,一致性,隔离性,持久性。

并发事务处理带来的问题。

1、跟新丢失,事务a和事务b同时操作,事务a覆盖了事务b的操作,导致事务b的数据丢失了

2、脏读,事务a在执行更新业务,但是没有提交,事务b读取了事务a的数据,如果事务a进行了回滚,那么事务b的数据无效。

3、不可重读,事务a读取了数据以后,事务b修改了a读取的数据,事务a再次读取数据时数据已经发生改变,不能再次读取

4、幻读,事务a在同一事务的不同时间内,读取同一数据,得到的值不一样

sql事务隔离级别

数据库的三大范式

第一范式,设计表时,应尽量保证表中的属性不可再次分割

第二范式,非主属性必须完全依赖主属性

第三范式,属性不依赖于其他非主属性。

er图:实体关联图

实体:长方体

属性:椭圆

关系:菱形

外键约束与级联操作

外键是用来建立两个表的关联关系的字段

什么是外键约束及外键约束的操作 

在执行操作的的时候自动对关联表做出相应的约束,比如删除时会有约束,不能删除,如果想删除,可以设置级联删除 ,no action ,restrict,不做任何操作,cascade可以做出同步操作,setnull在操作时设置为空。

constraint fk Foreign key id  references student id

行锁 事务a在执行某一行操作的时候没有提交事务会对这一行进行上锁

表锁 事务a在执行某一列操作的时候没有提交事务会对整张表进行上锁

乐观锁 用户自己执行的一种锁机制,认为外界不会对数据进行修改,

悲观锁 认为外界会修改修改数据,数据库会对整张表进行上锁,其它事务无法进行修改。

索引

索引的本质是一张表 分为主键索引,唯一值索引,普通索引,全文索引。

索引的原理是b+树

索引的注意事项,索引能够增加查询的速度,但会影响cud的速度

一张表不要超过三个索引

触发器

触发器监视某种情况,并触发某种操作

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值