简单数据库视图(更新,插入,删除)

时间:2014-01-07 15:34:15

标签: sql views corresponding-records

在我的大学笔记中,我目前正在尝试研究视图,但在材料中没有任何地方显示何时可以更新,插入或删除简单视图的标准。我认为特权可以与此有很多关系,并且看起来像是常识不允许视图中的数据被创建视图的人以外的任何人删除但这不是常识只是可以更新,插入或删除视图以及该标准的标准。

对于我的示例,我创建了一个名为EmployeeName的视图,它将first_namelast_name置于新字段Name下,如此

CREATE VIEW EmployeeName as  
SELECT first_name + last_name "Names"
FROM Employees; 

(不完全确定这种语法,但我认为是正确的)

是否可以访问此视图的任何人更新,插入或删除此字段?(无权限)

2 个答案:

答案 0 :(得分:0)

必须满足某些条件,以便视图可以更新。 例如,如果你有视图中的聚合函数,你显然无法更新它。

有关Oracle的更多信息,您可以找到here

For MySQL它非常类似于oracle

答案 1 :(得分:0)

在SQL Server中,有更新视图的特定规则,它们非常复杂。每个DB都会这样做。可能由于这些规则,我多年来看到的大部分观点都是不可更新的。

就个人而言,我更喜欢直接更新表而不是通过视图。如果您可能有不同的数据库后端,tehyn我会默认考虑直接更新表,因为每个数据库的规则都非常不同。

相关问题