識別子は、
utf8
を使用してmysql
データベーステーブル (user
、db
など) に格納されますが、識別子には Basic Multilingual Plane (BMP) の文字だけを含めることができます。識別子では補助文字は許可されません。-
ucs2
、utf16
、utf16le
、およびutf32
文字セットには次の制約があります。これらはクライアント文字セットとして使用できません。つまり、
SET NAMES
またはSET CHARACTER SET
では機能しません。(セクション10.1.4「接続文字セットおよび照合順序」を参照してください。)現在、
LOAD DATA INFILE
を使用して、これらの文字セットを使用するデータファイルをロードできません。FULLTEXT
インデックスは、これらのいずれかの文字セットを使用するカラムでは作成できません。ただし、インデックスのないカラムではIN BOOLEAN MODE
検索を実行できます。ベースとなるシステム呼び出しではゼロバイトで終了する文字列が要求されるため、これらの文字セットを含む
ENCRYPT()
の使用はお勧めしません。
REGEXP
およびRLIKE
演算子はバイト単位で機能するため、マルチバイトセーフではなく、マルチバイト文字セットを使用すると想定外の結果が生成される可能性があります。さらに、これらの演算子ではそのバイト値に基づいて文字が比較されるため、アクセント記号付き文字は、指定された照合順序では等しいとみなされた場合でも、等しいとして比較されない可能性があります。