mysql 视图

6.5 mysql 视图
6.5.1 创建视图
   create view viewName as select * from srcTableName
# 实验一:给student表创建视图
    mysql> create view stu_view as select * from student;
    Query OK, 0 rows affected (0.01 sec)

    mysql> show tables;
    +--------------------+
    | Tables_in_shanTest |
    +--------------------+
    | employee           |
    | employee1          |
    | stu_view           |
    | student            |
    | student1           |
    | student2           |
    | student3           |
    | user1              |
    +--------------------+
    8 rows in set (0.00 sec)

    mysql> select * from stu_view;
    +------+------+--------+
    | id   | name | sex    |
    +------+------+--------+
    |    1 | aa   | female |
    |    2 | bb   | male   |
    | NULL | aa   | female |
    | NULL | aa   | male   |
    +------+------+--------+
    4 rows in set (0.00 sec)
# 实验二:给student表中的指定列创建视图
    mysql> create view stu_view_1 as select id,sex from student where id='2';
    Query OK, 0 rows affected (0.00 sec)

    mysql> show tables;
    +--------------------+
    | Tables_in_shanTest |
    +--------------------+
    | employee           |
    | employee1          |
    | stu_view           |
    | stu_view_1         |
    | student            |
    | student1           |
    | student2           |
    | student3           |
    | user1              |
    +--------------------+
    9 rows in set (0.00 sec)

    mysql> select * from stu_view_1;
    +------+------+
    | id   | sex  |
    +------+------+
    |    2 | male |
    +------+------+
    1 row in set (0.00 sec)
# 实验三:删除student表中的数据,查看视图stu_view的变化
    mysql> select * from student;
    +------+------+--------+
    | id   | name | sex    |
    +------+------+--------+
    |    1 | aa   | female |
    |    2 | bb   | male   |
    | NULL | aa   | female |
    | NULL | aa   | male   |
    +------+------+--------+
    4 rows in set (0.00 sec)

    mysql> delete from student where id is null;
    Query OK, 2 rows affected (0.00 sec)

    mysql> select * from student;
    +------+------+--------+
    | id   | name | sex    |
    +------+------+--------+
    |    1 | aa   | female |
    |    2 | bb   | male   |
    +------+------+--------+
    2 rows in set (0.00 sec)

    mysql> select * from stu_view;
    +------+------+--------+
    | id   | name | sex    |
    +------+------+--------+
    |    1 | aa   | female |
    |    2 | bb   | male   |
    +------+------+--------+
    2 rows in set (0.00 sec)

结论:视图中数据可以根据原表中数据的变化而变化,当原表被删除的时候依赖该表的视图就会出错。

6.5.2 删除视图
    drop view viewName
# 实验一:删除视图stu_view_1
        mysql> drop view stu_view_1;
        Query OK, 0 rows affected (0.00 sec)

        mysql> show tables;
        +--------------------+
        | Tables_in_shanTest |
        +--------------------+
        | employee           |
        | employee1          |
        | stu_view           |
        | student            |
        | student1           |
        | student2           |
        | student3           |
        | user1              |
        +--------------------+
        8 rows in set (0.00 sec)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值