从IntersystemsCaché数据库导出

时间:2011-02-10 09:58:59

标签: database intersystems-cache

我有一个基于IntersystemsCaché数据库的产品,我看不到类,没有模式,没有表,只有全局变量。有没有聪明的方法从这些全局变量中导出数据并获得“人类可读的结构”?

7 个答案:

答案 0 :(得分:2)

第一个问题是......什么版本的Caché? 第二个问题是......你有什么工具可以访问?终端,工作室,管理门户??

如果数据在表/类中,您应该能够通过ODBC访问它,至少。 如果没有任何表/类,则数据可能在Globals中。

如果数据在Globals(持久性稀疏数组存储)中,如果您不习惯常见模式,它们可能看起来有点奇怪。

即使它在Globals中,也可以使用自定义映射存储定义类,以使它们通过SQL以类似于表的方式显示。

缓存非常灵活,但可能是一个陡峭的学习曲线。 : - (

答案 1 :(得分:2)

Intersystems Cache中的Globals是无架构类型的存储,因此您可以拥有的最佳“人类可读”格式是System Management Portal中的格式。

其他选择包括:   *终端中的zw命令   *终端

中的d ^%G命令

答案 2 :(得分:1)

您是否可以使用Cache Studio查看Cache SMP或连接到数据库?我认为你会在那里找到代码(至少有一堆例程,如果他们不使用类)。使用SMP浏览全局变量是熟悉它们包含的数据集的好方法。在终端会话中,您可以使用zw命令查看全局节点内容:

USER> zw ^GlobalName

http://docs.intersystems.com/cache20082/csp/docbook/DocBook.UI.Page.cls?KEY=RCOS_czwrite

您能提供一些有关您情况的更多信息吗?

答案 3 :(得分:0)

根据全局变量的结构,您可以为它们创建类,并编辑存储映射以指向它们。基于此,您可以继续创建报告/(zen / csp)网页以显示内容。但是,根据数据的复杂程度,这可能会花费数小时到数月的时间:/

答案 4 :(得分:0)

我的经验是使用Navicat工具并将数据库Caché导出到MySQL模式或Postgres中以使用导入工具通过ODBC了解数据库模型。

答案 5 :(得分:0)

ODBC与缓存一起使用。您可以使用ODBC连接将数据导出到另一个结构,例如一组空闲表或文本文件。

答案 6 :(得分:0)

您可以使用名为 D ^%GO 的系统实用程序,它是全局输出。您指定全局变量和您希望它们导出到的文件。还有一个 ^%GI 用于从此文件全局导入