1、查詢Oracle Server端的字符集:
創(chuàng)新互聯(lián)專注于龍圩企業(yè)網(wǎng)站建設,響應式網(wǎng)站設計,電子商務商城網(wǎng)站建設。龍圩網(wǎng)站建設公司,為龍圩等地區(qū)提供建站服務。全流程按需定制,專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務
有很多種方法可以查出oracle server端的字符集,比較直觀的查詢方法是以下這種:
SQLselect userenv(‘language’) from dual;
結果如下:AMERICAN _ AMERICA. ZHS16GBK。
2、查詢dmp文件的字符集:
用Oracle的exp工具導出的dmp文件也包含了字符集信息,dmp文件的第2和第3個字節(jié)記錄了dmp文件的字符集。如果dmp文件不大,比如只有幾M或幾十M,可以用UltraEdit打開(16進制方式),看第2第3個字節(jié)的內(nèi)容,如0354,然后用以下SQL查出它對應的字符集:
SQL select nls_charset_name(to_number('0354','xxxx')) from dual;
ZHS16GBK
3、查詢Oracle client端的字符集:
這個比較簡單。在Windows平臺下,就是注冊表里面相應OracleHome的NLS_LANG。還可以在Dos窗口里面自己設置,比如:
set nls_lang=AMERICAN_AMERICA.ZHS16GBK
如果檢查的結果發(fā)現(xiàn)Server端與Client端字符集不一致,請統(tǒng)一修改為同Server端相同的字符集。
oracle 查詢字段的byte長度
oracle獲取字符串長度函數(shù)length()和hengthb()
lengthb(string)計算string所占的字節(jié)長度:返回字符串的長度,單位是字節(jié)
length(string)計算string所占的字符長度:返回字符串的長度,單位是字符
查看數(shù)據(jù)庫字符集,涉及三方面的字符集:
查詢oracle server端的字符集 :比較直觀的查詢方法是以種:?SQLselectuserenv(‘language’) from dual;?結果類似如下:AMERICAN _ AMERICA. ZHS16GBK?
如何查詢dmp文件的字符集 :用oracle的exp工具導出的dmp文件也包含了字符集信息,dmp文件的第2和第3個字節(jié)記錄了dmp文件的字符集。如果dmp文件不大,比如只有 幾M或幾十M,可以用UltraEdit打開(16進制方式),看第2第3個字節(jié)的內(nèi)容,如0354,然后用以下SQL查出它對應的字符集:?SQL select nls_charset_name(to_number('0354','xxxx')) from dual;?如果dmp文件很大,比如有2G以上(這也是最常見的情況),用文本編輯器打開很慢或者完全打不開,可以用以下命令(在unix主機上):?cat exp.dmp |od -x|head -1|awk '{print $2 $3}'|cut -c 3-6 ,然后用上述SQL也可以得到它對應的字符集。?
查詢oracle client端的字符集:在windows平臺下,就是注冊表里面相應OracleHome的NLS_LANG。還可以在dos窗口里面自己設置,比如:set nls_lang=AMERICAN_AMERICA.ZHS16GBK ,這樣就只影響這個窗口里面的環(huán)境變量。?在unix平臺下,就是環(huán)境變量NLS_LANG。
1、SELECT value$ FROM sys.props$ WHERE name = 'NLS_CHARACTERSET' ;
--查詢oracle 相關參數(shù)
2、SELECT * FROM NLS_DATABASE_PARAMETERS ;
擴展資料:
Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系數(shù)據(jù)庫管理系統(tǒng)。它是在數(shù)據(jù)庫領域一直處于領先地位的產(chǎn)品。
可以說Oracle數(shù)據(jù)庫系統(tǒng)是目前世界上流行的關系數(shù)據(jù)庫管理系統(tǒng),系統(tǒng)可移植性好、使用方便、功能強,適用于各類大、中、小、微機環(huán)境。它是一種高效率、可靠性好的 適應高吞吐量的數(shù)據(jù)庫解決方案。
ORACLE數(shù)據(jù)庫系統(tǒng)是美國ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務器(CLIENT/SERVER)或B/S體系結構的數(shù)據(jù)庫之一。
比如SilverStream就是基于數(shù)據(jù)庫的一種中間件。ORACLE數(shù)據(jù)庫是目前世界上使用最為廣泛的數(shù)據(jù)庫管理系統(tǒng),作為一個通用的數(shù)據(jù)庫系統(tǒng),它具有完整的數(shù)據(jù)管理功能;作為一個關系數(shù)據(jù)庫,它是一個完備關系的產(chǎn)品;作為分布式數(shù)據(jù)庫它實現(xiàn)了分布式處理功能。
但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。
Oracle數(shù)據(jù)庫最新版本為Oracle Database 12c。Oracle數(shù)據(jù)庫12c?引入了一個新的多承租方架構,使用該架構可輕松部署和管理數(shù)據(jù)庫云。
此外,一些創(chuàng)新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個數(shù)據(jù)庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數(shù)據(jù)和對數(shù)據(jù)分層。
這些獨一無二的技術進步再加上在可用性、安全性和大數(shù)據(jù)支持方面的主要增強,使得Oracle數(shù)據(jù)庫12c?成為私有云和公有云部署的理想平臺。
參考資料:Oracle數(shù)據(jù)庫--百度百科
select * from 表名 where?length(nvl(字段,''))=1?order by 字段
例如:一個列里面有長短不一的數(shù)字如何判斷數(shù)字的長度
如:I_CODE
使用select?I_CODE?from?tablename ?where?length(I_CODE)=4。即可算出答案
另外,一個漢字在Oracle數(shù)據(jù)庫里占多少字節(jié)跟數(shù)據(jù)庫的字符集有關,UTF8時,長度為三。select lengthb('飄') from dual?? 可查詢漢字在Oracle數(shù)據(jù)庫里占多少字節(jié)
擴展資料
查詢包含DNO字段,且字段長度10的表,使用如下函數(shù)
select * from user_tab_cols t where t.column_name like '%DNO%' and data_length 10;
有時候數(shù)據(jù)庫中有很多表包含同一個字段時,要修改表字段長度,可以通過這個查詢哪些需要修改。
參考資料 百度百科——Oracle視圖