从C#/ ODBC枚举iSeries DB2中的表

时间:2015-12-04 10:36:39

标签: c# db2 odbc ibm-midrange

我需要枚举所有表(我的意思是获取模式和表名字符串的列表)和iSeries DB2数据库中的视图(我相信版本7,但我可能是错的)我有一个ODBC连接。我试过了:

show tables
select * from syscat.tables

然而,服务器响应show tables的未知命令和未知表的选择:

  

错误[42S02] [IBM] [System i Access ODBC驱动程序] [DB2 for i5 / OS] SQL0204 - SYSCAT类型中的表格*未找到文件

我知道在某种程度上可以枚举表,因为Visual Studio是从服务器资源管理器中完成的。我可能忽略了一些非常明显但我并不熟悉ODBC的东西。感谢。

2 个答案:

答案 0 :(得分:4)

根据manual,你可能想要使用像

这样的东西
select table_name from sysibm.sqltables

答案 1 :(得分:2)

要获取表名,请尝试 从QSYS2.SYSTABLES

中选择*