Help us understand the problem. What is going on with this article?

Oracle Database の DUMP関数 と CONVERT関数 で 文字列のバイトコードを調べる。

More than 3 years have passed since last update.

はてぶコメントで

【「野球」に対応するEUC文字コードは「cceeb5e5」なのが判らん。】

と頂いたので、書くやで彡(゚)(゚)

文字コードのバイトコードは、Oracle Database だと DUMP関数 で
確認できます。AL32UTF8環境で「野球」のバイトコードを調べると
↓(e9878ee79083)のようになります。

SET LINESIZE 170
SET PAGESIZE 100
COLUMN PARAMETER FORMAT A30
COLUMN VALUE FORMAT A30
SELECT * FROM V$NLS_PARAMETERS WHERE PARAMETER LIKE '%CHARACTERSET%';

PARAMETER                      VALUE                              CON_ID
------------------------------ ------------------------------ ----------
NLS_CHARACTERSET               AL32UTF8                                0
NLS_NCHAR_CHARACTERSET         UTF8                                    0

-- '野球' の AL32UTF8 の バイトコード
SELECT DUMP('野球', 16) FROM DUAL;

DUMP('野球',16)
-------------------------------
Typ=96 Len=6: e9,87,8e,e7,90,83

文字コードの変換はCONVERT関数で出来るので、CONVERT関数と
DUMP関数を組み合わせると「野球」のバイトコードが確認できます。

-- '野球' の JA16EUC の バイトコード
SELECT DUMP(CONVERT('野球', 'JA16EUC' , 'AL32UTF8'), 16) FROM DUAL;

DUMP(CONVERT('野球','JA1
------------------------
Typ=1 Len=4: cc,ee,b5,e5

-- '野球' の JA16SJIS の バイトコード
SELECT DUMP(CONVERT('野球', 'JA16SJIS', 'AL32UTF8'), 16) FROM DUAL;

DUMP(CONVERT('野球','JA1
------------------------
Typ=1 Len=4: 96,ec,8b,85

「野球」に対応するバイトコードは、JA16EUCだと「cceeb5e5」、
JA16SJISだと「96ec8b85」なのが判るやで!

野球元年や!彡(゚)(゚) (しつこい) マニュアルは↓やで。

ora_gonsuke777
やきうのお兄ちゃんなITエンジニア、主にOracle Database廻りを担当。日本オラクル株式会社 柴田 歩 ※本ブログに記述された見解は私個人の見解であり、所属する会社&組織の見解を必ずしも反映したものではありません。ご了承ください。
http://d.hatena.ne.jp/gonsuke777/
oracle
Oracle Cloudは、最先端の機能をSoftware as a Service、Platform as a ServiceおよびInfrastructure as a ServiceおよびData as a Serviceとして提供します。
https://cloud.oracle.com/ja_JP/home
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした