发布于 2015-05-26 07:57:37 | 1588 次阅读 | 评论: 1 | 来源: PHPERZ

这里有新鲜出炉的精品教程,程序狗速度看过来!

Oracle关系数据库管理系统

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。


问题描述

今天在自己的电脑上在给数据库导入表结构及数据时报1659错误,错误如下:

  IMP-00017:由于oracle错误1659,以下语句失败:

  “create table “T_TELETE”

  ..........

  IMP_00003: 遇到 ORACLE 错误 1659ORA-01659: 无法分配超出 6 的 MINEXTENTS (在表空间 HWITS_1中)

经大量查找。。。。。。发现

  从公司导出的dmp文件初始化分配表空间的值过大造成的!!!

那么,就要修改自己本地的表空间大小了。

修改表空间大小:

ALTER DATABASE  DATAFILE 'D:\oraclexe\oradata\WWW\UTDP.DBF'(表空间存储路径) AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED;

查询表空间是否具有扩展能力:
SELECT T.TABLESPACE_NAME,D.FILE_NAME,D.AUTOEXTENSIBLE,D.BYTES,D.MAXBYTES,D.STATUS
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T.TABLESPACE_NAME =D.TABLESPACE_NAME
ORDER BY TABLESPACE_NAME,FILE_NAME;

导入文件时,有时会出现

解决方法

此种情况,别急,在数据库中输入:

 select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 
就能查询出未导入的命令:

那么,再把这些命令复制粘贴出来,在逐条执行一遍就ok了!

以上内容,仅供参考!

如有错误,欢迎指正!



最新网友评论  共有(1)条评论 发布评论 返回顶部
nvi 发布于2016-09-12 04:57:56
100个赞,感谢楼主.
支持(0)  反对(0)  回复

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务