当前位置: ManBetXapp > 百科 > 科技 >正文

SQL Server如何新建视图

人气:186 ℃ /2023-07-27 12:12:39

工具/材料

SQL Server

操作方法

首先打开SQL Server Management管理工具,打开一个数据库,选择数据库下面的视图,右键单击,选择“新建视图”,如下图所示

点击新建视图以后,软件会自动弹出添加表的选择框,如下图所示,选择要添加的数据表,然后点击添加按钮

小编添加了两个表以后,视图设计界面就如下图所示,软件已经将这两个表进行了关联

接下来我们选择每个表中要添加的字段,直接勾选字段前面的复选框即可,如下图所示,勾选以后,字段自动添加到视图列中

需要注意的是如果两个表中有相同的字段名称的话,软件会自动给字段起别名,如下图所示

接下来我们按ctrl和s的组合键,弹出视图名称编辑对话框,如下图所示,输入视图的名称,点击确定即可

最后我们查询建好的视图,你会发现我们刚才选择的字段都已经添加到视图中了,如下图所示

sql server如何建立视图

SQL Server视图创建与作用详解

视图的作用:

1、视图隐藏了底层的表结构,简化了数据访问操作,客户端不再需要知道底层表的结构及其之间的关系。

2、建立中间表,方便查询。

3、基表中的数据就有了一定的安全性。视图提供了一个统一访问数据的接口。(即可以允许用户通过视图访问数据的安全机制,而不授予用户直接访问底层表的权限)。

因为视图是虚拟的,物理上是不存在的,只是存储了数据的集合,我们可以将基表中重要的字段信息,可以不通过视图给用户,视图是动态的数据的集合,数据是随着基表的更新而更新用户对视图只能查询,不可以随意地更改和删除,可以保证数据的安全性。

4、可以合并分离的数据,创建分区视图。

视图还可以被嵌套,一个视图中可以嵌套另一个视图。


创建表:

--------创建表-------

--判断表是否存在--

if exists (select * from sysobjects where name = ‘Tab_EdsProd’)

drop table Tab_EdsProd

go

--创建表

create table Tab_EdsProd

(

Mid int identity(1,1) primary key,

Code varchar(10) null,

Name varchar(20) null

)

--添加数据

insert into Tab_EdsProd(Code,Name) values(‘001’,‘张三’);

insert into Tab_EdsProd(Code,Name) values(‘002’,‘李四’)

--查询数据

select * from Tab_EdsProd

创建视图:

--------创建视图-------

–判断是否存在–

if exists (select * from sysobjects where name = ‘View_EdsProd’)

drop view View_EdsProd

go

--创建视图

create view View_EdsProd

with encryption -- 为不可修改视图

as

select * from Tab_EdsProd where Mid>1

go

--使用视图–

select *from View_EdsProd

说明:

schema_name:是视图所有者的名称,一般为 dbo。(指定视图所有者名称是可选的。)

view_name:是视图的名称。

ENCRYPTION:对加密进行加密,加密之后不可修改。使用 WITH ENCRYPTION 可以防止将视图作为 SQL Server 复制的一部分进行发布。


分区视图:

分区视图是由 UNION ALL 的所有成员表定义的视图,即拥有相同的表结构、字段、数据类型等,不相同的数据集。

分区视图又分为 本地式分区视图和分布式分区视图。本地式分区视图是同一个数据库存在相同的表结构、字段、数据类型等的表使用 UNION ALL 创建的视图;

分布式分区视图就是数据源存在于不同的数据库或不同的数据库服务器使用 UNION ALL 创建的视图。

视图不能包含 ORDER BY 子句,除非SELECT语句的选择列表中还有一个 TOP 子句。

视图不能使用 INTO 关键字。视图不能包含 OPTION 子句。

视图不能有对临时表或表变量的引用。视图最多可以有 1024 列。


with encryption 为不可修改视图:

如果添加该选项,则可以确保没有人能够查看得到您的代码(甚至是你自己)。如果要构建发布商业软件,或者出于安全性的考虑不想让用户看到所修改的或访问的数据,那么这个选项是非常有用的,很明显没如果想再以后子重新创建触发器,那么需要保存创建触发器的代码副本,以便在其他地方使用。

和视图与存储过程一样,使用with encryption 选项需要记住的是,每次在触发器上使用alter 语句时都必须重新应用该选项。如果使用alter trigger 语句不包含with encryption 选项,那么触发器就不再被加密。

视图加密与不加密:

sp_helptext,查看视图SQL语句

使用dbForge SQL Decryptor查看建视图语句

搜索更多有关“ SQL Server如何新建视图”的信息 [百度搜索] [SoGou搜索] [头条搜索] [360搜索]
CopyRight © 2008-2024 ManBetXappAll Rights Reserved. 手机版