Oracle用資料泵匯入資料包12899的錯誤碼解決方法

velprog發表於2020-11-23

問題:
用資料泵匯入oracle資料庫報錯:ORA-12899: value too large for column SBQHMS (actual: 62, maximum: 60)
在這裡插入我圖片描述
解決方法
1、在plsql中輸入命令: select * from V$NLS_PARAMETERS,檢視字符集,發現字符集並不是ZHS16GBK,於是開始修改字符集。
2、用cmd開啟命令列視窗。

**conn /as sysdba** 

在這裡插入圖片描述
3、

 shutdown immediate;

在這裡插入圖片描述
4、

startup mount

在這裡插入圖片描述
5、

ALTER SYSTEM ENABLE RESTRICTED SESSION;

在這裡插入圖片描述
6、

 ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0

在這裡插入圖片描述
7、

ALTER SYSTEM SET AQ_TM_PROCESSES=0

在這裡插入圖片描述
8、

 alter database open;

在這裡插入圖片描述
9、

ALTER DATABASE CHARACTER SET ZHS16GBK; 

在這裡插入圖片描述
10、

ALTER DATABASE character set INTERNAL_USE ZHS16GBK;

在這裡插入圖片描述
11、

 select * from v$nls_parameters;

這裡會有19行查詢(省略)
在這裡插入圖片描述
12、

shutdown immediate;

在這裡插入圖片描述
13、

 startup

在這裡插入圖片描述
14、再次查詢字符集,看是否更改成功。

 select * from v$nls_parameters;

在這裡插入圖片描述
如是查詢中出現上圖中的字符集便更改完成。

相關文章