[英]How to permit update of a view's results in Oracle?
我了解数据库视图是只读的,或者默认情况下至少是只读的。
是否可以启用由oracle视图带来的数据更改?
改写:如果我仅查看一个表,只是为了隐藏一些列,对此数据的更改会在表上更新吗?
我不相信默认情况下Oracle视图是只读的...单个表视图应该是可更新的,前提是它不包含DISTINCT或GROUP BY这样的多行操作。 有问题的用户必须已被授予UPDATE VIEW privs。
如果您有权限更新有问题的视图,那么删除列的简单视图绝对应该是可更新的...
GRANT UPDATE ON your_view_name TO your_user;
当您尝试运行UPDATE语句时遇到什么错误?
在oracle中,视图不包含其自身的基本数据。 因此,如果您的视图允许更新,则基础表将被更新。
如果您需要更多信息,请查看Oracle概念指南中的“视图”部分。
http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/schema.htm#sthref787
还可以在“创建视图” sql命令中找到更多信息。
http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_8004.htm#SQLRF01504
希望这可以帮助
问候
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.