手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Mysql>列表

MySQL5新特点(视图)

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
视图,就是把数据库中单个表或多个用JOIN连接起来的表中的数据,通过提取并生成到一个新窗口的方式提供给用户察看的一种功能。数据库研发和管理人员广泛使用视图功能主要基于如下两个原因:

对数据库安全的管理

-视图能够通过隐藏元表中的某些敏感信息列来帮助保护敏感数据,这些元表能够是单个实际表,或 者是JOIN表,通过限制从这些元表中能够返回的实际的数据行,或解密已保存在磁盘上的加密数据来实现对数据库的安全 管理。

优化数据库的性能

-视图能够用来帮助调优数据库性能,就是通过预定义一个微调过的JOIN条件建立的多表视图,或通过限制只允许少量数据从巨大的数据库表中返回来实现。

MySQL5所支持的视图功能在一定条件下能够实现使 用视图来执行某些UPDATE语句,使那些数据能够得到更新,下面举例说明:
mysql> select * from customer;

 ------------- --------------------- -------------------- ------------------ 

| customer_id | customer_first_name | customer_last_name | customer_ssn     |

 ------------- --------------------- -------------------- ------------------ 

|           1 | fred                | smith              | ☼Q,U¶  ¢ƒ╠▒4╨☺ö| 

 ------------- --------------------- -------------------- ------------------  

1 row in set (0.03 sec)



mysql> create view v_customer as t_name,

    -> select customer_id, customer_first_name, customer_last_name

    -> aes_decrypt(cusomer_ssn,'password') as customer_ssn

    -> from customer; 

Query OK, 0 rows affected (0.03 sec)



mysql> select * from v_customer;

 ------------- --------------------- -------------------- -------------- 

| customer_id | customer_first_name | customer_last_name | customer_ssn |

 ------------- --------------------- -------------------- -------------- 

|           1 | fred                | smith              | 456097234    |

 ------------- --------------------- -------------------- -------------- 

从上例能够看到,通过使用解密函数aes_decrypt()得到指定的customer_ssn的值并利用创建视图的方式把该值显示出来,而且 并未破环原始表对其他customer_ssn值在磁盘或数据库的加密式存放。这样管理人员就确保敏感信息不会被随意破坏

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!