SqlServer刷新所有视图

CREATE PROCEDURE RefreshAllView AS

DECLARE MyCursor CURSOR

FOR select Name from dbo.sysobjects where OBJECTPROPERTY(id, N‘IsView‘) = 1 and (not name in (‘sysconstraints‘,‘syssegments‘))

DECLARE @name varchar(40)

OPEN MyCursor

FETCH NEXT FROM MyCursor INTO @name

WHILE (@@fetch_status <> -1)

BEGIN

 IF (@@fetch_status <> -2)

 begin

 exec sp_refreshview @name

 end

 FETCH NEXT FROM MyCursor INTO @name

END

CLOSE MyCursor

DEALLOCATE MyCursor

时间: 2024-11-05 15:49:44

SqlServer刷新所有视图的相关文章

SQLserver中的视图与主外键的创建

一.背景 原来学过数据库的相关内容,只是形式上的,从来也没有实践过,徐徐飘过而已,如今在做机房时,很多知识需要用到视图,才开始去慢慢的实践. 视图:我理解的就是一张表,它把我们所需要的某个表或某几个表中的部分信息提取出来,形成了一张临时的表. 它主要有两个优点:1.简单,它呈现给我们的数据就是我们想要的数据,没有多余的. 2.安全,提供给用户它们权限范围内的数据 我为什么会用到视图?举一个简单的例子,在查询用户信息时,我们可能会用到两张表中的内容.那么这个时候我就需要将两张表中我需要的数据提取出

Oracle数据库入门——如何根据物化视图日志快速刷新物化视图

Oracle物化视图的快速刷新机制是通过物化视图日志完成的.Oracle如何通过一个物化视图日志就可以支持多个物化视图的快速刷新呢,本文简单的描述一下刷新的原理. 首先,看一下物化视图的结构:SQL> create table t(id number, name varchar2(30), num number);表已创建. SQL> create materialized view log on t with rowid, sequence(id, name) including new v

PostgreSQL定时刷新物化视图的一种简单方法

PostgreSQL 9.3开始支持物化视图,9.4又增加了非阻塞的CONCURRENTLY选项,但REFRESH时却不支持类似START WITH ... NEXT ...的定时刷新选项. 如何实现定时刷新物化视图?百度的结果主要是以下三种: 借助操作系统,如Linux/Unix的crontab或Windows的定时任务: 借助插件pgAgent: 使用触发器,一般为语句级(... FOR EACH STATEMENT ...). 近日接触到\watch命令,发现了一种新的刷新物化视图的方法.

SQLServer中在视图上使用索引(转载)

在SQL Server中,视图是一个保存的T-SQL查询.视图定义由SQL Server保存,以便它能够用作一个虚拟表来简化查询,并给基表增加另一层安全.但是,它并不占用数据库的任何空间.实际上,在你查询它之前,视图并不做任何事情. 索引视图 在SQL Server 2000和2005中,你能够给视图增加索引.但是,如果视图只是一个保存在数据库中的查询定义,在运行前没有自己的数据,你如何给那个定义建立一个索引呢?嗯,这比较麻烦. 索引视图是一个已被物化或保存在数据库中的视图.当基本表更新时,给视

SqlServer 之 系统视图

一.了解系统视图 1. 系统视图:从名字上看就知道,就是存放一些sqlserver系统的一些信息. 2. 存在位置: 下面截图看看,从截图中你可以看到,不管是“系统数据库”还是“用户数据库”都是有这些系统视图的,而且一眼扫下去发 现连名字都一样. 3.系统视图用处: Q1:我在维护一个系统的时候,我只知道有一个数据库中,有一个表的字段叫 “state”,但我忘了是定义在那张表中?我该如 何找出来? A1: 这个简单,在sqlserver里面提供了一个系统视图叫" INFORMATION_SCHE

SQLServer之创建视图

视图定义 视图是一个虚拟的表,是一个表中的数据经过某种筛选后的显示方式,视图由一个预定义的查询select语句组成. 使用SSMS数据库管理工具创建视图 1.连接数据库,选择数据库,展开数据库->右键视图->选择新建视图. 2.在添加表弹出框->选择要创建视图的表.视图.函数.或者同义词等->点击添加->添加完成后选择关闭. 3.在关系图窗格中->选择表与表之间关联的数据列->选择列的其他排序或筛选条件. 4.点击保存或者ctrl+s->刷新视图->查

sqlserver表、视图、索引(创建、修改、删除)相关示例

一.表相关 1.创建 USE [test] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Ceshi]( [id] [int] NOT NULL, [name] [varchar(30)] NULL,  CONSTRAINT [PK_Ceshi] PRIMARY KEY CLUSTERED  ( [id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMP

学习笔记:下拉刷新的视图和图标的旋转

一.下拉才出现的视图 pull_to_refresh_header.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/pull_to_refresh_header" android:orienta

SQLServer 索引以及视图

业务 主键: 索引: 锁: ========================================= 一个页分为 页头 页体--存储行 页尾 页是有固定大小的,但是数据不一定存满,有可能产生碎片,就是行跨页 ========================================= 排序: 存储是排序的 索引维护成本要低:所以在修改量与索引维护有关. 全表扫描: 数据存储在硬件上可能不是连续的....... 查询优化器: 为什么会自动优化SQL,因为数据库里面存储了一些统计信息