案例学习Oracle错误:ORA-01631 (转载)

案例一:

  向表中插入新的记录时出错

  我创建了如下的表空间:

  CREATE TABLESPACE TBS DATAFILE 'C:....XXX01.dbf' SIZE 500M REUSE

  DEFAULT STORAGE (INITIAL 10240 NEXT 10240 MINEXTENTS 1 MAXEXTENTS 256

  PCTINCREASE 0) ONLINE;[@more@] 案例一:

  向表中插入新的记录时出错

  我创建了如下的表空间:

  CREATE TABLESPACE TBS DATAFILE 'C:....XXX01.dbf' SIZE 500M REUSE

  DEFAULT STORAGE (INITIAL 10240 NEXT 10240 MINEXTENTS 1 MAXEXTENTS 256

  PCTINCREASE 0) ONLINE;

  当我想要向表ST I中插入一条新的记录时,出现了如下的错误信息:

  ORA-01631:达到表TOM.ST的最大扩展(256)

  原因:一个表格尝试扩展此前定义的最大扩展

  解决方案:如果此前定义的最大扩展小雨系统的最大值,则扩展;否则,下次需要重新建立更大的初始化值或者增加参数;

  我想要增加最大扩展:(user=system)

  ALTER TABLE TOM.ST STORAGE(MAXEXTENTS 500);

  但是我遇到了如下的错误:

  ERROR at line 1:

  ORA-25150: 不允许修改扩展参数

  还有,表空间TBS默认存储(最大扩展 500);

  原因:一个在表空间中的自动分配或者按照统一长度自动分配原则产生的一节相关的尝试将改变长度参数。

  解决方案:将命令行中相应的长度参数删去

  ERROR at line 1:

  ORA-25143: 默认的存储规则与分配策略不符

  原因:默认的存储子句正通过自动分配或者统一分配原则指明了一个表空间

  解决方案:忽略这个存储子句

  我如何解决这个错误?

  这个问题于2004年3月2日提出

  这个问题由Brian Peasland解答

  你的表空间是一个本地管理的表空间(LMT)。本地管理的表空间不使用最大扩展,这就是为什么你收到ORA-25150 和 ORA-25143错误的原因。但是在惟一的一种情况下,你就不应该收到ORA-1631错误。试试用如下方式尝试创建一个不同的表空间:

  CREATE TABLESPACE TBS2 DATAFILE 'C:....XXX01.dbf' SIZE 500M REUSE

  EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

  然后将这个表用如下的语句移动到新的表空间去:

  ALTER TABLE TOM.ST MOVE TABLESPACE TBS2;

  你再也不会遇到这些错误消息了。

  Error inserting new record in table

  I created this tablespace:

  CREATE TABLESPACE TBS DATAFILE 'C:....XXX01.dbf' SIZE 500M REUSE

  DEFAULT STORAGE (INITIAL 10240 NEXT 10240 MINEXTENTS 1 MAXEXTENTS 256

  PCTINCREASE 0) ONLINE;

  When I try to insert a new record in table ST I get this error:

  ORA-01631:maxextents(256) reached in table TOM.ST

  ORA-01631 max # extents (string) reached in table string.string

  Cause A table tried to extend past MAXEXTENTS.

  Action If MAXEXTENTS is less than the system maximum, raise it. Otherwise, you must re-create with larger initial, next or PCTINCREASE parameters.

  ORA-01631 max # extents (string) reached in table string.string

  Cause A table tried to extend past MAXEXTENTS.

  Action If MAXEXTENTS is less than the system maximum, raise it. Otherwise, you must re-create with larger initial, next or PCTINCREASE parameters.

  I tried to increase maxextents: (user=system)

  but I get this error:

  ERROR at line 1:

  ORA-25150: ALTERING of extent parameters not permitted

  ORA-25150 ALTERING of extent parameters not permitted

  Cause An attempt was made to alter the extent parameters for a segment in a tablespace with autoallocate or uniform extent allocation policy.

  Action Remove the appropriate extent parameters from the command.

  ORA-25150 ALTERING of extent parameters not permitted
 Cause An attempt was made to alter the extent parameters for a segment in a tablespace with autoallocate or uniform extent allocation policy.

  Action Remove the appropriate extent parameters from the command.

  also

  alter tablespace TBS default storage (maxextents 500);

  ERROR at line 1:

  ORA-25143: default storage clause is not compatible with allocation policy

  ORA-25143 default storage clause is not compatible with allocation policy

  Cause Default storage clause was specified for a tablespace with AUTOALLOCATE or UNIFORM policy.

  Action Omit the storage clause.

  ORA-25143 default storage clause is not compatible with allocation policy

  Cause Default storage clause was specified for a tablespace with AUTOALLOCATE or UNIFORM policy.

  Action Omit the storage clause.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/34329/viewspace-917869/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/34329/viewspace-917869/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值