在sql中select语句的作用是什么?SQL数据库中的一条select到底执行了什么过程
对于数据库方面的面经,总会有意无意被问到,比如,事务啊,锁啊,索引啊等等。
这些在网上都能罗列出一大堆,理解理解相关的概念,我想都能答出一二。
恰好某天,有个靓仔胸有成竹去面试了一家心意的东家,似乎脑海里已经浮现出了“答教十条”。
后面迎来了当头一棒道:说一下,一条select语句大概执行了哪些过程?
靓仔:???啊这......
那么,一条查询语句,到底执行了哪些过程?接下来就详细讲讲。
1.当计算机执行一条SELECT语句时,就会先启动DBMS(数据库管理系统)。
2.DBMS首先对该语法进行检查,然后从数据字典DD中找出该应用程序对应的外模式(相当于关系数据库视图),检查是否存在所要的查询关系,并进行权限检查,即检查该操作是否在合法的授权范围内。如果有问题,则返回信息。
3.在决定执行该语句后,DBMS从DD(数据字典)中调出相应的模式描述,并从外模式映像到模式,从而确定所需要的逻辑数据。
4.DBMS从DD调出相应的内模式描述,并从模式映像到内模式,从而确定应读入的物理数据和具体地址信息。在查询过程中,DBMS的查询处理程序将根据DD中的信息进行查询和优化,并把查询命令转换成遗******元记录(元组)的读出操作序列。随后DBMS执行读出操作序列。
5.DBMS在查看内模式决定从哪个文件、用什么方式读取哪个物理记录之后,向操作系统发出从指定地址读取物理记录的命令,同时在系统缓冲区记下运行记录。相当于物理记录全部读完时,查询语句执行完毕。
6.OS(操作系统)执行读出的命令,按指定地址从数据库中把记录读入OS的系统缓冲区,随后读入数据库(DB)的系统缓冲区。
7.DBMS根据查询命令和数据字典的内容把系统缓冲区中的记录转换成应用程序所要求的记录格式。
8.DBMS把数据记录从系统缓冲区传送到应用程序的用户工作区。
9.DBMS 把执行成功与否的状态信息返回给应用程序。
10.DBMS 把系统缓冲区的运行记录记入运行日志,以备以后查阅或发生意外时用于系统恢复。
11. DBMS 在系统缓冲区查找下一记录,若找到就转到第7点,否则转到第5点。
12.查询语句执行完毕,应用与程序做后续处理。
原文:https://juejin.cn/post/7162140385606074381
- 01-07全屏背景图街景 街景背景图,超级舒适
- 05-30草原上升起不落的太阳c调伴奏视频,魏松-草原上升起不落的太阳
- 03-03怎么批量删除文件名中重复的部分?如何批量删除文件名中相同文字
- 06-21石头诗原创现代诗,原创诗歌:倔强的石头
- 01-12毕业生的幸福原来如此简单:毕业季,在二中的那些年
- 04-07一眼分辨真假青金石方法很简单:青金石知识分享长文
- 01-30猫咪护食有哪些 行为特征?猫咪护食该怎么办原因简单
- 06-19小故事儿童简短小猴子 益智小故事一小猴子的智慧冒险
- 04-05二氧化碳对金属有腐蚀性吗?为什么水中的二氧化碳会对碳钢产生腐蚀
- 02-04考研英语必备词汇多少个:这么重要的词汇你记住了吗
- 10-27巴赫无伴奏组曲 如果没有卡萨尔斯的发现
- 12-01苹果手机nfc支持哪些功能?苹果手机NFC功能介绍
- 03-08精油的萃取压榨法:精油如何萃取
- 12-30做期货为什么不成功?为什么做期货难
- 04-18美好生活总是需要自己来记录:美好生活,源于讲究不将就
- 05-03任天堂switch游戏机上要注意什么?小心温差导致Switch游戏机结露
热门
推荐
- 1勤俭节约周记481
- 2社区庆端午活动方案450
- 3初中数学教师自我介绍499
- 4精选给恋人的情人节祝福语微信锦集58条404
- 5大学生毕业的自我鉴定范文308
- 6益生菌什么时候吃最好,乳酸菌是益生菌吗440
- 7春江花月夜读后感200字读春江花月夜有感217
- 8注册成立一般公司的流程是怎样的233