SQL视图学习(入门概念理解)

 

这两天网上在看SQL视图,可是一直不知所云,不知道视图究竟是什么样子,
很多文章都是教你  创建更新删除视图的SQL语句,感觉不就是写查询,写sql语句,没有一个直观的认识

今动手敲了出代码实践了下,发现一下就明朗多了~
w3school的解释是
在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。

视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。

注释:数据库的设计和结构不会受到视图中的函数、where 或 join 语句的影响。

看看下面的图片,你对视图概念的理解是不是容易多了?

我在数据库中建了两张表,一张是Student,一张是cls(班级)

   

然后创建视图,代码如下

1 create view v_stu_cls
2 as
3 select a.age,a.name,b.class from student a 
4 left join Cls b
5 on
6 a.stuid=b.id
7 
8 
9 select * from v_stu_cls

我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,

视图中的字段就是来自一个或多个数据库中的真实的表中的字段。

视图包含行和列,就像一个真实的表。

a  ->  student    b->cls

 

注意:  select * from创建视图或出错

create view v_stu_cls
as
select * from student a
left join Cls b
on
a.stuid=b.id

消息 4506,级别 16,状态 1,过程 v_stu_cls,第 3 行
各视图或函数中的列名必须唯一。在视图或函数 'v_stu_cls' 中多次指定了列名 'stuid'。

因为我两个表中都有   'stuid'  将*改为查具体的属性值a.age,a.name,b.class  就ok~

 链接一篇  关于sql视图的文章

http://www.cnblogs.com/wszhe/archive/2007/07/11/813493.html 

 视图
1:什么是视图
2:视图和查询的区别
3:视图的优点
4:如何创建和管理视图
5:如何通过视图修改基本表的数据
6:如何通过视图实现数据的安全性

 

 

如有问题或建议,欢迎留言 ~ 博客地址:http://www.cnblogs.com/zqiang/

 

 

 

 

 

 

posted @ 2012-12-27 16:46  汪集岚  阅读(601)  评论(0编辑  收藏  举报