关于mysql视图知识的简单整理

下文给大家带来MySQL视图知识有关内容,相信大家一定看过类似的文章。我们给大家带来的有何不同呢?一起来看看正文部分吧,相信看完mysql视图知识你一定会有所收获。

目前累计服务客户成百上千,积累了丰富的产品开发及服务经验。以网站设计水平和技术实力,树立企业形象,为客户提供成都网站制作、成都网站设计、网站策划、网页设计、网络营销、VI设计、网站改版、漏洞修补等服务。创新互联建站始终以务实、诚信为根本,不断创新和提高建站品质,通过对领先技术的掌握、对创意设计的研究、对客户形象的视觉传递、对应用系统的结合,为客户提供更好的一站式互联网解决方案,携手广大客户,共同发展进步。

视图概念:

视图是指计算机数据库中的虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。详见 视图 百度百科,其对视图的分类和优点有详细的解释此处不再赘述。

视图创建:

create view  view_name  as  select  列1,列2, ...... from 表名
我们可以把视图理解为一个预先定义好的子查询,比如上面的语句中,如果我们把create 换成select那就相当好理解了。
select * from select col_1,col_2 from tbl_1 as temp
而事实上,视图的工作原理与这种子查询产生的临时表是一样的,只有在用到视图的时候,才会根据原表去动态生成虚拟表。所以视图的数据会根据原表的数据变动而变动。

举例

`create table employee (
id int primary key auto_increment,
name varchar(20) not null,
salary decimal(10,2) not null default 1000
);

create view v_emp as select id,name from employee;`
mysql> desc v_emp;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | NO   |     | 0       |       |
| name  | varchar(20) | NO   |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
可以看到我们创建的视图v_emp,成功的隐藏了员工的工资字段salary

视图管理

删除视图

drop view [if exists] view_name

修改视图

alter view v_view_name as select * from tbl_1

修改视图结构

alter view v_view_name (col_1,col_2...) as select a,b from tbl_1
这样不但可以对外隐藏表名还可以隐藏字段名。

注意

视图对查询操作支持的最好,对增删改有一定的限制,比如多表联合组成的视图,而由单个表创建出的视图在插入数据时,视图中未包含的原表中的字段或者有默认值,或者允许为空。这样才可以保证操作成功。

对于上文关于mysql视图知识,大家觉得是自己想要的吗?如果想要了解更多相关,可以继续关注我们的行业资讯板块。


网站栏目:关于mysql视图知识的简单整理
本文地址:http://ybzwz.com/article/pjjohj.html