VarChar字段中的Firebird UTF-8存储问题

时间:2015-09-28 16:07:24

标签: utf-8 firebird2.1

我在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,那么它似乎可以解决问题。

这是对的吗?

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

0 个答案:

没有答案