从 C#/ODBC 枚举 iSeries DB2 中的表
Enumerate tables in iSeries DB2 from C#/ODBC
我需要枚举所有 table(我的意思是获取模式列表和 table 名称字符串)和 iSeries DB2 数据库中的视图(我相信版本 7,但我可能是错误的),我有一个 ODBC 连接。我试过了:
show tables
select * from syscat.tables
但是,服务器分别响应 show tables
的未知命令和 select 的未知 table 命令:
ERROR [42S02] [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0204 - TABLES in SYSCAT type *FILE not found
我知道可以通过某种方式枚举 tables,因为 Visual Studio 从服务器资源管理器中进行枚举。我可能忽略了一些非常明显的东西,但我并不真正精通 ODBC。谢谢
根据 manual,您可能想要使用
select table_name from sysibm.sqltables
要获取 table 个名字,请尝试
select * 来自 QSYS2.SYSTABLES
我需要枚举所有 table(我的意思是获取模式列表和 table 名称字符串)和 iSeries DB2 数据库中的视图(我相信版本 7,但我可能是错误的),我有一个 ODBC 连接。我试过了:
show tables
select * from syscat.tables
但是,服务器分别响应 show tables
的未知命令和 select 的未知 table 命令:
ERROR [42S02] [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0204 - TABLES in SYSCAT type *FILE not found
我知道可以通过某种方式枚举 tables,因为 Visual Studio 从服务器资源管理器中进行枚举。我可能忽略了一些非常明显的东西,但我并不真正精通 ODBC。谢谢
根据 manual,您可能想要使用
select table_name from sysibm.sqltables
要获取 table 个名字,请尝试 select * 来自 QSYS2.SYSTABLES