如何通过ODBC查询多个数据库文件

本文关键字:数据库 文件 查询 何通过 ODBC | 更新日期: 2023-09-27 18:01:27

当我使用ODBC查询FileMaker 11服务器时,看起来我的查询一次只能从一个数据库检索数据。

我想查询一个数据库中的数据,但只返回在另一个数据库中有一些相关数据的记录(在相同的FileMaker服务器上)。我知道如何编写普通的join,但我不知道如何跨多个数据库这样做。

这可能吗?如果是这样,你能提供一个小的SQL查询示例或代码片段(最好是c#)吗?

如何通过ODBC查询多个数据库文件

FileMaker ODBC查询,与ExecuteSQL (FQL)语句相同,基于放置在"Manage Database"关系图中的表发生。

要在查询中使用来自另一个FileMaker文件(数据库、DSN)的表,请将该文件添加到目标文件的"外部数据源"中,并将需要查询的表的"表发生"放入目标文件的"管理数据库"中。

这只是一个猜测,但被@Maarten医生确认。

我不知道filemaker,但如果它接受普通SQL,您可以跨数据库连接数据(假设它们运行在同一数据库服务器上)。只需引用您的列的完整路径。例如,如果要连接数据库A、B和C的序列号:

    SELECT * 
    FROM DatabaseA.dbo.MainDb
    INNER JOIN DatabaseB.dbo.SubDb ON DatabaseA.dbo.MainDb.Serialnumber = DatabaseB.dbo.SubDb.Serialnumber
    INNER JOIN DatabaseC.dbo.Other ON DatabaseA.dbo.MainDb.Serialnumber = DatabaseC.dbo.Other.Serialnumber

注意,如果您想要一组特定的列,您必须编写所述列的完整路径(与连接中显示的方式相同)