1 我们先创建一个表和一个视图,我用mssql
创建表
USE [tmpe]
GO
/****** Object: Table [dbo].[user] Script Date: 09/29/2017 09:43:14 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[user](
[id] [int] NULL,
[name] [varchar](500) NULL,
[sex] [int] NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
创建视图
USE [tmpe]
GO
/****** Object: View [dbo].[View_user] Script Date: 09/29/2017 09:44:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[View_user]
AS
SELECT dbo.[user].*
FROM dbo.[user]
GO
创建好的表和视图如下:
2 ,接下来我们把user表的name 长度改为1000的时候,刷新视图 查看视图里的name的长度依旧为没有修改之前的500
你可以説我把视图删了重建可以不啊,可以的,但是当你的视图有很多的时候你怎么去改
微软为我们提供了一个很好的解决方法,执行下就好了
exec sp_refreshview 'dbo.View_user'
执行后再看;