===========================================================
===========================================================
itpub论坛回复: 如何看到自己的数据被插入到了哪个分区
作者: oldwain(http://oldwain.itpub.net)发表于: 2006.09.29 11:06
分类: Oracle
出处: http://oldwain.itpub.net/post/6/214570
---------------------------------------------------------------
问题: 来源(muyehuoying)
请问如何看到自己的数据被插入到了哪个分区?
我的回答:
在insert 语句后加入returning子句
insert ........ returning DBMS_ROWID.ROWID_OBJECT(rowid) into v_objno;
然后从user_objects表根据v_objno取得表名和分区名。
示例:
scott@O9I.US.ORACLE.COM> set serveroutput on
scott@O9I.US.ORACLE.COM> declare
2 v_rowid rowid;
3 v_objno number;
4 v_tname varchar2(30);
5 v_pname varchar2(30);
6 begin
7 insert into t values (9999, sysdate-365 ) returning DBMS_ROWID.ROWID_OBJECT(rowid) into v_objno;
8 dbms_output.put_line(v_objno);
9 select object_name, subobject_name into v_tname, v_pname from user_objects where object_id = v_objno;
10 dbms_output.put_line('tname: ' || v_tname || ' pname: ' || v_pname);
11 end;
12 /
67700
tname: T pname: P3
PL/SQL 过程已成功完成。
scott@O9I.US.ORACLE.COM>
(需要引用, 请注明出处: http://oldwain.itpub.net)




