A、oracle server 端字符集查詢

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名申請(qǐng)、網(wǎng)絡(luò)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、浠水網(wǎng)站維護(hù)、網(wǎng)站推廣。
select userenv('language') from dual
其中NLS_CHARACTERSET 為server端字符集
NLS_LANGUAGE 為 server端字符顯示形式
B、查詢oracle client端的字符集
$echo $NLS_LANG
如果發(fā)現(xiàn)你select 出來的數(shù)據(jù)是亂碼,請(qǐng)把client端的字符集配置成與linux操作系統(tǒng)相同的字符集。如果還是有亂碼,則有可能是數(shù)據(jù)庫中的數(shù)據(jù)存在問題,或者是oracle服務(wù)端的配置存在問題。
C、server端字符集修改
將數(shù)據(jù)庫啟動(dòng)到RESTRICTED模式下做字符集更改:
SQL conn /as sysdba ?Connected.
SQL shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
如果發(fā)現(xiàn)你select 出來的數(shù)據(jù)是亂碼,請(qǐng)把client端的字符集配置成與linux操作系統(tǒng)相同的字符集。如果還是有亂碼,則有可能是數(shù)據(jù)庫中的數(shù)據(jù)存在問題,或者是oracle服務(wù)端的配置存在問題。
.?1.oracle server端字符集查詢? ? ? ? 復(fù)制代碼代碼如下:? ? select userenv('language') from dual;? ? server字符集修改:? ? 將數(shù)據(jù)庫啟動(dòng)到RESTRICTED模式下做字符集更改:??
oracle10g服務(wù)器端是安裝在AIX 6.0系統(tǒng)上,客戶端是安裝在windows server 2008 系統(tǒng)上,客戶端與服務(wù)器已成功連接,但是數(shù)據(jù)庫表里的中文字無法顯示,顯示為“?”,用SQLPLUS查得服務(wù)器端的字符集為AL16uTF16,如何修改該字符集使之支持中文呢?另外oracle10G客戶端的字符集需不需要設(shè)置,如何查看和設(shè)置呢?
查看數(shù)據(jù)庫字符集,涉及三方面的字符集:
查詢oracle server端的字符集 :比較直觀的查詢方法是以種:?SQLselectuserenv(‘language’) from dual;?結(jié)果類似如下:AMERICAN _ AMERICA. ZHS16GBK?
如何查詢dmp文件的字符集 :用oracle的exp工具導(dǎo)出的dmp文件也包含了字符集信息,dmp文件的第2和第3個(gè)字節(jié)記錄了dmp文件的字符集。如果dmp文件不大,比如只有 幾M或幾十M,可以用UltraEdit打開(16進(jìn)制方式),看第2第3個(gè)字節(jié)的內(nèi)容,如0354,然后用以下SQL查出它對(duì)應(yīng)的字符集:?SQL select nls_charset_name(to_number('0354','xxxx')) from dual;?如果dmp文件很大,比如有2G以上(這也是最常見的情況),用文本編輯器打開很慢或者完全打不開,可以用以下命令(在unix主機(jī)上):?cat exp.dmp |od -x|head -1|awk '{print $2 $3}'|cut -c 3-6 ,然后用上述SQL也可以得到它對(duì)應(yīng)的字符集。?
查詢oracle client端的字符集:在windows平臺(tái)下,就是注冊(cè)表里面相應(yīng)OracleHome的NLS_LANG。還可以在dos窗口里面自己設(shè)置,比如:set nls_lang=AMERICAN_AMERICA.ZHS16GBK ,這樣就只影響這個(gè)窗口里面的環(huán)境變量。?在unix平臺(tái)下,就是環(huán)境變量NLS_LANG。
用ascii碼表示,需要一個(gè)chr函數(shù)
如空格就是chr(32),回車chr(13),換行chr(10)
自己查一下就知道了
select chr(32) from dual
查出來的就是一個(gè)空格
declare aa varchar2 := 'wkressssdfdf';
begin
if instr(aa,'s')0 then
dbms_output.put_line('有s字符');
else
dbms_output.put_line('沒有s字符');
end if;
end;
查詢?cè)撟侄?用EXCPTION異常抓取,如果沒異常則說明有該字段。
如果進(jìn)入異常程序塊則說明無該字段。
Oracle Database,又名Oracle RDBMS,或簡(jiǎn)稱Oracle。是甲骨文公司的一款關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它是在數(shù)據(jù)庫領(lǐng)域一直處于領(lǐng)先地位的產(chǎn)品。可以說Oracle數(shù)據(jù)庫系統(tǒng)是目前世界上流行的關(guān)系數(shù)據(jù)庫管理系統(tǒng),系統(tǒng)可移植性好、使用方便、功能強(qiáng),適用于各類大、中、小、微機(jī)環(huán)境。它是一種高效率、可靠性好的 適應(yīng)高吞吐量的數(shù)據(jù)庫解決方案。
ORACLE數(shù)據(jù)庫系統(tǒng)是美國(guó)ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)或B/S體系結(jié)構(gòu)的數(shù)據(jù)庫之一。比如SilverStream就是基于數(shù)據(jù)庫的一種中間件。
ORACLE數(shù)據(jù)庫是目前世界上使用最為廣泛的數(shù)據(jù)庫管理系統(tǒng),作為一個(gè)通用的數(shù)據(jù)庫系統(tǒng),它具有完整的數(shù)據(jù)管理功能;作為一個(gè)關(guān)系數(shù)據(jù)庫,它是一個(gè)完備關(guān)系的產(chǎn)品;作為分布式數(shù)據(jù)庫它實(shí)現(xiàn)了分布式處理功能。但它的所有知識(shí),只要在一種機(jī)型上學(xué)習(xí)了ORACLE知識(shí),便能在各種類型的機(jī)器上使用它。
Oracle數(shù)據(jù)庫最新版本為Oracle Database 12c。Oracle數(shù)據(jù)庫12c?引入了一個(gè)新的多承租方架構(gòu),使用該架構(gòu)可輕松部署和管理數(shù)據(jù)庫云。
select aaa+1 from dual --aaa是你的字符串
不報(bào)錯(cuò)就是純數(shù)字,報(bào)錯(cuò)就不是
名稱欄目:oracle如何確認(rèn)字符,oracle判斷字符串包含字符
鏈接分享:http://chinadenli.net/article5/dsgcjii.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、做網(wǎng)站、網(wǎng)站導(dǎo)航、虛擬主機(jī)、響應(yīng)式網(wǎng)站、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)