我在 sql 2008 和 Progress OpenEdge 10.1b 服务器之间设置了一个链接服务器。
如何获取表模式?
您可以获得所有可用的表:
select * from sysprogress.SYSTABLES;
或者
select * from sysprogress.SYSTABLES_FULL;
您可以获得指定表的所有列:
select * from sysprogress.SYSCOLUMNS where TBL = 'table_name';
或者
select * from sysprogress.SYSCOLUMNS_FULL where TBL = 'table_name';
它仅适用于 DBA 特权用户。
OpenEdge 产品文档中的更多详细信息:https ://community.progress.com/community_groups/openedge_general/w/openedgegeneral/1329.openedge-product-documentation-overview
文档标题:SQL 参考
章:OpenEdge SQL 系统目录表
你可以做一个像
SELECT * FROM LinkedProgressOpenedgeServer.YourDatabase.Owner.TableName WHERE 1=2
那应该只返回没有任何数据的模式。
通常,默认模式名称是 PUB。您可以尝试使用 PUB 架构。