CREATE [ALGORITHM={UNDEFINED|MERGE|TEMPTABLE}]
VIEW 视图名【{属性清单}】
AS SELECT 语句
[with[CASCADED|LOCAL] CHECK OPTION]
这里的[with[CASCADED|LOCAL] CHECK OPTION]这句话有什么作用?什么意思?一些用法
CASCADED,TEMPTABLE这个又代表什么

解决方案 »

  1.   

    在关于可更新视图的WITH CHECK OPTION子句中,当视图是根据另一个视图定义的时,LOCAL和CASCADED关键字决定了检查测试的范围。LOCAL关键字对CHECK OPTION进行了限制,使其仅作用在定义的视图上,CASCADED会对将进行评估的基表进行检查。如果未给定任一关键字,默认值为CASCADED。请考虑下述表和视图集合的定义:mysql> CREATE TABLE t1 (a INT);
    mysql> CREATE VIEW v1 AS SELECT * FROM t1 WHERE a < 2
        -> WITH CHECK OPTION;
    mysql> CREATE VIEW v2 AS SELECT * FROM v1 WHERE a > 0
        -> WITH LOCAL CHECK OPTION;
    mysql> CREATE VIEW v3 AS SELECT * FROM v1 WHERE a > 0
        -> WITH CASCADED CHECK OPTION;
    这里,视图v2和v3是根据另一视图v1定义的。v2具有LOCAL检查选项,因此,仅会针对v2检查对插入项进行测试。v3具有CASCADED检查选项,因此,不仅会针对它自己的检查对插入项进行测试,也会针对基本视图的检查对插入项进行测试。在下面的语句中,介绍了这些差异:ql> INSERT INTO v2 VALUES (2);
    Query OK, 1 row affected (0.00 sec)
    mysql> INSERT INTO v3 VALUES (2);
    ERROR 1369 (HY000): CHECK OPTION failed 'test.v3'
    视图的可更新性可能会受到系统变量updatable_views_with_limit的值的影响。请参见5.3.3节,“服务器系统变量”。INFORMATION_SCHEMA包含1个VIEWS表,从该表可获取关于视图对象的信息。请参见23.1.15节,“INFORMATION_SCHEMA VIEWS表”。
      

  2.   

     mysql  手册
    http://dev.mysql.com/doc/refman/5.1/zh/index.html