db2 在IBM Data Studio中是否有记录SQL查询的方法?

kcugc4gi  于 12个月前  发布在  DB2
关注(0)|答案(1)|浏览(149)

有没有一种方法可以从IBMDataStudio中检索发送到IBMDB 2数据库的SQL查询?
我需要对绑定到AS 400应用程序的IBMDb 2数据库进行逆向工程,但不幸的是,几乎没有文档,而且许多模式/表都很模糊。
我曾试图从客户端嗅探网络,因为我听说它以明文方式与服务器(通过telnet)通信,但不幸的是,SQL不是在客户端生成的。
由于我的解决方案快用完了,我正在探索IBM Data Studio作为最后的机会。有谁知道这是否可能?
先谢谢你了!!

dfuffjeb

dfuffjeb1#

您的问题非常令人困惑......并且似乎表明您缺乏有关IBM i平台及其前身AS/400的基本知识。
您提到了Telnet,因此我假设现有的应用程序是一个绿色屏5250应用程序。是的,那只是一个“愚蠢的”终端仿真。5250客户端没有使用SQL。
假设应用程序使用SQL,它将是服务器端的,并嵌入到正在运行的DB或RPG/COBOL程序中。它可能主要是本地记录级访问(RLA)读取和写入。
使用的表也可能不是外部定义的。这意味着,就DB所知,表由单个固定长度的字符字段组成。您必须检查RPG/COBOL程序,以确定数据实际上是如何存储在记录中的。即使对于AS/400应用程序,我也不希望这样,因为最初的AS/400支持外部描述的文件(表)。但是如果您的应用程序是从AS/400的前身之一迁移而来的……那么它的可能性更大。
假设表是外部定义的,SELECT * FROM MYLIB.MYTABLE将返回单独列中的数据。我认为IBMDataStudio除了向您指出catalog views之外不会做更多的事情,这些都有很好的文档记录。
假设您实际上并没有处理AS/400,而是有一个使用SQL的现代应用程序,运行在一个现代POWER服务器上,该服务器运行最新版本的IBMi。那么,关于捕获SQL查询的问题的答案是,服务器有lots of tools built in来管理SQL性能。包括一个自动计划缓存,您可以使用IBM的Access Client Solutions查看最近的查询
但是,我不希望5250应用程序完全或大部分基于SQL。
如果您要做的只是对DB进行逆向工程,那么如果表是外部定义的,那么这应该是可以做到的。尽管你可能会发现表/索引没有定义唯一(主)键。
如果您试图对整个应用程序进行逆向工程,那么如果不访问RPG/COBOL源代码,这将非常困难。

相关问题