保健励志美文体育育儿作文
投稿投诉
作文动态
热点娱乐
育儿情感
教程科技
体育养生
教案探索
美文旅游
财经日志
励志范文
论文时尚
保健游戏
护肤业界

数据库基础详解存储过程视图游标SQL语句优化以及索引

  写在文章前:本系列文章用于博主自己归纳复习一些基础知识,同时也分享给可能需要的人,因为水平有限,肯定存在诸多不足以及技术性错误,请大佬们及时指正。11、存储过程
  存储过程是事先经过编译并存储在数据库中的一段SQL语句的集合。想要实现相应的功能时,只需要调用这个存储过程就行了(类似于函数,输入具有输出参数)。
  优点:预先编译,而不需要每次运行时编译,提高了数据库执行效率。封装了一系列操作,对于一些数据交互比较多的操作,相比于单独执行SQL语句,可以减少网络通信量。具有可复用性,减少了数据库开发的工作量。安全性高,可以让没有权限的用户通过存储过程间接操作数据库。更易于维护。
  缺点:可移植性差,存储过程将应用程序绑定到了数据库上。开发调试复杂。修改复杂,需要重新编译,有时还需要更新程序中的代码以更新调用。
  DropDeleteTruncate的区别?
  Delete用来删除表的全部或者部分数据,执行delete之后,用户需要提交之后才会执行,会触发表上的DELETE触发器(包含一个OLD的虚拟表,可以只读访问被删除的数据),DELETE之后表结构还在,删除很慢,一行一行地删,因为会记录日志,可以利用日志还原数据;
  Truncate删除表中的所有数据,这个操作不能回滚,也不会触发这个表上的触发器。操作比DELETE快很多(直接把表drop掉,再创建一个新表,删除的数据不能找回)。如果表中有自增(AUTOINCREMENT)列,则重置为1。
  Drop命令从数据库中删除表,所有的数据行,索引和约束都会被删除。不能回滚,不会触发触发器。
  触发器是什么?
  触发器(TRIGGER)是由事件(比如INSERTUPDATEDELETE)来触发运行的操作(不能被直接调用,不能接收参数)。在数据库里以独立的对象存储,用于保证数据完整性(比如可以检验或转换数据)。
  有哪些约束类型?
  约束(Constraint)类型:主键(PrimaryKey)约束唯一约束(Unique)检查约束非空约束外键(ForeignKey)约束12、视图、游标
  视图:
  从数据库的基本表中通过查询选取出来的数据组成的虚拟表(数据库中只存放视图的定义,而不存放视图的数据)。可以对其进行增删改查等操作。视图是对若干张基本表的引用,一张虚表,查询语句执行的结果,不存储具体的数据(基本表数据发生了改变,视图也会跟着改变)。
  可以跟基本表一样,进行增删改查操作(增删改操作有条件限制,一般视图只允许查询操作),对视图的增删改也会影响原表的数据。它就像一个窗口,透过它可以看到数据库中自己感兴趣的数据并且操作它们。好处:通过只给用户访问视图的权限,保证数据的安全性。可以通过对不同的用户定义不同的视图,使机密数据不出现在不应该看到这些数据的用户视图上。例如,Student表涉及全校15个院系学生数据,可以在其上定义15个视图,每个视图只包含一个院系的学生数据,并只允许每个院系的主任查询和修改本原系学生视图。可以通过视图使用户以多种角度看待同一数据,比如不同种类的用户共享一个数据库。(通过权限?)简化复杂的SQL操作(比如原来查的内容是几张几百列的数据表,而我们只关心其中几个数据,那我们可以建立一个视图,直接在视图中查询它们,可以提高很多效率),隐藏数据的复杂性(比如复杂的连接)。
  游标(Cursor):
  用于定位在查询返回的结果集的特定行,以对特定行进行操作。使用游标可以方便地对结果集进行移动遍历,根据需要滚动或对浏览修改任意行中的数据。主要用于交互式应用。它是一段私有的SQL工作区,也就是一段内存区域,用于暂时存放受SQL语句影响的数据,简单来说,就是将受影响的数据暂时放到了一个内存区域的虚表当中,这个虚表就是游标。
  游标是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。即游标用来逐行读取结果集。游标充当指针的作用。尽管游标能遍历结果中的所有行,但他一次只指向一行。
  游标的一个常见用途就是保存查询结果,以便以后使用。游标的结果集是由SELECT语句产生,如果处理过程需要重复使用一个记录集,那么创建一次游标而重复使用若干次,比重复查询数据库要快的多。通俗来说,游标就是能在sql的查询结果中,显示某一行(或某多行)数据,其查询的结果不是数据表,而是已经查询出来的结果集。
  简单来说:游标就是在查询出的结果集中进行选择性操作的工具。13、SQL语句的优化应尽量避免在where子句中使用!、、操作符或对字段进行null值判断,否则将引擎放弃使用索引而进行全表扫描;只返回必要的列:最好不要使用SELECT语句;只返回必要的行:使用LIMIT语句来限制返回的数据;将一个大连接查询分解成对每一个表进行一次单表查询,然后进行关联,这样做的好处有:
  让缓存更高效。对于连接查询,如果其中一个表发生变化,那么整个查询缓存就无法使用。而分解后的多个查询,即使其中一个表发生变化,对其它表的查询缓存依然可以使用。分解成多个单表查询,这些单表查询的缓存结果更可能被其它查询使用到,从而减少冗余的查询。减少锁竞争。14、索引
  索引是对数据库表中一列或多列的值进行排序的一种结构(说明是在列上建立的),使用索引可快速访问数据库表中的特定信息。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。索引的一个主要目的就是加快检索表中数据,亦即能协助信息搜索者尽快的找到符合限制条件的记录ID的辅助数据结构。
  当表中有大量记录时,若要对表进行查询,第一种搜索信息方式是全表搜索,是将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录,这样做会消耗大量数据库系统时间,并造成大量磁盘IO操作。第二种就是在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中的ROWID(相当于页码)快速找到表中对应的记录。
  例如这样一个查询:selectfromtable1whereid10000。如果没有索引,必须遍历整个表,直到ID等于10000的这一行被找到为止。有了索引之后(必须是在ID这一列上建立的索引),即可在索引中查找。由于索引是经过某种算法优化过的,因而查找次数要少的多。可见,索引是用来定位的。(1)聚簇索引对磁盘上存放数据的物理地址重新组织以使这些数据按照指定规则排序的一种索引(数据的物理排列顺序和索引排列顺序一致)。按照数据存放的物理位置为顺序,每张数据表只能创建一个聚簇索引(因为要改变物理存储顺序),与非聚簇索引相比查询数据速度很快,进行修改的速度较慢。主键索引就是一种聚簇索引。InnoDB表要求必须有聚簇索引,默认在主键字段上建立聚簇索引,在没有主键字段的情况下,表的第一个NOTNULL的唯一索引将被建立为聚簇索引,在前两者都没有的情况下,InnoDB将自动生成一个隐式自增id列并在此列上创建聚簇索引。(2)非聚簇索引(也叫二级索引辅助索引)只记录逻辑顺序,并不改变物理顺序。通过索引记录地址访问表中的数据。索引的逻辑顺序和表中行的物理存储顺序不同。Innodb使用的是聚簇索引,MyISam使用的是非聚簇索引。
  从应用上分,主键索引(聚集),唯一索引(聚集非聚集),普通索引,组合索引,单列索引和全文索引(3)唯一索引(UNIQUE):索引列的值必须唯一,允许有空值。(4)主键索引PRIMARYKEY:必须唯一,不允许空值(是一种特殊的唯一索引。表中只有一个,MySQL创建主键时默认为聚集索引,但主键也可以是非聚集索引)。当列添加主键约束时,自动添加主键索引。(5)普通索引:用表中的普通列构建的索引,没有任何限制,用于加速查询。(6)组合索引(复合索引):多列值组成一个索引,专门用于组合搜索,其效率大于索引合并。(7)全文索引:先定义一个词库,然后在文章中查找每个词条(term)出现的频率和位置,把这样的频率和位置信息按照词库的顺序归纳,这样就相当于对文件建立了一个以词库为目录的索引,这样查找某个词的时候就能很快的定位到该词出现的位置。
  索引的优点:大大加快了数据的检索速度。显著减少查询中分组和排序的时间。通过创建唯一性索引,可以保证数据库表中的某一行数据的唯一性。将随机IO变为了顺序IO(BTree索引是有序的,会将相邻的数据都存储在一起)。
  索引的缺点:创建和维护索引组要耗费时间,并且随着数据量的增加所耗费的时间也会增加。索引需要占磁盘空间,除了数据表占数据空间以外,每一个索引还要占一定的物理空间。如果有大量的索引,索引文件可能比数据文件更快达到最大文件尺寸。当对表中的数据进行增加、删除和修改的时候,索引也要动态维护,这样就降低了数据的维护速度。
  索引失效的情况?以(表示任意0个或多个字符)开头的LIKE语句。OR条件中的每个列没有同时使用索引。对于多列索引,必须满足最左匹配原则最左前缀原则(最左优先:多列索引col1、col2和col3,则索引生效的情形包括col1或col1,col2或col1,col2,col3)。如果MySQL估计全表扫描比索引快,则不使用索引(比如非常小的表)。
  哪些地方适合创建索引?某列经常作为最大最小值。经常被查询的字段。经常用作表连接的字段。经常出现在ORDERBYGROUPBYDISDINCT后面的字段。
  创建索引需要注意的:只应建立在小字段上,而不要对大文本或图片建立索引(一页存储的数据越多一次IO操作获取的数据越大效率越高)。建立索引的字段应该非空,在MySQL中,含有空值的列很难进行查询优化,因为它们使得索引、索引的统计信息以及比较运算更加复杂。应该用0、一个特殊的值或者一个空串代替NULL。选择数据密度大(唯一值占总数的百分比很大)的字段作索引。
  作者:投三分的金闪闪
  链接:https:www。cnblogs。comranger30p16137778。html

Starship送货机器人进入大学校园,配送范围4英里美国一家机器人公司研发出了一款送货机器人,已筹集1。02亿美元,据悉该公司研发的送货机器人是电动款,有一个可装下20磅货物的后备箱。在机器人身上有多个嵌入式摄像头,可以用……日食的全过程一次日全食的过程可以包括以下五个时期:初亏、食既、食甚、生光、复圆。初亏由于月亮自西向东绕地球运转,所以日食总是在太阳圆面的西边缘开始的。当月亮的东边缘刚接触到太阳……阿里女员工被性侵醉酒女性被质疑的同时,也在警醒女性自我保护人物线索比较复杂,笔者暂且罗列三个主要人物:周某(阿里受害女员工)、王某(阿里男员工)、张某(华联男员工)。据公布的数据表来看,周某在醉酒之后遭到同公司王某和签约公司张某在不同……身边的活雷锋600字作文在我小的时候,身边就有一个活雷锋,他就是住在我家旁边的王叔叔。有一次,王叔叔到公交车上,找了一个位置坐了下来。过了一会,停站后,一位老奶奶上车了。又过了一会,车上的人越来……华为安全检测团队对其应用市场展开兼职App检测恰逢暑假期间,也是大学生兼职的高峰时段,因为许多学生们涉世不深,防备心不够,进而易于深陷网上兼职陷阱。今天,华为终端云服务器官方发布华为应用市场2021年7月安全隐私汇报……中国芯片真正的龙头股六大芯片企业,未来2年有望翻5倍大家知不知道芯片究竟是什么?它听起来很高科技啊,但除了我们手机电脑,要用到芯片以外,我们日常用的电饭煲热水壶,还有小朋友智能玩具都会用到芯片,那究竟什么是芯片呢?它是一块……因为想看你的微笑作文750字因为你的微笑像阳光一样灿烂,所以想看你的微笑题记在孤儿院里,总会看见她笑得很美很美,那时还很小。二十岁,对生活充满憧憬和向往的高峰时期,那时的她是孤儿院最大的孩子。……qq经典语录我允许你走进我的世界,但不许你在我的世界里走来走去。小编收集了qq经典语录,欢迎阅读。1。我那么喜欢你,你喜欢我一下会死啊。2。虽然你身上喷了古龙水,但我还是能隐约……关于苹果12和12Pro要怎么选?这次,iPhone12和iPhone12Pro真没有太大区别,很多核心参数都一样,比如芯片一样,网络性能一样,续航一样,屏幕一样(除了最大亮度),尺寸一样,抗水性能一样等等。……折叠屏的多种形态,我们真的需要吗?您这个问题简单来说就是问实用性或者是将来会成为主流?给你找点资料您看看伴随着折叠屏手机热度的快速上升,头部厂商已基本入局,但能在竞争中有出色表现的,目前仅有三星以及华为两……在我前行的路上作文700字像蝴蝶一样无所畏惧,向天空飞去,试试又有何妨?mdash;mdash;题记广袤的大地上,我永远也不知道,前方有什么等待着我,也许是荒芜贫瘠的土地,也许是广阔富庶的田……苹果哪个地方产的最好吃,中国范围内?小编走过不少地方,就简单的来说几句吧。原来我们这边都说烟台的苹果不错,也有说陕西那边的好吃。近一些本省的,大部分说三门峡灵宝的比较好。说实话烟台的还可以,但陕西河南……
乡镇干部民情日记五篇乡镇干部民情日记(一)全镇召开联村联户、为民富民行动动员会之后,根据全镇联村联户、为民富民行动的总体安排,我联系北关村一社杨宝明和马加锁两户。通过入户,杨宝明和马加锁两户……关于足球的名人名言汇总1。我脱衣服得到黄牌他们并不生气,他们看到了我的肌肉才感到嫉妒。mdash;mdash;巴神2。比赛后我去找我妈妈,那是最美好的时刻。我告诉她,进球是献给她的。mdash……科学驿站高精度研究揭示流体与海山俯冲对大地震的重要控制作用文羊城晚报全媒体记者李钢通讯员李淑记者从中国科学院南海海洋研究所了解到,由该所边缘海与大洋地质重点实验室王志与林间团队获得高精度地震结构成果,揭示了流体迁移与海山俯……观察石榴的作文(精选10篇)无论是在学校还是在社会中,大家都接触过作文吧,写作文可以锻炼我们的独处习惯,让自己的心静下来,思考自己未来的方向。那么,怎么去写作文呢?下面是小编收集整理的观察石榴的作文(精选……风儿找朋友作文在平日的学习、工作和生活里,大家最不陌生的就是作文了吧,作文是从内部言语向外部言语的过渡,即从经过压缩的简要的、自己能明白的语言,向开展的、具有规范语法结构的、能为他人所理解的……用舒畅造句舒畅一词指心情宽舒欢畅,如何用舒畅造出比较好的句子呢?下面品学网网小编为您带来舒畅的造句,大家可以一起参考学习。舒畅的解释【拼音】shchagrave;ng【解释】……有关描写人物爱好的词语词语是词和语的合称,包括单词、词组及整个词汇。文字组成语句文章的最小组词结构形式。下面是小编收集的有关描写人物爱好的词语,欢迎大家参考。有关描写人物爱好的词语1、嗜血成性……为什么互联网老总纷纷卸任,是钱赚够了,还是干不动了?前不久,京东刚毕业了一帮兄弟;马不停蹄的是,刘强东自己也毕业了。至此继马云、黄峥之后,国内三大电商平台的CEO都陆续卸任了。就连80后字节CEO张一鸣,也在几个月前卸任了。……车企为什么扎堆造手机?奇妙知识季今天我从两个话题出发,为你提供知识服务。一是车企扎堆造手机,二是2022年成中国潮玩出海元年。先来看第一条。你肯定还记得,去年这个时候,有一个很火的词叫互……女孩和男孩那的确是个叛逆少年,才年满17,就把剪刀送进了自己的双眼。他被送进了医院,他的世界彻底变得黑暗了。医院里除了消毒药水刺鼻的气味,别无它闻,嗅不到一丝世界的清新。眼睛被绷带缠绕着……小学2年级200字日记的范文赛车过年啦!过年啦!马路上的白汽车、黑汽车它们在比赛,有的快,有的慢,到了红灯前,白汽车对红汽车说:不要怕,我们可以赢它们的,现在还可以睡一会儿。一觉醒来,一看红汽……我的妈妈初一作文900字我的妈妈慈祥中透着严厉、聪明中透着干练。她长着一双炯炯有神的大眼睛、塌塌的小鼻子、鼻梁两侧散布着零星的小雀斑,还有一个能说会道的嘴巴。在家里,妈妈是个顶梁柱,别看她长得又……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网