2015.7.31晚上
视图可以将多个表中的列联接起来,使它们看起来象一个表,但这个表却不会占用你的存储空间。
视图还可以用作跨表及跨域,在两台数据库之间做桥梁链接的作用,毕竟完全开启数据库的权限是不安全的,如果只开放给另一台数据库中的用户创建视图的权限,就能避免此类问题。用户也能方便的查询另一台数据库的数据。非常方便和安全
创建普通视图
创建一个名称为View_Class的简单视图,该视图由t_table1和t_table2两个基础表组成,用于查询所有学生的成绩信息,其具体实现的代码如下:
create view View_Class as select dbo.t_table1.id,dbo.t_table1.name,dbo.t_table2.id,dbo.t_table2.name from dbo.t_table1,dbo.t_table2 where dbo.t_table1.id = dbo.t_table2.id go
创建加密视图
创建一个名称为View_Class_psd的加密视图,在第一行的create的下面加上with encryption,如以下代码:
create view View_Class with encryption as select dbo.t_table1.id,dbo.t_table1.name,dbo.t_table2.id,dbo.t_table2.name from dbo.t_table1,dbo.t_table2 where dbo.t_table1.id = dbo.t_table2.id go
修改视图
我理解的修改视图实际上就是把create改成alter就可以了,然后下面加上修改后视图的内容。如下代码为将原table1中的name改为了address
alter view View_Class as select dbo.t_table1.id,dbo.t_table1.address,dbo.t_table2.id,dbo.t_table2.name from dbo.t_table1,dbo.t_table2 where dbo.t_table1.id = dbo.t_table2.id go
删除视图
删除视图需要进行的语句:
go if object_id('View_Class','view') is not null drop view View_Class go