【翻译】varchar2和nvarchar2的区别

●varchar2(*)
*は納める事が可能な最大バイト数。
1〜4000バイトの間で指定可能。
*是指最大可以容纳的字节数。
可以指定1~4000字节。


納められた値がマルチバイトの場合、データベース上では、文字数×2バイトの領域が使用される。
容纳的值若为多字节,则占用数据库 文字数×2字节 的空间。
※データベースのDatabase Charactersetが Unicode(UTF8) で定義されている場合、文字数×3バイトの領域が使用される。
※数据库的Database Characterset定义为Unicode(UTF8)的话,则占用文字数×3字节 的空间

varchar2は、バーチャファイター2の略。
varchar2是 Virtua Fighter2的省略(作者在搞幽默)。
●nvarchar2(*)
*は納める事が可能な最大文字数。
1〜4000文字の間で指定可能。
*指最大可以容纳的文字数。
可以指定1到4000个文字。


カラムに納める値が英数字でも日本語でも、*がカラムに納めることが可能な最大文字数となる。

字段里容纳的值不管是 英数字(英文字母或数字)或汉字,*都是指字段里可以容纳的最大文字数。

nは、Nintendo(ニンテンドー)ではなく…、National(各国語)の意。
n不是Nintendo(任天堂)……而是National(各国语言)之意。

納められた値がマルチバイトの場合、データベース上では、文字数×2バイトの領域が使用される。
容纳的值若为多字节,则占用数据库 文字数×2字节 的空间。
※データベースのNational Charactersetが Unicode(UTF8) で定義されている場合、文字数×3バイトの領域が使用される。
※数据库的Database Characterset定义为Unicode(UTF8)的话,则占用文字数×3字节 的空间
⇒マルチバイト・キャラクタセットについての参考サイト

●データベースのキャラクタセットの確認方法
●数据库字符集的确认方法
SELECT NLS_CHARSET_NAME(NLS_CHARSET_ID('CHAR_CS')),
             NLS_CHARSET_NAME(NLS_CHARSET_ID('NCHAR_CS')) FROM DUAL;



または
或者使用
SELECT PARAMETER, VALUE
             FROM NLS_DATABASE_PARAMETERS
             WHERE PARAMETER IN ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET');

を使用する。

NLS_CHARACTERSET…データベース・キャラクタセット(数据库字符集)

NLS_NCHAR_CHARACTERSET…各国語キャラクタセット(各国语言的字符集)

你可能感兴趣的:(sql)