• 数据库的一些操作


    视图与索引

    索引

    索引是一种与表有关的结构,它的作用相当于书的目录,可以根据目录中的页码快速找到所需的内容。当表中有大量记录时,若要对表进行查询,没有索引的情况下是全表搜索:将所有记录取出,和查询条件进行对比,然后返回满足条件的记录。这样做会消耗大量数据库系统时间,并造成大量磁盘I/O操作(取数据需要读磁盘的)。而如果在表中已建立索引,在索引中找到符合查询条件的索引值,通过索引值就可以快速找到表中的数据,可以大大加快查询速度。 对一张表中的某个列建立索引,有一下两种语句格式: `ALTER TABLE 表名 ADD INDEX 索引名 (列名);` `CREATE INDEX 索引名 ON 表名 (列名);` 索引的效果是加快查询速度,当表中数据不够多的时候是感受不出它的效果的。这里我们使用命令SHOW INDEX FROM 表名;查看刚才心建的索引: 在使用SELECT语句查询的时候,语句中WHERE里面的条件,会自动判断有没有可用的索引。

    视图

    视图是从一个或多个页表中导出来的表,是一种虚拟存在的表。它就像一个窗口,通过这个窗口可用看到系统专门提供的数据,这样,用户可用不用看到整个数据库中的数据,而只关心对自己有用的数据。

    注意理解视图是虚拟的表:
    1.数据库中只存放了视图的定义,而没有存放视图中的数据,这些数据存放在原来的表中;
    2.使用视图查询数据时,数据库系统会从原来的表中取出对应的数据;
    3.视图中的数据依赖于原来表中的数据,一旦表中数据发生变化,显示在视图中的数据也会发生变化;
    4.在使用视图的时候,可以把它当作一张表.

    创建视图的语句格式为:
    CREATE VIEW 视图名(列a,列吧b,列c)AS SELECT 列1,列2,列3 FROM 表名;
    可见创建视图的语句,后半句是一个SELECT查询语句,所以视图也可以建立在多张表上,只需在SELECT语句中使用子查询或链接查询。

  • 相关阅读:
    Hibernate unsaved-value 属性
    ResulsetHandler九个实现类
    Introspector内省和反射的区别.
    数据库表、字段命名规范
    Linux 时间同步 ntpdate
    http升级https改造方案
    org.apache.tomcat.util.net.NioEndpoint,打开的文件过多
    kafka常用命令
    elasticsearch.yml 配置说明
    getDate() 各种时间格式
  • 原文地址:https://www.cnblogs.com/loveyan/p/4637158.html
Copyright © 2020-2023  润新知