我正在使用SQL Server CE作为我的数据库。
我可以在SQL Server CE 3.5中创建视图吗?我试图创建,但它说创建视图语句不受支持。
在我的应用程序中,我有一个名为Alarm
的表,有12列。但我总是只访问
三列。所以我想用这三列创建视图。
它会改善表现吗?
答案 0 :(得分:7)
似乎是SQL Server Compact Edition does indeed not support creation of views。
但是,如果您只从表格中选择三列,则视图根本无法帮助您。
如果您有一个定义为
的视图AlarmView
CREATE VIEW dbo.AlarmView
AS
SELECT Col1, Col2, Col3 FROM dbo.Alarm
然后从该视图中选择(`SELECT * FROM dbo.AlarmView WHERE ......)基本上变为
SELECT Col1, Col2, Col3 FROM dbo.Alarm
WHERE ........
所以你得到你自己写的相同的陈述。
视图不主要是为提高性能而设计的(它有点使用视图,你限制了SELECT中返回的列数) - 它们是专为限制/建模对表的访问,例如您可以在视图上授予某些用户SELECT权限,但不能在基础表上授予用户SELECT权限,这样用户就永远无法看到/选择任何其他列。