美文网首页
2021-07-24 刷题38、39、40题

2021-07-24 刷题38、39、40题

作者: Sunny_Liao | 来源:发表于2021-07-25 10:04 被阅读0次

    SQL38 针对actor表创建视图actor_name_view


    SQL 38 题目

    解答:

    CREATE VIEW actor_name_view AS

    SELECT first_name as first_name_v,last_name as last_name_v FROM actor;

    MySQL 视图(View)是一种虚拟存在的表,同真实表一样,视图也由列和行构成,但视图并不实际存在于数据库中。行和列的数据来自于定义视图的查询中所使用的表,并且还是在使用视图时动态生成的。

    数据库中只存放了视图的定义,并没有存放视图中的数据,这些数据都存放在定义视图查询所引用的真实表中。使用视图查询数据时,数据库会从真实表中取出对应的数据。因此,视图中的数据是依赖于真实表中的数据的。一旦真实表中的数据发生改变,显示在视图中的数据也会发生改变。

    视图可以从原有的表上选取对用户有用的信息,那些对用户没用,或者用户没有权限了解的信息,都可以直接屏蔽掉,作用类似于筛选。这样做既使应用简单化,也保证了系统的安全。

    如有疑惑,请参考以下连接:

    1、MySQL视图是什么?

    2、MySQL创建视图(CREATE VIEW)

    3、MySQL查看视图

    4、MySQL修改视图(ALTER VIEW)

    5、MySQL删除视图(DORP VIEW)

    6、为什么mysql中很少见到使用视图功能?


    SQL39 针对上面的salaries表emp_no字段创建索引idx_emp_no


    SQL 39 题目

    解答,在Mysql中:

    create index idx_emp_no on salaries(emp_no);

    select * from salaries FORCE INDEX (idx_emp_no) where emp_no = 10005;

    解题思路:先创建索引,再创建强制索引查询,(题目这里默认已经创建索引)。索引名一定要加括号,否则错误。

    强制索引:FORCE INDEX(<索引名>);

    SELECT * FROM <表名>  FORCE INDEX (<索引名>)

    疑问:什么是强制索引,强制索引什么时候用,优缺点?


    SQL40 在last_update后面新增加一列名字为create_date


    SQL 40 题目

    解答:

    默认值:DEFUALT的用法,修改表ALTER的用法,添加列ADD的用法

    ALTER TABLE actor add(creat_date datetime not null DEFAULT '2020-10-01 00:00:00')

    相关文章

      网友评论

          本文标题:2021-07-24 刷题38、39、40题

          本文链接:https://www.haomeiwen.com/subject/vkpmmltx.html