2019-11-12

1.外键foreign key
顺序要求:
删数据,先删子表
添数据,先加父表
创建表,先创父表
删除表。先删子表

2.foreign key语法:
例如:foreign key(no)references t_class(cno)
其中no表示当前表字段, references代表引用的意思,cno表示父表字段

3.外键值可以为null
foreign key 需要注意的是:被引用字段至少具有unique约束

4.存储引擎(engine)
MYISAM:(1).不支持事务
(2).三个文件组成一张表 frm(存储格式)MYD(存储数据)MYI(索引文件)
优点:可被压缩,节省存储空间,可转为只读表,提高检索效率

            InnoDB(默认)
                   优点:支持事务,行级锁等,安全。服务器崩了会自动恢复
                    缺点:不能被压缩

              MEMORY    
                      优点:查询速度最快
                      缺点:不支持事务,数据易丢失

5.和事务transaction相关的语句只有:DML语句insert delete update(多条联合)
transaction存在是为了保证数据完整,安全

6.start transaction 开启事务,(开始)
执行insert(执行记录一下历史操作,不会修改硬盘数据)
执行update(如上)
执行delete(如上)
提交(commit 提交成功 文件改变,且清空历史记录)回滚(rollback 清空历史记录)事务(结束)

7.transaction事务的4大特性
1.原子性:transaction为最小工作单元,不可再分
2.一致性:多条DML语句同时成功或失败
3.隔离性:transaction A 与 transaction B之间有隔离
4.持久性:数据库必须要保证有一条数据永久地存放在磁盘中,transaction事务才算结束

8.事务的隔离性级别
一:读未提交(read uncommitted)
对方事务还未提交,当前事务可读取到对方事务为提交的数据(Dirty Read脏读现象)
二:读已提交(read committed)
对方提交后,我方事务才可读取到数据(解决了Dirty Read,但不可重复读)
三:可重复读:(repeatable read)
解决了:不可重复读问题。存在问题:读取到的数据是幻象
四:序列化/串行化读
解决所有问题但是效率低,事务需要排队

9.mysql中的事务时支持自动提交的(start transaction关闭自动提交)

10.设置事务的全局隔离级别
set global transaction isolation level (后面跟级别)read uncommitted (读未提交)
查看级别
select @@global.tx_isolation;(5.0)
.transaction_isolation(8.0)

11.啥时候添加索引?
(1).数据量庞大
(2).该字段很少的DML操作(因为字段进行修改操作,索引也需要维护)
(3).该字段经常出现在where子句中

12.主键(primary key)和具有unique约束的字段会自动添加索引(根据primary key查询效率较高)

13.select ename, sal from emp where ename='smith'
当ename字段无索引的时候,会进行全表扫描。加索引的时候,语句会根据索引扫描,快速定位。

14.查看sql的执行计划
explain (后面跟查询语句 select ename,sal from emp where sal=5000)

15.创建索引的语法
create index sal_index on emp(sal) 在emp表的sal字段加sal_index索引

16.删除索引的语法
drop index 索引名 on 表名; (mysql中)

17.索引的实现原理
通过B Tree 缩小扫描范围,底层索引进行了排序,分区,索引会携带数据在表中的物理地址,最终通过索引检索到
数据后,获取到关联的物理地址,通过物理地址定位表中的数据,效率最高。

18.索引什么时候失效?
当模糊查询的时候,第一个通配符使用的是%

19.索引分类
单一索引:单字段加索引
复合索引:多字段加索引
主键:primary key自动加索引
唯一:unique约束会自动加索引

20.view视图就是同一张表的数据,通过不同角度去看待

21.创建视图(只有dql才可以用视图对象创建)
create view myView as select empno,ename from emp;
删除
drop view myView;

22.对视图进行增删改查,会影响到原表数据

23.视图(view)可隐藏表的实现细节,适合保密级别高的系统。数据库只对外提供相关的视图

24.设计三范式(不会出现数据冗余)空间浪费
(1)第一范式:任何一张表都应该有主键,且每个字段原子性不可再分

  (2)第二范式:建立在第一范式的基础上,且所有的非主键字段完全依赖主键,不能产生部分依赖。(多对多,三张表,关系表两个外键)

   (3)第三范式:建立在第二范式的基础上,所有非主键字段直接依赖主键,不可产生传递依赖。(一对多,两张表,多的表加外键)

25.实际开发中,为了满足客户需求,会拿冗余换执行速度

26.一对一有两种设计方案:外键唯一(foreign key),主键共享(primary key)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,458评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,454评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,171评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,062评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,440评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,661评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,906评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,609评论 0 200
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,379评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,600评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,085评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,409评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,072评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,088评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,860评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,704评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,608评论 2 270

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 4,867评论 0 9
  • Java String 面试题以及答案 1.判定定义为String类型的st1和st2是否相等,为什么 packa...
    攻城狮阿犯阅读 543评论 0 1
  • 服务器是一种比普通计算机运行速度更快的计算机。、负载更高、价格更昂贵。该服务器在网络中为其他客户端(例如PC、智能...
    _卓璘阅读 504评论 0 0
  • 来自中国武汉的出租车GPS数据实证验证网络学习; 非线性+网络:2020年展望; 生成含有间接边的动态接触图; 协...
    ComplexLY阅读 872评论 0 51
  • 黎明十分,我从梦中醒来,听着窗外。 此刻,大地沉浸在一片静谧的黑暗中,希望在蔓延,雨在淅淅沥沥地下个不停,鸟而开始...
    昨日的纪念阅读 121评论 0 1