前两天老大在从一个表中删除数据的时候碰到了01732错误,可一查文档才知道01732是对视图的操作不合法才能碰到的,这是官方的定义:
ORA-01732 data manipulation operation not legal on this
view
Cause: An attempt was made to use an UPDATE, INSERT, or
DELETE
statement on a view that contains expressions or functions or was
derived from
more than one table. If a join operation was used to create the
view or the view
contains virtual columns derived from functions or expressions,
then the view
may only be queried.
Action: UPDATE, INSERT, or DELETE rows in the base tables instead
and
restrict the operations on the view to queries.
可是我们当时从dba_objects中查哪个对象确实显示是个表,老大也说那是个表,到底怎么回事呢?后来google了,也没有搜出个所以然来,这里有两篇文章好像都提到了这个问题可是也没有最终的解决方法,
这里又搜到的一篇文章,可能有用,把他贴出来:
ORA-01732: Data manipulation operati