摘要: 数据库事务的四大属性 原子性,Atomicity, 意味着我们对数据库的一系列的操作,要么都是成功,要么都是失败,不可能 出现部分成功或者部分失败的情况。 思考:都成功很容易保证。在前面的操作已经成功了的情况下,后面的操作失败了,怎么保证全部 原子性,在 InnoDB 里面是通过 undo log 阅读全文
posted @ 2019-12-02 21:35 愤青程序猿 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 抽象类: 抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。因为抽象类中含有无具体实现的方法,所以不能用抽象类创建对象。抽象类就是为了继承而存在的,如果你定义了一个抽象类,却不去继承它,那么等于白白创建了 阅读全文
posted @ 2019-12-02 19:00 愤青程序猿 阅读(795) 评论(0) 推荐(0) 编辑
摘要: 一、表锁差异 MyISAM: myisam只支持表级锁,用户在操作myisam表时,select,update,delete,insert语句都会给表自动加锁,如果加锁以后的表满足insert并发的情况下,可以在表的尾部插入新的数据。也可以通过lock table命令来锁表,这样操作主要是可以模仿事 阅读全文
posted @ 2019-12-02 16:39 愤青程序猿 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 数据库的三大范式 1.范式:所有字段值都是不可分解的原子值 满足第一范式不一定满足第二范式 2.范式:也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。 满足第二范式不一定满足第三范式 3.范式:每一列数据都和主键直接相关,而不能间接相关。 所以第一范式,第 阅读全文
posted @ 2019-12-02 16:21 愤青程序猿 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 1、比如 select id from t where num is null 这样的 sql 也是可以的。但是最好不要给数据库留 NULL,尽可能的使用 NOT NULL 填充数据库。不要以为 NULL 不需要空间,比如:char(100) 型,在字段建立时,空间就固定了,不管是否插入值(NULL 阅读全文
posted @ 2019-12-02 11:09 愤青程序猿 阅读(169) 评论(0) 推荐(0) 编辑