如何避免从DBMaster4.1移植数据库到5.2时出现的WARNING63错误?

~ 0 min
2016-03-03 08:02

用户想从DBMaster4.1移植数据库到5.2,首先从DBMaster4.1通过unload命令将数据库导出,然后通过load命令尝试导入到5.2,此时出现了Warning63错误(数据转换成不同类型时,数据被截断)。出现此错误的原因是末尾“换行符”是不可打印的SJIS符。从表空间导出数据,最好的解决方法是 “set unload chartohex on”,但此功能只从DBMaster4.3版本开始支持。

一般情况下,我们认为删除掉有问题记录的末尾"\t”,该 WARNING (63)就会消失。但事实上,即使末尾的"\t”被删除掉,其他的"\t”仍然不能被正确导入。而且一些SJIS日本汉字也不能正确导入。

例如:"能"

日本汉字"能"字的十六进制是945c,"5c"与换行符-"0D0A"的十六进制是一样的,所以"5c"会被认为是换行符-"\"而导致错误。当导入此SJIS日本汉字时,删掉"945c"的末尾变成"94",则会引起一些不同于之前的错误记录数据。

此外,DBMaster4.1版本并不支持“set unload chartohex on”的解决方法,所以用户不能直接从4.1导出数据库再导入到5.2。正确的方法如下:

(1). 升级DBMaster4.1版本至DBMaster4.34。用户可使用DBMaster4.1的DB文件来启动数据库,并且在此之前请先备份DB。

(2). 使用"set unload chartohex on"方法从DBMaster4.34导出数据。

(3). 导入数据到DBMaster5.2。

这样就可以成功实现从DBMaster4.1版本移植数据库到DBMaster5.2版本。

版本:DBMaster5.x

产品:Normal /Bundle

平台:全部

平均分: 0 (0 投票)

你不能对该内容发表评论

标签