修改和重命名sqlserver视图时遵循的原则

时间:2021-04-16

  在完成视图定义后,可以在不除去和重新创建视图的条件下更改视图名称或修改其定义,从而丢失与之相关联的权限。在重命名视图时,请遵循以下原则:

  ◆要重命名的视图必须位于当前数据库中。

  ◆新名称必须遵守标识符规则。

  ◆只能重命名自己拥有的视图。

  数据库所有者可以更改任何用户视图的名称。

  更改视图并不影响相关对象,如存储过程或触发器,除非视图定义的更改使该相关对象不再有效。例如,pubs 数据库中 authors_view 视图的定义方式如下:

  CREATE VIEW authors_view AS SELECT au_id FROM authors

  存储过程 authors_proc 的定义方式为:

CREATE PROC authors_proc
AS
SELECT au_id from authors_view

  对 authors_view 进行修改以检索 au_lname 列而非 au_id:

ALTER VIEW authors_view
AS
SELECT au_lname FROM authors

  执行时 authors_proc 将会失败,因为视图中 au_id 列已不复存在。

  也可以修改视图以对其定义进行加密,或确保所有在视图上执行的数据修改语句都符合定义视图的 SELECT 语句中设定的条件。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章