在SQL Plus中改變字型和字符集

2021-04-13 08:44:57 字數 1692 閱讀 3769

問題描述

有時,sql*plus中顯示的資料字型太小,怎樣改變sql*plus中顯示的字型大小?

問題分析

oracle中所使用的sql*plus有兩種,一種是基於ms-dos的sql*plus,其對應的命令程式為sqlplus.exe,存放在d:/oracle/product/10.2.0/db_1/bin/目錄下。另乙個是基於windows的sqlplusw.exe。由於字型的改變對ms-dos環境並無影響,因此,它僅對sqlplusw.exe有效,其主要原因是,在windows環境下啟動sqlplusw.exe時,需要讀取登錄檔,所以,更改字型的大小,只需更改登錄檔資訊即可。

問題解答

具體步驟如下。

步驟1:開啟登錄檔定位於oracle產品所在的入口項:hkey_local_machine/software/oracle/ key_oradb 10g_home1。其中,key_oradb 10g_home1是當前oracle資料庫伺服器安裝的位置,如果安裝了另乙個oracle產品,則會出現home1,依次類推。如圖3-10所示。

圖3-10 登錄檔編輯器

步驟2:在當前登錄檔項下,新增兩個「字串值」。

 ·sqlplus_font,其值為「terminal」。

 ·sqlplus_font_size,其值為14,或其他大小的值,如16、18等。

步驟3:關閉登錄檔,啟動sqlplusw.exe即可生效。

另外,與字型有關的是不同字符集資料的顯示問題。如果要更改在客戶端顯示的字符集,則在ms-dos提示符下,更改引數nls_lang的字符集。例如,將引數nls_lang設定成正體中文(traditional chinese),則命令為:

set nls_lang=traditional chinese_taiwan.zht16mswin950

如果設定成中文簡體(simplified chinese),則命令為:

set nls_lang=simplified chinese_china.zhs16gbk

實際上,登錄檔中nls_lang的引數值並沒有因為上面命令的執行而發生改變,其中的引數值是oracle資料庫所採用的字符集。因此,只能在ms-dos模式下,使用命令set nls_lang=language_territory.character_set來改變每個會話程序當前語言字符集下的顯示內容。這為不同的會話程序中顯示不同語言文字資訊提供了極大的方便。

完成nls_lang引數更改後,便可啟動sql*plus,內容就會正確顯示。如果要永久性地改變nls_lang引數,則開啟「控制面板」→「系統」→「環境變數」,從中建立新的環境變數nls_lang,其值為要更改的值,例如日文值為japanese_japan.utf8。重新啟動系統即可生效。

使用administration assistant for windows也可以完成對oracle資料庫字符集以及在sql*plus中改變字型等設定。首先,啟動administration assistant for windows,然後,將各級目錄展開,在「oracle主目錄」下找到「oradb 10g_home1」,在其上單擊滑鼠右鍵,在出現的下拉列表中選擇「屬性」,出現對話方塊,如圖3-11所示。從中選擇要編輯修改的項,修改其引數值即可。

圖3-11有關oradb 10g_home1的屬性

在SQL Plus中啟動和關閉oracle資料庫

關閉資料庫 與資料庫啟動一樣,有幾個可供選擇的選項用於關閉資料庫。無論在什麼情況下,讀者都需要弄清楚這些關閉選項 關閉資料庫的語法是 shutdown normal transactional immediate abort 注意 如果不在windows服務中事先關閉oracledbcontrols...

Ubuntu中字型的改變

1.sudo dpkg reconfigure console setup 2.彈出 configuring console setup 介面,選擇適當的編碼格式,我們一般選擇預設的utf 8,選擇ok 3.在接下來的介面裡選擇字型,可以依次嘗試,我選擇預設的latin1 and latin5 we...

matplotlib中改變字型的方法

方法一 匯入字型檔案my font font manager.fontproperties fname r c windows fonts 方正粗黑宋簡體.ttf 1 注 在使用時需要加字型引數 匯入字型檔案時如果出錯可以看此文oserror errno 22 invalid argument u2...