可以为 MySQL 字符数据类型、表达式和文本指定字符集 (Charset)。
字符集映射
字符集映射是为每个 MySQL 字符集定义的,并在字符数据类型转换期间使用。 它指定如何转换特定字符集的字符串数据类型:
转换为国家 SQL Server 字符类型 (NCHAR/NVARCHAR),或
转换为常规 SQL Server 字符类型 (CHAR/VARCHAR)
国家目标数据库字符数据类型为:
nchar
nvarchar
常规目标数据库字符数据类型为:
char
varchar
类型映射仅允许映射到国家字符数据类型。 根据类型映射转换 MySQL 字符数据类型后,将应用字符集映射。
注意
可以在元数据对象资源管理器的每个节点级别定义字符集映射,并表示从 MySQL 读取的所有字符集。
不同节点级别的字符集映射
字符集映射在不同节点级别有所不同,即:
在根元数据节点级别上
在数据库、类别和对象节点级别上
注意
不考虑不同节点级别的映射,所选用于编辑 Charset 映射的选项卡包含三个按钮。
它们是:
- 应用:仅当编辑字符集映射且尚未保存时,才应用用户所做的更改。
- 取消:取消用户所做的更改。 编辑字符集映射但未保存时,将启用该按钮。
- 重置为默认值:将所有映射重置为默认值。
在根元数据节点级别上:字符集映射网格包含字符集网格,其中包含每个字符集的单独列。 网格列包括:
名为“字符集名”的网格的第一列包含字符集名。
名为“字符集说明”的第二列包含字符集说明。
第三列标题为“目标字符集类型”,包含特定字符集的映射设置。 此列的值包括:
CHAR/VARCHAR
NCHAR/NVARCHAR
重要
特定字符集的默认值在 CHAR/VARCHAR 或 NCHAR/NVARCHAR 之后具有前缀“(default)”。
下面提供了 MySQL 数据库与根元数据节点级别的目标数据库之间的字符集映射:
字符集名称 字符集说明 目标字符集类型(默认) big5 Big5 繁体中文 NCHAR/NVARCHAR(默认) dec8 DEC 西欧 CHAR/VARCHAR(默认) cp850 DOS 西欧 CHAR/VARCHAR(默认) hp8 HP 西欧 CHAR/VARCHAR(默认) koi8r KOI8-R Relcom 俄语 CHAR/VARCHAR(默认) 拉丁语 1 cp1252 西欧 CHAR/VARCHAR(默认) latin2 ISO 8859-2 中欧 CHAR/VARCHAR(默认) swe7 7 位瑞典 CHAR/VARCHAR(默认) ascii US ASCII CHAR/VARCHAR(默认) ujis EUC-JP 日语 NCHAR/NVARCHAR(默认) sjis Shift-JIS 日语 NCHAR/NVARCHAR(默认) 希伯来语 ISO 8859-8 希伯来语 CHAR/VARCHAR(默认) tis620 TIS620 泰文 CHAR/VARCHAR(默认) euckr EUC-KR 韩语 NCHAR/NVARCHAR(默认) koi8u KOI8-U 乌克兰语 CHAR/VARCHAR(默认) gb2312 GB2312 简体中文 NCHAR/NVARCHAR(默认) 希腊 ISO 8859-7 希腊文 CHAR/VARCHAR(默认) cp 1250 Windows 中欧 CHAR/VARCHAR(默认) gbk GBK 简体中文 NCHAR/NVARCHAR(默认) latin5 ISO 8859-9 土耳其 CHAR/VARCHAR(默认) armscii8 ARMCII-8 亚美尼亚语 CHAR/VARCHAR(默认) utf8 UTF-8 Unicode NCHAR/NVARCHAR(默认) ucs2 UCS-2 Unicode NCHAR/NVARCHAR(默认) cp866 DOS 俄语 CHAR/VARCHAR(默认) keybcs2 DOS 卡梅尼基捷克斯洛伐克语 CHAR/VARCHAR(默认) macce Mac 中欧 CHAR/VARCHAR(默认) macroman Mac 西欧 CHAR/VARCHAR(默认) cp852 DOS 中欧 CHAR/VARCHAR(默认) latin7 ISO 8859-13 波罗的海 CHAR/VARCHAR(默认) cp 1251 Windows Cyrillic CHAR/VARCHAR(默认) cp 1256 Windows 阿拉伯语 CHAR/VARCHAR(默认) cp 1257 Windows 波罗的海 CHAR/VARCHAR(默认) binary 二进制伪字符集 CHAR/VARCHAR(默认) geostd8 GEOSTD8 格鲁吉亚语 CHAR/VARCHAR(默认) cp932 适用于 Windows 的 SJIS 日语 NCHAR/NVARCHAR(默认) eucjpms 适用于 Windows 的 UJIS 日语 NCHAR/NVARCHAR(默认) 在数据库、类别或对象节点级别上:在数据库、类别或对象节点级别上,字符集映射网格包含的行与根元数据节点级别上的行相同,即:
名为“字符集名”的网格的第一列包含字符集名。
标题为字符集说明的第二列包含字符集说明。
唯一区别是网格第三列中的值。 第三列标题为“目标数据类型”,包含特定字符集的映射设置。 列的值包括:
继承(CHAR/VARCHAR 或 NCHAR/NVARCHAR)
CHAR/VARCHAR
NCHAR/NVARCHAR
重要
- 在 MySQL 数据库与数据库、类别和对象节点级别上的目标数据库之间的字符集映射中,列“目标数据类型”的根目录以外的每个级别的特定字符集的默认值应为“继承”。
- 在网格中,“继承”的值后缀为“(CHAR/VARCHAR)”或“(NCHAR/NVARCHAR)”,具体取决于此特定字符集从父级继承的值。