如何在TSQL中创建可更新视图。请提供简单的示例,我可以根据我的解决方案。
最近我用TSQL帮助我的朋友,他向我询问了可更新的视图。我认为将我的解决方案留在这里作为快速查找将来是个好主意。
如需参考,请查看msdn。
答案 0 :(得分:5)
我提供了一个非常基本的工作示例。
--Here is our base table
CREATE TABLE [test_table]
(
[a] int primary key,
[b] varchar(40),
[c] bigint,
[d] varchar(20),
)
GO
--Here is our view to the table
CREATE VIEW [test_view] As SELECT b,a,d FROM test_table
GO
--As an example insert few entries
INSERT INTO test_table VALUES (0, 'abc', 2, '2011-10-13')
INSERT INTO test_table VALUES (1, 'abc', 2, '2011-10-13')
INSERT INTO test_table VALUES (3, 'abc', 2, '2011-10-13')
--Check if everything works fine
SELECT * FROM test_table
SELECT * FROM test_view
GO
由于表和视图正在填写msdn请求(lookup),我可以在视图上执行以下操作:
UPDATE test_view SET b = 'xyz', d = '2011-10-14' where a = 0
INSERT test_view VALUES ('xyz', 2, '2011-10-14')
DELETE test_view where a = 3
GO
SELECT * FROM test_table
SELECT * FROM test_view
GO
重要提示: 也允许批量插入。
祝你好运。