oracle資料庫編碼集
㈠ 一般oracle資料庫用什麼編碼
--查看Oracle資料庫字元集:
select userenv('language') from al;
查詢結果:
SIMPLIFIED CHINESE_CHINA.AL32UTF8
㈡ oracle字元集編碼怎麼修改
oracle資料庫的字元集更改
A、oracle server 端 字元集查詢
select userenv('language') from al
其中NLS_CHARACTERSET 為server端字元集
NLS_LANGUAGE 為 server端字元顯示形式
B、查詢oracle client端的字元集
$echo $NLS_LANG
如果發現你select 出來的數據是亂碼,請把client端的字元集配置成與linux操作系統相同的字元集。如果還是有亂碼,則有可能是資料庫中的數據存在問題,或者是oracle服務端的配置存在問題。
C、server端字元集修改
*****************************************************************
* 更改字元集步驟方法(WE8ISO8859P1 --> ZHS16GBK) *
*****************************************************************
sql>
將資料庫啟動到RESTRICTED模式下做字元集更改:
SQL> conn /as sysdba
Connected.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.
Total System Global Area 236000356 bytes
Fixed Size 451684 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
System altered.
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
System altered.
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
System altered.
SQL> alter database open;
Database altered.
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;
ALTER DATABASE CHARACTER SET ZHS16GBK
*
ERROR at line 1:
ORA-12712: new character set must be a superset of old character set
提示我們的字元集:新字元集必須為舊字元集的超集,這時我們可以跳過超集的檢查做更改:
SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
Database altered.
SQL> select * from v$nls_parameters;
略
19 rows selected.
重啟檢查是否更改完成:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 236000356 bytes
Fixed Size 451684 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL> select * from v$nls_parameters;
略
19 rows selected.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
D、client端字元集修改
在 /home/oracle與 /root用戶目錄下的.bash_profile中
添加或修改 export NLS_LANG="AMERICAN_AMERICA.UTF8" 語句
關閉當前ssh窗口。
㈢ 怎麼設置oracle資料庫的編碼格式
查看及修改oracle編碼格式方法:
1、查看oracle資料庫字元集:
select userenv('language') from al;
查詢結果:
SIMPLIFIED CHINESE_CHINA.AL32UTF8
2、修改oracle資料庫字元集:(在SQL Plus中)
sql> conn / as sysdba;
sql> shutdown immediate;
database closed.
database dismounted.
oracle instance shut down.
sql> startup mount;
oracle instance started.
total system global area 135337420 bytes
fixed size 452044 bytes
variable size 109051904 bytes
database buffers 25165824 bytes
redo buffers 667648 bytes
database mounted.
sql> alter system enable restricted session;
system altered.
sql> alter system set job_queue_processes=0;
system altered.
sql> alter system set aq_tm_processes=0;
system altered.
sql> alter database open;
database altered.
sql> alter database character set internal_use UTF8
sql> shutdown immediate;
sql> startup;
㈣ 怎麼查看oracle資料庫中的的編碼格式
首先查看oracle資料庫的編碼:SQL>select*fromnls_database_parameterswhereparameter='NLS_CHARACTERSET';修改字元集編碼(這會對資料庫的數據有直接的影響,謹慎操作):SQL>conn/assysdbaSQL>shutdownimmediate;SQL>startupmount;SQL>;SQL>ALTERSYSTEMSETJOB_QUEUE_PROCESSES=0;SQL>ALTERSYSTEMSETAQ_TM_PROCESSES=0;SQL>alterdatabaseopen;SQL>_USEZHS16GBK;SQL>shutdownimmediate;SQL>startup
㈤ 話說oracle資料庫編碼ZHS16GBK就是GBK嗎
GBK:中國國家標准字元集,是GB2312擴展
ZHS16GBK:是oracle資料庫中支持GBK的字元集命名方式。
其格式為<語言><bit位><國家字元集>
㈥ oracle 字元集是utf8還是utf-8
oracle 字元集是utf8,沒有utf-8。
㈦ 如何查看Oracle資料庫的字元編碼
1、SELECT value$ FROM sys.props$ WHERE name = 'NLS_CHARACTERSET' ;
(7)oracle資料庫編碼集擴展閱讀:
Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。
可以說Oracle資料庫系統是目前世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。它是一種高效率、可靠性好的 適應高吞吐量的資料庫解決方案。
ORACLE資料庫系統是美國ORACLE公司(甲骨文)提供的以分布式資料庫為核心的一組軟體產品,是目前最流行的客戶/伺服器(CLIENT/SERVER)或B/S體系結構的資料庫之一。
比如SilverStream就是基於資料庫的一種中間件。ORACLE資料庫是目前世界上使用最為廣泛的資料庫管理系統,作為一個通用的資料庫系統,它具有完整的數據管理功能;作為一個關系資料庫,它是一個完備關系的產品;作為分布式資料庫它實現了分布式處理功能。
但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。
Oracle資料庫最新版本為Oracle Database 12c。Oracle資料庫12c引入了一個新的多承租方架構,使用該架構可輕松部署和管理資料庫雲。
此外,一些創新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個資料庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數據和對數據分層。
這些獨一無二的技術進步再加上在可用性、安全性和大數據支持方面的主要增強,使得Oracle資料庫12c成為私有雲和公有雲部署的理想平台。
參考資料:Oracle資料庫--網路
㈧ 如何查看oracle表中數據的編碼
目前我的資料庫環境的字元集是AL32UTF8,那麼把它改成ZHS16GBK
1.首先以sysdba的身份登錄上去 conn /as sysdba
2.關閉資料庫shutdown immediate;
3.以mount打來資料庫,startup mount
4.設置session
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
5.啟動資料庫
alter database open;
6.修改字元集
ALTER DATABASE CHARACTER SET ZHS16GBK;
這會可能會報錯,提示我們的字元集:新字元集必須為舊字元集的超集,這時我們可以跳過超集的檢查做更改:
ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
這條語句就可以了,TERNAL_USE提供的幫助就會使oracle繞過了子集與超集的驗證,這條語句和上面的語句內部操作時完全相同的。
7.關閉,重新啟動
SQL>shutdown immediate;
SQL> startup
當然字元集最好不要輕易修改,因為這會對資料庫的數據有直接的影響,如果是生產環境的話,可能會造成不可估計得損失。
㈨ oracle創建資料庫的時候怎麼設置編碼格式
啟動database configuration assistant,創建資料庫,參照下面的圖釋。
㈩ oracle資料庫的編碼一般為什麼
1、查詢Oracle Server端的字元集:
有很多種方法可以查出oracle server端的字元集,比較直觀的查詢方法是以下這種:
SQL>select userenv(『language』) from al;
結果如下:AMERICAN _ AMERICA. ZHS16GBK。
2、查詢dmp文件的字元集:
用Oracle的exp工具導出的dmp文件也包含了字元集信息,dmp文件的第2和第3個位元組記錄了dmp文件的字元集。如果dmp文件不大,比如只有幾M或幾十M,可以用UltraEdit打開(16進制方式),看第2第3個位元組的內容,如0354,然後用以下SQL查出它對應的字元集:
SQL> select nls_charset_name(to_number('0354','xxxx')) from al;
ZHS16GBK
3、查詢Oracle client端的字元集:
這個比較簡單。在Windows平台下,就是注冊表裡面相應OracleHome的NLS_LANG。還可以在Dos窗口裡面自己設置,比如:
set nls_lang=AMERICAN_AMERICA.ZHS16GBK
如果檢查的結果發現Server端與Client端字元集不一致,請統一修改為同Server端相同的字元集。