我使用 SQL Server CE 作为我的数据库。
我可以在 SQL Server CE 3.5 中创建视图吗?我试图创建,但它的说法不支持创建视图语句。
在我的应用程序中,我有一个Alarm
包含 12 列的表。但我总是只访问三列。所以我想用这三列创建视图。
它会提高性能吗?
我使用 SQL Server CE 作为我的数据库。
我可以在 SQL Server CE 3.5 中创建视图吗?我试图创建,但它的说法不支持创建视图语句。
在我的应用程序中,我有一个Alarm
包含 12 列的表。但我总是只访问三列。所以我想用这三列创建视图。
它会提高性能吗?
看来 SQL Server Compact Edition确实不支持创建视图。
但是,如果您只从表中选择三列,则视图根本无法帮助您。
如果您有一个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 权限,这样用户将永远无法查看/选择任何其他列。