表的条带化

本文详细展示了如何在Oracle数据库中使用SQL命令创建、修改和删除表空间,添加数据文件,以及调整表的extent分配,包括ALTERTABLESPACE,CREATETABLE,DROPTABLE和EXTENTS管理操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SQL> conn / as sysdba
Connected.
SQL> select name from v$datafile where rownum=1;

NAME                                                                                                
------------------------------------------                                                          
F:\ORACLE\ORADATA\ORA9\SYSTEM01.DBF                                                                 

SQL> create tablespace st datafile 'F:\ORACLE\ORADATA\ORA9\st1.dbf' size 2m;

Tablespace created.

SQL> alter tablespace st add datafile 'F:\ORACLE\ORADATA\ORA9\st2.dbf' size 2m;

Tablespace altered.

SQL> alter tablespace st add datafile 'F:\ORACLE\ORADATA\ORA9\st3.dbf' size 2m;

Tablespace altered.

SQL> drop table scott.t1;
drop table scott.t1
                 *
ERROR at line 1:
ORA-00942: table or view does not exist 


SQL> create table scott.t1 tablespace st  as select * from scott.emp;

Table created.

SQL> select tablespace_name from dba_tables where table_name='T1' AND owner='SCOTT';

TABLESPACE_NAME                                                                                     
---------------                                                                                     
ST                                                                                                  

SQL> DESC DBA_EXTENTS
 Name                                                  Null?    Type
 ----------------------------------------------------- -------- ------------------------------------
 OWNER                                                          VARCHAR2(30)
 SEGMENT_NAME                                                   VARCHAR2(81)
 PARTITION_NAME                                                 VARCHAR2(30)
 SEGMENT_TYPE                                                   VARCHAR2(18)
 TABLESPACE_NAME                                                VARCHAR2(30)
 EXTENT_ID                                                      NUMBER
 FILE_ID                                                        NUMBER
 BLOCK_ID                                                       NUMBER
 BYTES                                                          NUMBER
 BLOCKS                                                         NUMBER
 RELATIVE_FNO                                                   NUMBER

SQL> SELECT EXTENT_ID,FILE_ID,BLOCK_ID,BLOCKS FROM DBA_EXTENTS
  2  where SEGMENT_NAME='T1' AND owner='SCOTT';

 EXTENT_ID    FILE_ID   BLOCK_ID     BLOCKS                                                         
---------- ---------- ---------- ----------                                                         
         0         12          9          8                                                         


SQL> SELECT FILE_ID,FILE_NAME FROM DBA_DATA_FILES WHERE TABLESPACE_NAME='ST';

   FILE_ID FILE_NAME                                                                                
---------- ----------------------------------------                                                 
        11 F:\ORACLE\ORADATA\ORA9\ST1.DBF                                                           
        12 F:\ORACLE\ORADATA\ORA9\ST2.DBF                                                           
        13 F:\ORACLE\ORADATA\ORA9\ST3.DBF                                                           


SQL> ALTER TABLE SCOTT.T1 ALLOCATE EXTENT(DATAFILE 'F:\ORACLE\ORADATA\ORA9\ST1.DBF');

Table altered.

SQL> SELECT EXTENT_ID,FILE_ID,BLOCK_ID,BLOCKS FROM DBA_EXTENTS
  2  where SEGMENT_NAME='T1' AND owner='SCOTT';

 EXTENT_ID    FILE_ID   BLOCK_ID     BLOCKS                                                         
---------- ---------- ---------- ----------                                                         
         0         12          9          8                                                         
         1         11          9          8                                                         

SQL> ALTER TABLE SCOTT.T1 ALLOCATE EXTENT(DATAFILE 'F:\ORACLE\ORADATA\ORA9\ST3.DBF');

Table altered.

SQL>  SELECT EXTENT_ID,FILE_ID,BLOCK_ID,BLOCKS FROM DBA_EXTENTS
  2   where SEGMENT_NAME='T1' AND owner='SCOTT';

 EXTENT_ID    FILE_ID   BLOCK_ID     BLOCKS                                                         
---------- ---------- ---------- ----------                                                         
         0         12          9          8                                                         
         1         11          9          8                                                         
         2         13          9          8                                                         

SQL> SPOOL OFF

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温柔-的-女汉子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值