我需要将数据从不同的旧数据库迁移到新数据库(在 Firebird 2.5 上使用 IBExpert 创建)。我正在使用FIBPlus 组件。现在我知道旧的 varchars 和 blob 文本在不同的字符集和排序规则中(大多数是 WIN1252)。
DBImport(我从中获取数据的数据库)具有以下属性:
pFIBDBBase.DBName := path_to_the_database_file;
pFIBDBBase.ConnectParams.UserName := 'SYSDBA';
pFIBDBBase.ConnectParams.Password := 'masterkey';
pFIBDBBase.ConnectParams.CharSet := 'NONE';
pFIBDBBase.SQLDialect := 3;
DBNew(新数据库)具有以下属性:
pFIBDBSecond.ConnectParams.UserName := 'SYSDBA';
pFIBDBSecond.ConnectParams.Password := 'masterkey';
pFIBDBSecond.ConnectParams.CharSet := 'UTF8';
pFIBDBSecond.SQLDialect := 3;
我在这里使用 TOndrej 提供的 SQL 获取字段定义
在新数据库中,相同的字段现在是 UTF8。
我的问题是:如果我使用FieldByName ('etc').AsString 从旧数据库中读取,并使用 ParamByName ('etc').AsString 填充新数据库,则字符串和文本 blob 数据是 100%相同(不管 DBImport 字段的字符集)?