现存储生僻汉字时,存为了?,分析后是 varchar 字段字符集不支持 Unicode,使用的简体中文字符集。
现改为 nvarcahr类型即可。
当需要存储生僻汉字时,使用 nvarchar类型,该类型会存储 Unicode 字符数据的整个范围。
而varchar 仅会存储该排序规则的相应代码页支持的字符子集(当排序不是UTF-8 的排序规则时,国内有些是 简体中文的编码,就会无法存储生僻字)。
varchar:
字符数据类型 char(大小固定)或 varchar(大小可变)。 从 SQL Server 2019 (15.x) 起,使用启用了 UTF-8 的排序规则时,这些数据类型会存储 Unicode 字符数据的整个范围,并使用 UTF-8 字符编码。 若指定了非 UTF-8 排序规则,则这些数据类型仅会存储该排序规则的相应代码页支持的字符子集。
nvarchar:
字符数据类型 nchar(大小固定)或 nvarchar(大小可变)。 从 SQL Server 2012 (11.x) 起,使用启用了补充字符 (SC) 的排序规则时,这些数据类型会存储 Unicode 字符数据的整个范围,并使用 UTF-16 字符编码。 若指定了非 SC 排序规则,则这些数据类型仅会存储 UCS-2 字符编码支持的字符数据子集。