Oracle删除表及查看表空间的实例详解
Oracle常用的基本命令
--1.用户下表中注释模糊查询:
例如查询与优惠券关联的表
SELECT*FROMuser_tab_commentstWHEREt.commentsLIKE'%优惠券%'; 
--2.oracle中删除表dropdeletetruncate
/** *相同点: 使用drop、delete、truncate都会删除表中的内容 droptable表名 deletefrom表名(后面不跟where语句,则也删除表中所有的数据) truncatetable表名 不同点: 首先delete属于DML,当不commit时时不生效的 而truncate和drop则是直接生效的,不能回滚。 truncate和delete不删除表的结构,只是针对表中的内容删除 drop语句将删除表的结构,被依赖的约束(constrain),触发器(trigger),索引(index);依赖于该表的存储过程/函数将保留,但是变为invalid状态. truncate会释放占用空间,而drop和delete不会。 速度:drop>truncate>dalete 综上所述,可以得到一个问题,使用drop和truncate相对delete是危险的,当使用drop和truncate时不能回滚。delete相对安全,可以回滚,并且commit以后才会提交,并且不会删除表结构,也不会释放表所占用的空间。 */
--3.查看表空间的名称及大小
SELECTT.TABLESPACE_NAME,ROUND(SUM(BYTES/(1024*1024)),0)TS_SIZE FROMDBA_TABLESPACEST,DBA_DATA_FILESD WHERET.TABLESPACE_NAME=D.TABLESPACE_NAME GROUPBYT.TABLESPACE_NAME;
--4.查看表空间物理文件的名称及大小
SELECTTABLESPACE_NAME, FILE_ID, FILE_NAME, ROUND(BYTES/(1024*1024),0)TOTAL_SPACE FROMDBA_DATA_FILES ORDERBYTABLESPACE_NAME;
--5、查看表空间的使用情况
SELECTSUM(BYTES)/(1024*1024)ASFREE_SPACE,TABLESPACE_NAME FROMDBA_FREE_SPACE GROUPBYTABLESPACE_NAME; SELECTA.TABLESPACE_NAME, A.BYTESTOTAL, B.BYTESUSED, C.BYTESFREE, (B.BYTES*100)/A.BYTES"%USED", (C.BYTES*100)/A.BYTES"%FREE" FROMSYS.SM$TS_AVAILA,SYS.SM$TS_USEDB,SYS.SM$TS_FREEC WHEREA.TABLESPACE_NAME=B.TABLESPACE_NAME ANDA.TABLESPACE_NAME=C.TABLESPACE_NAME;
--6、查看数据库的版本
SELECTVERSION FROMPRODUCT_COMPONENT_VERSION WHERESUBSTR(PRODUCT,1,6)='Oracle';
以上所述是小编给大家介绍的Oracle删除表及查看表空间的实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!