❶ sql server如何判断视图是否存在
SELECT count(*) as cut FROM sysviews WHERE object_id = '[dbo].[视图名]'
if fieldByName('cut')>0 then
//存在
else
//不存在
❷ SQL 创建的视图是真实存在的吗
不创建视图当然可以了,
视图就相当于你的查询语句,
它不是实质的存在,
但它保存在数据库里,
它本身没有数据,它的数据都是根据数据表来得到,
因些不能对它的数据进行修改
❸ sql 中在什么情况下使用视图,有什么好处
什么情况下会用到视图?
比如说一个比较复杂的查询不想每次都写很多语句,就可以写个视图。下次查询的时候是需要使用select * from视图名就可以了。
或者给特定用户开放某些表的读取权限,但要加一些行和列的限制,也可以写个视图。
视图的好处,可以主要分为四点:
第一点: 使用视图,可以定制用户数据,聚焦特定的数据。
解释:
在实际过程中,公司有不同角色的工作人员。
以销售公司为例:,采购人员,可以需要一些与其有关的数据,而与他无关的数据,对没有任何意义,我们可以根据这一实际情况,专门为采购人员创建一个视图,以后他在查询数据时,只select*fromview_caigou就可以了。
第二点:使用视图,可以简化数据操作。
解释:
在使用查询时,在很多时候要使用聚合函数,同时还要显示其它字段的信息,可能还会需要关联到其它表,这时写的语句可能会很长,如果这个动作频繁发生的话,则可以创建视图。以后要用的话,只需要select*fromview1就可以了。
第三点:使用视图,基表中的数据就有了一定的安全性
因为视图是虚拟的,物理上是不存在的,只是存储了数据的集合,故可以将基表中重要的字段信息,可以不通过视图给用户,视图是动态的数据的集合,数据是随着基表的更新而更新。同时,用户对视图,不可以随意的更改
和删除,可以保证数据的安全性。
第四点:可以合并分离的数据,创建分区视图
随着社会的发展,公司业务量不断的扩大,一个大公司,下属都设有很多的分公司,为了管理方便,需要统一表的结构,定期查看各公司业务情况,而分别看各个公司的数据很不方便,没有很好的可比性,如果将这些数据合并为一个表格里,就方便多了,这时就可以使用union关键字,将各分公司的数据合并为一个视图。
❹ 在sql数据库里的视图是什么意思,怎么理解
视图为原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。视图为从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。
视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。
(4)sql视图是存在的吗扩展阅读
视图有很多优点,主要表现在:
1、视点集中
使用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。这样通过只允许用户看到视图中所定义的数据而不是视图引用表中的数据而提高了数据的安全性。
2、简化操作
视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。
3、定制数据
视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用同一数据库时,这显得极为重要。
4、合并分割数据
在有些情况下,由于表中数据量太大,故在表的设计时常将表进行水平分割或垂直分割,但表的结构的变化却对应用程序产生不良的影响。如果使用视图就可以重新保持原有的结构关系,从而使外模式保持不变,原有的应用程序仍可以通过视图来重载数据。
5、安全性
视图可以作为一种安全机制。通过视图用户只能查看和修改他们所能看到的数据。其它数据库或表既不可见也不可以访问。如果某一用户想要访问视图的结果集,必须授予其访问权限。视图所引用表的访问权限与视图权限的设置互不影响。
❺ SQL中怎么判断视图是否存在
SQL Server 2000
IF EXISTS (SELECT * FROM sysviews WHERE object_id = '[dbo].[视图名]'
SQL Server 2005
IF EXISTS (SELECT * FROM sys.views WHERE object_id = '[dbo].[视图名]'
❻ sql中视图与表的区别
sql中视图与表的区别为:性质不同、存储内容不同、操作不同。
一、性质不同
1、视图:视图不是一个独立的文件,是由一个或几个基本表导出形成的虚表。
2、表:表是数据库中用来存储数据的对象,是有结构的数据的集合,是整个数据库系统的基础。
二、存储内容不同
1、视图:视图存储的内容是来自本地数据源或远程数据源的定义,不存放实际数据。
2、表:表存储的内容是本地数据源的数据。
三、操作不同
1、视图:操作者只可以对视图进行查操作,不能进行增删改操作。
2、表:操作者可以对表进行增删改查四种操作。
❼ SQL 视图是否是依赖表存在
对,视图是由表做为基础而产生的虚拟表,基内容基于基础表,基础表更改后,视图做相应改变,所以视图依赖表存在
❽ 如何判断mysql 中视图是否存在
可以通过select查询视图的方式,来判断视图是否存在。
--1.假设现在新建一个视图
create or replace force view test_view as
select * from dept;
--2.通过count(1)查出来的是,该视图中记录的总条数
select count(1) from test_view;
--3.如果要判断该视图是否存在,直接查看该视图中的内容即可
select * from test_view;
-- 如果有字段等内容,说明视图是存在的。反之,无法成功编译,因为视图不存在。
❾ 请问SQL中视图与查询的区别
SQL中视图与查询的区别为:功能不同、归属不同、数据来源不同。
一、功能不同
1、视图:视图可以更新字段内容并返回原表。
2、查询:查询文件中的记录数据不能修改。
二、归属不同
1、视图:视图不是一个独立的文件,它保存在数据库中。
2、查询:查询是一个独立的文件,不属于数据库。
三、数据来源不同
1、视图:视图的数据来源可以是本地数据源,也可以是远程数据源。
2、查询:查询的数据来源只有本地数据源,不能访问远程数据源。
❿ SQL 创建的视图会存放到硬盘上吗
对是保存在数据库中,视图是一张虚拟表,保存在数据库中的是SQL语句
应该在.mdf文件中