对比索引、视图、游标、存储过程和触发器

对比索引、视图、游标、存储过程和触发器1、索引 1-1、索引的概述 我们把一个表中的一列或者多列和列中元素所在表中记录的物理地址组合成一个新的表。这个表的记录大致为列的内容和该列所在记录的物理地址。 1-2、索引的优缺点 优点:大大加快了

对比索引、视图、游标、存储过程和触发器

1、索引 
      1-1、索引的概述 
               我们把一个表中的一列或者多列和列中元素所在表中记录的物理地址组合成一个新的表。这个表的记录大致为列的内容和该列所在记录的物理地址。 
      1-2、索引的优缺点   
               优点:大大加快了对源表的执行速度,我们对索引表的检索就可以实现对源表的检索。到底快在哪里?举例说明:我们通过T-SQL语句查询源表中的一条记录,在没有索引表的时候,计算机首先把整个源表从外存加载到内存,然后再一一匹配,从外存加载到内存耗时是非常的大;在有索引的时候,计算机首先加载索引表,然后匹配,找到后,取出它的物理地址,此时,再从外存中加载大表中的该记录,这种方法,人看的时候麻烦,但计算机可能就不那么认为(具体还要看源表记录的长度和数量) 
               缺点:索引表需要占物理空间;当对源表操作时,也要维护索引表,是维护的任务加重了。
 
2、视图 
       2-1、视图的概述
                视图由一张表或多张表的列数据组成的一张虚拟表,所谓虚拟表,就是该整体表在硬盘上不存在,其实,我们创建一个视图,实际上是创建了一个经过包装了的Select语句,在这里我们称为A,创建视图,就是我们往硬盘存放了A,我们调用该视图的时候,系统就会自动执行一遍A,然后,我们看见的就是一张表了。(这张表数据的改变时,基表变不变,那要看具体情况了,可以说明的是,我们可以通过虚拟表达到改变基表数据的目的) 
      2-2、视图的优缺点 
               优点:视图可以限制我们对表中一些数据的访问,增加了数据的安全性;减少了重复写入T-SQL语句。 
               缺点:复杂的视图一般不能修改内容;能修改的视图,也需要经过变化使该操作应用到基表中。
  www.2cto.com  
3、游标 
      3-1、游标的概述
               数据库管理系统为了对数据的管理更加高效,采用的是整块数据进行管理操作,这个管理方式对于数据库管理系统来说是非常的好的,但是,这种管理方式对于应用程序来说不好,因为我应用程序对于操作管理的数据是很少的,而且针对性也强,根据应用程序的这些特点,我们为了使应用程序更加的高效,我们创建了游标,游标就是为了完成对数据集中的数据经行更小单位的操作,也就是对记录集中的数据的操作是按一条一条记录经行的,所以呢,游标是由结果集(可以是零条、一条或由相关的选择语句检索出的多条记录)和结果集中指向特定记录的游标位置组成。游标是由管理多数据到少数据,操作不确定数据到确定性数据,对数据顶对性弱到针对性强的一种产物。 
     3-2、游标的优缺点
              优点:应用程序可以应用游标对数据集经行指定行的操作。
              缺点:使用不当会使运行效率更低。
 
4、存储过程 
           4-1、存储过程的概述 
                    存储过程就是一个SQL语句集,当然,这个语句集可以完成特定的功能,存储过程建立后,就先会经过编译,然后,存放在硬盘上。
           4-2、存储过程的优缺点   
                    优点:一次编译,多次执行,使用户不用多次的书写相同的SQL语句了,同时这些SQL语句也不用一直先编译在执行了,节省了时间。
                    缺点:简单应用换可以,复杂的时候应用,就是变的复杂。
 
5、触发器 
      5-1、触发器的概述 
               触发器就是特殊的存储过程,特殊在,触发器不需要通过人为(例:在程序中调用)的操作来启动它,触发器的启动是由事件(删除、更新等)的执行来自动启动的。
      5-2、触发器的优缺点 
              优点:是数据的安全性更强,例:通过触发器可以取消删除数据的操作。
              缺点:维护数据的时候变得有些复杂。
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8694.html

(0)
上一篇 2023-02-23
下一篇 2023-02-23

相关推荐

  • SqlServer存储过程应用二:分页查询数据并动态拼接where条件 – 熊泽

    SqlServer存储过程应用二:分页查询数据并动态拼接where条件 – 熊泽前言 开发中查询功能是贯穿全文的,我们来盘一盘使用存储过程分页查询,并且支持动态拼接where条件。 划重点:支持动态拼接where条件 对存储过程的使用有疑问的同学去【SqlServer存储过程的创

    2023-04-13
    152
  • 如何退出conda环境?

    如何退出conda环境?Conda是一个流行的包管理器和环境管理系统,用于安装和管理软件包以及创建和维护多个环境。在使用Conda时,需要从一个环境(例如base环境)进入到其他环境,也需要从其他环境退出。然而,有关如何退出Conda环境的正确方法还在很多人的使用中存在疑惑,在本文中我们将详细介绍如何正确地退出Conda环境。

    2024-09-21
    15
  • 存储引擎简介_java存储引擎

    存储引擎简介_java存储引擎一.存储引擎简介 1、文件系统: 1.1 操作系统组织和存取数据的一种机制。 1.2 文件系统是一种软件。 2、文件系统类型:ext2 3 4 ,xfs 数据(centos6 ext 4 centos

    2022-12-18
    145
  • 北京哪里可以开五金材料发票-中国-新闻网「建议收藏」

    北京哪里可以开五金材料发票-中国-新闻网「建议收藏」北京哪里可以开五金材料发票【152 * 9б 28 * 21 б9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridge,是Andro…

    2023-02-01
    151
  • 数据库分库分表和要注意的问题「终于解决」

    数据库分库分表和要注意的问题「终于解决」一台服务器的资源例如CPU、内存、IO、磁盘等是有限的,所以这时候分库分表。 分库 分库讲白了就是比如现在你有一个数据库服务器,数据库中有两张表分别是用户表和订单表。 如果要分库的话现在你需要买两台…

    2023-02-24
    143
  • Python相对路径的使用

    Python相对路径的使用在日常的Python编程中,文件操作是必不可少的环节。而文件的路径则是文件操作的一个重要方面。本文将介绍Python中相对路径的使用方法,让你更加便捷地操作文件。

    2024-05-05
    65
  • sqlite3 学习笔记

    sqlite3 学习笔记#!/usr/bin/env python3 # -*- coding: utf-8 -*- # @descrip : operate SqLite intrface # @Time : 2020/…

    2023-02-21
    168
  • Python调试原理及实践

    Python调试原理及实践Python作为一门高级编程语言,在开发过程中难免会出现错误,在这种情况下需要使用调试工具帮助我们找到出现问题的地方。调试是一项非常重要的技能,对于Python开发来说更是必不可少的成分。本文将介绍Python调试的原理及实践,并向读者展示如何使用Python开发调试工具。

    2024-07-04
    47

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注