oracle異常彙總

weixin_34391854發表於2013-05-06

1. ORA-01536: 超出表空間system的空間限量

賦予使用者許可權和角色如下:

系統許可權              管理選項
create procedure       x
create table  x
create tablespace x
unlimited tablespace x

角色        管理選項  預設值
connect   x  勾選
resource  x  勾選

如果僅僅是測試,可以直接賦予dba角色,跟system表空間大小無關。

2.ORA-30019:自動撤消模式中的回退段操作非法。

D:\oracle\admin\ora1128\pfile\init.ora
###########################################
# 系統管理的撤銷和回退段
###########################################
undo_management=AUTO  
undo_retention=10800
undo_tablespace=UNDOTBS 

找到ora例項名,如ora1128資料夾下面的init.ora檔案,修改undo_management=manual

3.ORA-00979: 不是 GROUP BY 表示式

分組資料:  GROUP BY 子句語法
可以使用GROUP BY 子句將表中的資料分成若干組
在SELECT 列表中所有未包含在組函式中的列都應該包含在 GROUP BY 子句中。
SQL> select employee_id,avg(salary) from employees group by employee_id;
包含在 GROUP BY 子句中的列不必包含在SELECT 列表中
所用包含於SELECT 列表中,而未包含於組函式中的列都必須包含於 GROUP BY 子句中,
否則會報錯:第 1 行出現錯誤:  ORA-00979: 不是 GROUP BY 表示式 注意:
不能在 WHERE 子句中使用組函式(注意)。
可以在 HAVING 子句中使用組函式。

4.ORA-01873: 間隔的前導精度太小

原SQL:select trunc(sysdate) + interval '100' day from dual;

新SQL:select TO_CHAR(SYSDATE + INTERVAL '100' DAY(3), 'YYYYMMDD') from dual;

 

相關文章