sql >> データベース >  >> RDS >> Oracle

SQL国民文字(NCHAR)データ型は本当に何のためにありますか?

    この場合の「NATIONAL」とは、さまざまな国籍に固有の文字を意味します。極東の言語は特に文字が多すぎるため、1バイトではすべてを区別するのに十分なスペースがありません。したがって、英語(ASCII)のみのアプリまたは英語のみのフィールドがある場合は、 、文字ごとに1バイトしか許可されない古いCHAR型とVARCHAR型を使用して回避できます。

    そうは言っても、ほとんどの場合、NCHAR/NVARCHARを使用する必要があります。データ内の複数の言語をサポートする(またはサポートする可能性がある)必要がないと思われる場合でも、英語のみのアプリでさえ、外国語の文字を使用したセキュリティ攻撃を適切に処理できる必要があります。

    私の意見では、古いCHAR / VARCHARタイプが依然として好まれる唯一の場所は、頻繁に参照されるASCIIのみの内部コードと、区別をサポートするSql Serverなどのプラットフォーム上のデータ(<コードと同等のデータ)です。>列挙型 C ++やC#などのクライアント言語で。



    1. Psycopg2は、大規模な選択クエリでメモリを使い果たします

    2. MySQLで16進数を2進数に変換する

    3. 作業単位のクローンでJPANullまたはゼロの主キーが検出されました

    4. mysqlでvarbinaryからchar/varcharに変換する方法