1

我正在尝试将旧的 CACHE.DAT 数据库加载到 Intersystems Cache(2012.1.1 win32 评估)中。我设法创建了一个命名空间和数据库,并且能够查询一些数据库表。

但是,对于其他表,我收到以下错误:

ERROR #5540: SQLCODE -400 Message: Unexpected error occurred: <WIDE CHAR>

文档告诉我,这意味着在需要一个字节字符的地方读取一个多字节字符。我怀疑这可能意味着原始数据库是 UTF-16,而我的新安装使用的是 UTF-8。

我的问题是:有没有办法转换数据库,配置缓存以便它可以处理,或者以另一种方式处理这个问题?

4

2 回答 2

1

也许原始数据库是在 unicode 安装和当前安装 8 位中创建的

Caché 在需要 1 字节字符的地方读取多字节字符。

于 2012-05-05T11:13:57.660 回答
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\  
于 2012-05-05T20:24:50.693 回答