IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[TB_TEST]'))
DROP VIEW [dbo].[TB_TEST]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].TB_TEST
AS
SELECT TB_TEST_1.ID, TB_TEST_1.Code, TB_TEST_1.Name, TB_TEST_1.PassWord, TB_TEST_1.Power,
TB_TEST_1.ClientLevel, TB_TEST_1.DeptNo, TB_TEST_1.DeptName, TB_TEST_1.Rank, TB_TEST_1.ValidStartDate,
TB_TEST_1.ValidEndDate, TB_TEST_1.PWDStartDate, TB_TEST_1.PWDValidDays, TB_TEST_1.DeleteFlag,
TB_TEST_1.LastStaffID, TB_TEST_1.Timestamp, TB_TEST_1.LastLogin, TB_TEST_1.Computer, TB_TEST_1.Memo,
TB_TEST_1.AgentID, TB_TEST_1.AgentPassword, TB_TEST_1.MultiLang, TB_TEST_1.FelicaIDm,
TB_TEST_1.Namekana, TB_TEST_1.ADName, TB_TEST_1.ADFlag, TB_TEST_1.Extension,
TB_TEST_1.MinPassWordLength, TB_TEST_1.PassWordComplexity, TB_TEST_1.BaseID, dbo.TB_Base.BaseName,
TB_TEST_1.LoginLockFlag, TB_TEST_1.LoginStartDate, TB_TEST_1.LoginEndDate, TB_TEST_1.ThreePasswordUseFlag,
TB_TEST_1.NoIncludeThrSameTextFlag, TB_TEST_1.FirstMustUpdateFlag, TB_TEST_1.PassWordBeforeTwo,
TB_TEST_1.PassWordBeforeOne
FROM QCall_User.dbo.TB_TEST AS TB_TEST_1 LEFT OUTER JOIN
dbo.TB_Base ON TB_TEST_1.BaseID = dbo.TB_Base.ID
GO
补充
视图是虚表,可以理解为预先定义好了的SQL语句,不存储数据,所以当你更新视图时就是更新的原表。 当然并不是所有的视图都可以更新,如包含自定义列的视图就不能更新