我正在尝试将旧的CACHE.DAT数据库加载到Intersystems Cache(2012.1.1 win32评估版)中。我已经设法创建了一个命名空间和数据库,我能够查询一些数据库表。
但是,对于其他表,我收到以下错误:
ERROR #5540: SQLCODE -400 Message: Unexpected error occurred: <WIDE CHAR>
文档告诉我,这意味着读取多字节字符,其中需要一个字节字符。我怀疑这可能意味着原始数据库是UTF-16,而我的新安装是使用UTF-8。
我的问题是:有没有办法转换数据库,配置Cache以便它可以处理,或以另一种方式处理这个问题?
答案 0 :(得分:1)
也许原始数据库是在unicode安装中创建的 和当前安装8位
Caché读取一个多字节字符,其中需要一个1字节的字符。
答案 1 :(得分:0)
你可以从mgr目录发送你的cboot.log吗? 例如我的cboot.log中的第一行
Start of Cache initialization at 02:51:00PM on Apr 7, 2012
Cache for Windows (x86-64) 2012.2 (Build 549U) Sun Apr 1 2012 17:34:18 EDT
Locale setting is rusw
Source directory is c:\intersystems\ensemble12\mgr\utils\