如何在 SqlServer CE 中使用 utf8 对字符串进行勒索?
要保存"ą"、"ę"等语言特殊字符?
@Edit:
我使用EntityFramework,当db是mysqlserver数据时,数据具有特殊字符,如"ą","ę",但是当我切换到SqlServerCompact时,数据丢失了特殊字符。
SQL Server CE支持UTF-16的nvarchar
和ntext
。基本上:将您的数据作为 UTF-16 存储在nvarchar
列中,您将被设置。方便的是,.NET 也主要是 UTF-16(char
和string
类型实现为 UTF-16(,所以这很好。
如果你绝对必须使用UTF-8,你将不得不使用varbinary
/image
,这意味着你失去了数据库的大部分有用功能。您将能够存储和检索,但过滤和其他操作要困难得多。
存储数据时,请确保对文字使用N'foo'
语法,或 ADO.NET DbType.String
( nvarchar
(/DbType.StringFixedLength
( nchar
( 的参数,而不是DbType.AnsiString
( varchar
(/DbType.AnsiStringFixedLength
( char
(