Oracle PL/SQL: 得知 Character 的位元資料 (8 進位, 10 進位, 16 進位)

在 Oracle Database 中, 如何得知 Character 的位元資料 (8 進位 / 10 進位 / 16 進位) ?

可以利用 dump 函數得知.

 語法
dump( '字元', 8 / 10 / 16 )

-- 第二個參數沒有設定,預設為 10 進位

 範例
select ascii('﹑') from dual;
-- 結果: 15711652

select dump('﹑') from dual;
-- 結果: Typ=96 Len=3: 239,189,164 (字元長度 3 碼,由 239、189、164 組成)

select dump('﹑',16) from dual;
-- 結果: Typ=96 Len=3: ef,bd,a4 (字元長度 3 碼,由 ef、bd、a4 組成)

select utl_raw.cast_to_varchar2(hextoraw('efbda4')) from dual;
-- 結果: ﹑
Related Posts Plugin for WordPress, Blogger...