如有侵权请联系我
今天早晨上班检查昨天对接的数据,发现log日志中数据已经打印,说明程序没有问题,但是CUS_SUMMARY表中并没有添加进去,执行存储过程报错
ORA-01653: 表xxxxx无法通过 8192 (在表空间 TSPBP 中) 扩展
--查看表空间的使用情况
SELECT SUM(bytes) / (1024 * 1024) AS free_space, tablespace_name
FROM dba_free_space
GROUP BY tablespace_name;
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
知道是表空间不足的原因,进而修改表空间即可
一、看表空间使用情况,发现几乎已满,因此拓展表空间大小
二、拓展语句
--为表空间增加数据文件
alter tablespace TSPBP
add datafile 'D:\OracleTableSpace\TSPBP01.DBF'
size 1000m
autoextend on next 1000m maxsize 32767m;
三、复查数据已经能正常插入,问题解决
参考链接:
Oracle 查看表空间的大小及使用情况sql语句
oracle表空间大小的限制和DB_BLOCK_SIZE的概念