0

我在 Firebird 2.1 DB Varchar 字段中存储 UTF-8 字符时遇到问题。

字段定义没有指定字符集。字符集总是在连接字符串中传递。

所有字段的字符集都设置为 NONE。连接字符串是

<add name="ConnectionString" 
  connectionString="character set=UTF8;initial catalog=&quot;c:\temp\data.FDB&quot;;user id=SYSDBA;password=;connection lifetime=15;pooling=true;MinPoolSize=0;MaxPoolSize=50;data source=localhost"
  providerName="FirebirdSql.Data.FirebirdClient" /> 

.NET 驱动程序版本为 2.1.0.0。Firebird 本身的版本是 2.1.3.18185。

据我了解,这将覆盖字段本身的任何设置,但是我在存储字符时遇到了问题,例如数据库中的右单引号 (ALT + 0146)。它总是作为一个奇怪的问号字符出现。

在指责 ASP.NET 网站几天后,我发现如果我在字段(域)本身上将字符集设置为 UTF-8,那么它似乎可以解决问题。

这个对吗?

我一直认为在连接字符串中传递字符集会做同样的事情。

4

0 回答 0