• 视图


    视图(View)是一种虚拟存在的表,对于使用视图的用户来说基本透明。视图并不在数据库中实际存在,行和列数据来自定义视图的查询表中使用的表,饼子啊使用视图时动态生成的。

           简单、安全,数据独立

    1、 创建、修改视图

    创建视图需要有 create view的权限,并且对于查询涉及的所有select权限。如果使用create or replace 或者alter修改视图,还需哟啊是图的drop权限。语法:

            CREATE OR REPLAECE VIEW staff_list_view  AS

            SELECT s.staff_id, s.first_name, s.last_name, a.address

            FROM  staff  AS s, address AS a

            WHERE  a.address_id = a. address_id;

    MySQL视图的FROM关键字后卖弄不嗯给你包含子查询。

    WITH (CASCADED|LOCAL) CHECK OPTION决定了是否允许更新数据使记录不再满足视图的条件。

            其中local是只要满足本视图的条件就可以更新;

            cascaded则是必须满足所有针对该视图的条件才更新。

    如果没有明确是cascaded还是local,则默认是cascaded。示例如下:

    CREATE or REPLACE VIEW payment_veiw AS

    SELECT payment_id,amount from payment

    WHERE amount<10 WITH CASCADED CHECK OPTION;

    2、 删除视图

    用户可以一次删除一个或者多个视图,前提是必须有该视图的DROP权限。

    DROP VIEW staff_list;

    3、 查看视图

    从MySQL5.1开始,使用SHOW TABLES命令的时候不仅显示表的名字,同时也显示视图的名字,而不存在单独显示视图的SHOW VIEWS命令。

    USE hello;

    show TABLES

    show views不可使用,可以使用show table status;

    查询某个视图的定义,可以使用show create view;

    魔由心生,有万境纵横,无一道清静,无量寿佛!
  • 相关阅读:
    Autolayout及VFL经验分享
    在iOS7中修改状态栏字体的颜色
    IOS 入门开发之创建标题栏UINavigationBar的使用(二)
    IOS 使用横屏
    NSDictionary转化为实体类对象
    xcode SVN
    IOS model的getter和setter方法
    深入理解Java:注解(Annotation)--注解处理器
    深入理解Java:注解(Annotation)自定义注解入门
    div 的相对定位与绝对定位
  • 原文地址:https://www.cnblogs.com/qihuan/p/4238100.html
Copyright © 2020-2023  润新知