INSERT INTO (SELECT id,col1,col2,col3,col4 FROM table WHERE col1=1234) VALUES(SEQ.NEXTVAL,2456,'qwew','12312','12312');
我认为,对于上述查询,我只能将行插入到table的col1值为的位置1234。但是,我能够插入除1234for以外的值col1。
table
col1
1234
问题:
为什么我们需要像上面这样的查询?使用它的现实生活场景是什么?
它基本上是一种允许更新视图的结构。对于多表方案,只能对基础表之一进行INSERT。视图和要插入的表之间必须存在一对一的关系。
您显示的查询是一个内联视图,扩展了相同的概念。
在这里阅读更多文档
http://docs.oracle.com/cd/E17952_01/refman-5.1-zh-CN/view- updatability.html
现实生活-能够通过View做到这一点,提供了灵活性,便捷性。但是欢迎更多有价值的投入。