firebird bug,编译程序时格式错误的字符串

时间:2012-02-23 16:11:35

标签: character-encoding firebird firebird2.5

简单示例我收到错误格式错误的字符串。怎么解决这个? 我使用Firebird 2.5,数据库中的字符集为none。

set term ^ ;


create or alter procedure test4
as
declare s varchar(20);
begin

s='öööööáé';
END^

set term ; ^

我在FlameRobin和isql中尝试了这个,结果相同。

我使用了设置名称win1250。没效果。

2 个答案:

答案 0 :(得分:1)

我建议你不要在任何数据库中使用charset none,对Firebird也是如此。

即使应该使用Flamerobin进行转换,我建议您使用所需的字符集重新创建数据库,并使用编码的字符集将数据从旧数据库“泵”到新数据库。像fbclone这样的工具可以完成这项工作。

关于Firebird和charset here

的其他有趣链接

答案 1 :(得分:0)

发生在我身上的事情;

我使用了ems sql manger firebird lite。

我的db信息就像这样 默认字符集:utf8 默认排序规则:unicode_ci_ai

我的连接charset没有; 我试图插入

INSERT INTO CARI  (CARI_ID, CARI_ADI, CARI_KOD    )
VALUES ('8', 'FİLA UNİCODE_TEXT', 'FİŞA' );

然后我得到格式错误的字符串。

简称:

我重新连接到db,设置CHARTSET与DataBases当前Charset(utf 8)相同。 yesSSS!我插入了“包含插入语句的unicode”没有问题。

note :对firebird的帮助太少了。让我们一起改进。