解決使用Sql plus插入資料出現的中文亂碼問題

2021-07-09 08:30:46 字數 629 閱讀 5474

現象:使用sqlplus執行指令碼,在對中文進行資料庫插入的時候,出現【??????】。

原因:sqlplus亂碼與作業系統使用者中的nls_lang這個環境變數有關係,如果這個與資料庫字符集不一致的話就會產生亂碼。

解決辦法:

參考文章:

1、如何檢視資料庫字符集:

通過nls_database_parameters查詢

col parameter for a30

col value for a25

select * from nls_database_parameters;

2、nls_characterset對應的【zhs16gbk】即為資料庫使用的字元格式,其對應的nls_lang為【simplified chinese_china.zhs16gbk】。

3、開啟登錄檔進行修改

win+r快捷鍵》--regedit>>hkey_locl_machine>>software>>oralce>>homexx

將nls_lang的值設定為simplified chinese_china.zhs16gbk

4、如果新建資料庫時字元編碼不是

【zhs16gbk】等,導致出現了亂碼,需要重新設定編碼集。

具體參照另外一篇部落格:

sqlplus中如何插入blob資料

在internal這個使用者下給scott使用者授權如下 sql grant create any directory to scott sql grant create any library to scott 在scott這個使用者下執行下述語句 sql create table bfile t...

sqlplus使用教程

sqlplus基本概念 oracle的sqlplus是與oracle資料庫進行互動的客戶端工具,借助sqlplus可以檢視 修改資料庫記錄。在sqlplus中,可以執行sqlplus命令與sql語句。sqlplus是oracle原始資料操作的客戶端,這種命令列的格式有著強大的邏輯性,如果經常使用會對...

Sqlplus使用隨筆

摘要 本編隨筆不定時更新,記錄在使用sqlplus中遇到的問題,提供簡短的解決思路,留作參考。符號解釋 q 出現的問題 e 問題出現所在的環境 t 記錄時間 a 問題解答 q linux終端下sqlplus登陸的是哪個sid e vmware workstation 8,centos6.3 x64 ...