目录
一、视图视图又叫虚拟表,从一个表中或多个表中查询出来的结果表,作用和真实表一样,包含一系列的带有行和列的数据。视图中,可以使用SELECT语句查询数据,也可以使用INSERT、UPDATE、DELETE修改记录,视图可以使用户操作方便,并保障了数据库系统安全; 1、视图特点 (1)优点 简单化,数据所见即所得。安全性,只能查询或修改视图中锁能见到的数据。逻辑独立性,可以屏蔽真实表结构变化带来的影响。 (2)缺点 性能相对较差,简单的查询会稍微复杂。修改不方便,当视图的数据时复杂的聚合视图时,无法修改。 2、视图的创建 语法:CREATE VIEW 视图名 AS 查询数据源表的语句; 2.1、创建视图 #创建一个t_empinfo视图,该视图的数据是员工姓名,邮箱,手机号码 CREATE VIEW t_empinfo AS SELECT FIRST_NAME,LAST_NAME,email,PHONE_NUMBER FROM t_employees; 2.2、使用视图 #查询,所见即所得 SELECT * FROM t_empinfo WHERE FIRST_NAME='Steven' AND LAST_NAME='King'; #修改。只能修改得到的 UPDATE t_empinfo SET email = 'Kings' WHERE FIRST_NAME='Steven' AND LAST_NAME='King'; 3、视图的修改 3.1、修改视图_方式一 语法:CREATE OR REPLACE VIEW 视图名 AS 查询源表的语句; (存在就替换数据,不存在就新建) CREATE OR REPLACE VIEW t_empinfo AS SELECT employee_id,FIRST_NAME,LAST_NAME,email,PHONE_NUMBER FROM t_employees; 3.2、修改视图_方式二 ALTER VIEW 视图名 AS查询源表的语句; ALTER VIEW t_empinfo AS SELECT FIRST_NAME,LAST_NAME,email,PHONE_NUMBER FROM t_employees; 4、视图的删除 DROP VIEW 视图名 (DROP VIEW t_empinfo;) 注意:删除视图不会影响原表的数据 5、视图的注意事项 视图不会独立存储数据,原表发生改变,视图的数据也发生改变。没有优化查询的性能 如果视图包含以下结构中的一种,则视图不可更新: (1)聚合函数的结果 (2)GROUP BY分组后的结果 (3)HAVING筛选过滤后的结果 (4)UNION、UNION ALL联合后的结果 |
二、约束1、约束的作用? 在创建表时我们需要给表中的字段增加一些约束,来保证表数据的完整性,有效性 |