SQL38 针对actor表创建视图actor_name_view

本文最后更新于:2022年4月9日 中午


题目描述

针对actor表创建视图actor_name_view,只包含first_name以及last_name两列,并对这两列重新命名,first_name为first_name_v,last_name修改为last_name_v:

1
2
3
4
5
CREATE TABLE IF NOT EXISTS actor (
actor_id smallint(5) NOT NULL PRIMARY KEY,
first_name varchar(45) NOT NULL,
last_name varchar(45) NOT NULL,
last_update timestamp NOT NULL DEFAULT (datetime('now','localtime')))

输入描述

输出描述

题解

1
2
3
4
5
create view actor_name_view as
select first_name as first_name_v, last_name as last_name_v from actor;

create view actor_name_view (first_name_v,last_name_v) as
select first_name, last_name from actor;

备注:

  1. 视图是虚拟表,用来提供数据支持的,可以使用表管理(结构管理)

    1
    2
    3
    4
    5
    # 创建视图
    create view 视图名字 as select指令;

    # 访问视图:一般都是查询
    select */字段名 from 视图名字;
  2. 视图数据操作一般情况下是不允许的,通常之所以对外提供视图就提供数据的只读操作;

  3. 视图数据操作与视图的基表数量和字段有关

    • 多基表视图不允许任何写操作
    • 单基表视图允许更新和删除、根据情况允许新增(视图包含基表中所有不允许为空字段)