0.有时候系统插入数据插入不进去,且系统中代码没有明显报错的时候,有可能就是你的数据库表空间没有设置自增长,表空间满了,以下是一些操作ORACLE数据库表空间的语句:
1.查看已经开启和未开启自动增长的表空间
select tablespace_name,file_name,autoextensible from dba_data_files;
2.查看已经开启自动增长的表空间
select tablespace_name,file_name,autoextensible from dba_data_files where autoextensible='YES';
3.设置表空间自动增长
alter database datafile 'D:\APP\ADMINISTRATOR\ORADATA\KYSDB\ZHZX.ORA' autoextend on;
4.设置表空间每次自动增长200M
alter database datafile 'D:\APP\ADMINISTRATOR\ORADATA\KYSDB\ZHZX.ORA' autoextend on next 200M;
5.设置表空间每次自动增长200M,数据表最大不超过1G
alter database datafile 'D:\APP\ADMINISTRATOR\ORADATA\KYSDB\ZHZX.ORA' autoextend on next 200M maxsize 1024M;
6.设置表空间每次自动增长200M,数据表最大无上限(oracle默认最大30G)
alter database datafile 'D:\APP\ADMINISTRATOR\ORADATA\KYSDB\ZHZX.ORA' autoextend on next 200M maxsize unlimited;
7.查看所有表空间大小
select tablespace_name,(bytes/1024/1024)M from dba_data_files;
8.查看表空间的利用率
SELECT
B.FILE_NAME 物理文件名,
B.TABLESPACE_NAME 表空间名称,
B.BYTES/1024/1024 大小M,
(B.BYTES-SUM(NVL(A.BYTES,0)))/1024/1024 已使用M,
SUBSTR((B.BYTES-SUM(NVL(A.BYTES,0)))/(B.BYTES)*100,1,5) 使用率
FROM DBA_FREE_SPACE A,DBA_DATA_FILES B
WHERE A.FILE_ID=B.FILE_ID
GROUP BY B.TABLESPACE_NAME,B.FILE_NAME,B.BYTES
ORDER BY B.TABLESPACE_NAME;