2010-08-19 70 views
6

有没有办法让视图成为sql server中的主键。我知道它可能在oracle中。SQL Server查看主键

我不关心更新其只读视图,但其他人在ms访问中使用它,所以我想约束,我知道是正确的显示。

回答

11

是的,你可以创建一个indexed view,它必须有一个主键。请注意,这会将视图数据保存到磁盘,这可能是也可能不是您正在寻找的。

此外,创建索引视图还会影响性能,无论是正面还是负面。确保在实施前仔细阅读优点,缺点和限制。

0

索引视图是正确的选择,但RedFilter所说的主键实际上并不是required。虽然有许多要求会被强制要求,例如聚集索引。

+0

创建的第一个索引必须是唯一的聚簇索引 - 这可能是RedFilter主键的含义? – 2010-08-19 12:48:58

+0

我相信这是他的意思,但它可能会让人困惑。如果我可以添加评论,我会通过评论而不是回答来指出。 – user404463 2010-08-19 15:22:19

0

MS Access您可以创建使用SQL语句中的链接视图的主键:

ALTER TABLE [TableName] ADD CONSTRAINT [PrimaryKeyName] PRIMARY KEY ([FieldName1, FieldName2, ...]) 

也就是说,使用索引视图是更好的解决方案。