首页    新闻    下载    文档    论坛     最新漏洞    黑客教程    数据库    搜索    小榕软件实验室怀旧版    星际争霸WEB版    最新IP准确查询   
名称: 密码:      忘记密码  马上注册
操作系统 :: windows

移动LOB类型数据段


(略)
  使用如下语法:ALTER TABLE MOVE TABLESPACE LOB () STORE AS (TABLESPACE );



  其中STORE AS 修改LOB segment段名字的方法,我在817.3的测试中没有效果;而且还导致表也被Moved(注意测试中ROWID的改变).



  当分区包括LOB时候,语法稍有不同;



  alter table move partition lob () store as ( tablespace )



  具体参考<A href="http://asktom.oracle.com/pls/ask/f?p= ... ID:378418239571</A>



  SQL> CREATE TABLE lobtab (



  recid NUMBER(5),



  lobcol CLOB )



  LOB (lobcol) STORE AS (TABLESPACE USERS)



  TABLESPACE USERS; 2 3 4 5



  Table created.



  SQL> desc lobtab



  Name Null? Type



  ----------------------------------------- -------- ----------



  RECID NUMBER(5)



  LOBCOL CLOB



  SQL> select index_name, tablespace_name,index_type from user_indexes where table_name = 'LOBTAB';



  INDEX_NAME TABLESPACE_NAME



  ------------------------------ ------------------------------



  INDEX_TYPE



  ---------------------------



  SYS_IL0000119374C00002$$ USERS



  LOB



  LOB Index必须和LOB Segment在一个表空间中。察看有用的*_lobs视图



  SQL> select table_name,column_name,segment_name,index_name from user_lobs;



  LOBTAB LOBCOL



  SYS_LOB0000119374C00002$$ SYS_IL0000119374C00002$$



  SQL> select rowid from lobtab;



  ROWID



  ------------------



  AAAdJRACiAAAACqAAA 《---目前表纪录的rowid



  移动LOB Segment



  SQL> ALTER TABLE lobtab MOVE LOB (lobcol) STORE AS lobseg (TABLESPACE TOOLS);



  Table altered.



  SQL> select rowid from lobtab;



  ROWID



  ------------------



  AAAdKeACjAAAABqAAA <---rowid改变;虽然表的表空间没有变,但表确实也被move了。



  SQL> select index_name, tablespace_name,index_type from user_indexes where table_name = 'LOBTAB';



  INDEX_NAME TABLESPACE_NAME



  ------------------------------ ------------------------------



  INDEX_TYPE



  ---------------------------



  SYS_IL0000119374C00002$$ TOOLS



  LOB



  没有发现LOBSEG,看来语法没有起作用。



  SQL> SELECT segment_name, segment_type, tablespace_name FROM user_segments where segment_name IN ('LOBTAB', 'LOBSEG');



  SEGMENT_NAME



  --------------------------------------------------------------------------------



  SEGMENT_TYPE TABLESPACE_NAME



  ------------------ ------------------------------



  LOBTAB



  TABLE USERS



  SQL> select table_name,column_name,segment_name,index_name from user_lobs;



  LOBTAB LOBCOL



  SYS_LOB0000119374C00002$$ SYS_IL0000119374C00002$$



  
<< 中软Linux负载均衡集群系统解决方案 OracleforLinux安装 >>
API:
gipsky.com& 安信网络
网友个人意见,不代表本站立场。对于发言内容,由发表者自负责任。

系统导航

 

Copyright © 2001-2010 安信网络. All Rights Reserved
京ICP备14013333号-8