View 是否會記住欄位細節定義

上課時,工研院的朋友詢問 View 是否會記住欄位細節定義,我的印象是 SQL 會記得欄位名稱數量,但不會記細節,後來才發現自己錯了,我做了如下的驗證

create table tbCust(PK INT IDENTITY(1,1) PRIMARY KEY,
CustomerID NVARCHAr(5),
CompanyName NVARCHAR(40),
ContactName NVARCHAR(30))

CREATE VIEW vwCust
AS
SELECT CustomerID,CompanyName,ContactName FROM tbCust

驗證內容
sp_help ‘vwCust’
image

或另一種驗證方式:
select * from sys.all_columns where object_id=object_id(‘vwCust’)
image

再修改 Table 定義後,重新查 View,其欄位細節維持舊定義。

玩了十多年的 SQL Server,直到今天才發現自己的基本認知錯誤 害羞

謝謝工研院朋友們提出的好問題

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s

%d 位部落客按了讚: