分段删:
DELETE FROM TUG2HOST
WHERE PRODDATE = '20020829'  AND SENDFLAG = 1 and rownum < 1000;
commit;

解决方案 »

  1.   

    首先看看你有没有delate的权限,然后看看表的状态,有没有约束什么的
      

  2.   

    Cause: Failure occurred when trying to extend rollback segment.Action: This is normally followed by another error message that caused the failure. You may take the rollback segment offline to perform maintenance. Use the ALTER ROLLBACK SEGMENT OFFLINE command to take the rollback segment offline. 
      

  3.   

    估计是你的数据库操作的数据量比较大的缘故。
    你使用系统默认的回滚段size太小了。
    这种情况,你应该自己建立一个回滚段,使用的时候。set online.
    搞一个足够大的就可以了。
      

  4.   

    rbs99就是我们上一个项目自己建立的回滚段,因为客户说数据量最大可能到2G左右。
    alter ROLLBACK SEGMENT RBS99 ONLINE
    alter ROLLBACK SEGMENT RBS99 OFFLINE
      

  5.   

    建一个大的回滚段吧。不行就把回滚段文件增大。alter database datafile 'rbsfile' resize ###m;
      

  6.   

    删除表时,回滚段太小了,你可以建立一个比较大的回滚段,
    为删除表的事务指定使用该回滚段即可。如增大RB3的大小,

      set transaction use rollback segment rb3;
      delete from .....;
    这样就可以了
      

  7.   

    我觉得可能是回滚段设置太小,无法删除大数据量的表记录,Oracle8.05支持最多8个回滚段始终online,你可以加大表空间设置,可以自己建立回滚段表空间,命名注意:RBS0,RBS1,RBS2...RBS8,系统默认每个回滚段是4M,你可以加大,无限扩展,只要你的硬盘空间足够。
    在Oracle8.05可以在菜单:storage manager中设置
    在Oracle8i中可以在菜单:dba studio中设置
    也可以用命令设置了