ODBC架构 - 如何查找关系?

时间:2011-02-25 23:59:44

标签: c# odbc foreign-key-relationship relationship

我目前正在开发一个需要通过ODBC连接获取数据库架构的项目。主要是因为源可能是Access数据库,SQL Server,Oracle等。 有了这个,我将把客户架构重新创建到SQL数据库中。

一切正常,但我无法找到检索表之间关系的方法,我在MSDN上找不到任何关于此的内容。如果无法做到这一点,那么我需要了解另一种通用方式。

提前感谢您的任何答案。

1 个答案:

答案 0 :(得分:3)

如果您直接使用ODBC API,则可以使用API​​ SQLForeignKeys。但是,由于您使用的是OdbcConnection对象,因此将API用于此任务将是一个痛苦的过程。好吧,就此而言,直接使用ODBC API可以完成任何工作。

修改我建议使用OdbcConnectionGetSchema'ForeignKeys'作为集合名称。但是,我调查了这一点,不幸的是,OdbcConnection似乎不支持该集合。

除了直接使用SQLForeignKeys(或进行特定于数据库的调用)之外,ODBC似乎不会提供一种简单的方法来收集一般的信息。如果某人能够提供一个很好的机制来回答这个问题,我会删除这个答案,因为此时它唯一的值是指出我不知道如何干净地找到这些信息。