1.查看服務器端編碼
select userenv('language') from dual;
我實際查到的結果為:AMERICAN_AMERICA.ZHS16GBK
2.執行語句 select * from V$NLS_PARAMETERS ,查看第一行中PARAMETER項中為NLS_LANGUAGE 對應的VALUE項中是否和第一步得到的值一樣。
如果不是,需要設置環境變量。
3.設置環境變量
計算機->屬性->高級系統設置->環境變量->新建
設置變量名:NLS_LANG,變量值:第1步查到的值, 我的是 AMERICAN_AMERICA.ZHS16GBK
4.去虛擬機修改注冊表值,修改NLS_LANG為服務器端查詢到的值。修改以后重新啟動一下下圖所示的兩個后台服務
5.重新啟動PLSQL,插入數據正常