在MSAccess (VBA)中创建应用程序时,只需创建指向多个数据库(mdb文件)的链接,即可连接到这些数据库。现在,我已经用C/C++重写了用户界面,并使用ODBC连接到数据库。如何连接到第二个数据库(mdb文件)并将表中的数据从一个数据库连接到另一个数据库。例如,数据库1 (file1.mdb)包含一个invoice表,数据库2 (file2.mdb)包含一个prices表。我怎样才能把发票和价格联系起来?
发布于 2018-06-22 05:21:48
假设这两个数据库驻留在相同的网络/服务器或计算机上,请考虑分布式查询,其中您可以使用Jet/ACE SQL引擎将文件名括在方括号中。
SELECT p.*, i.*
FROM [C:\Path\To\File1.mdb].[Prices] p
INNER JOIN [C:\Path\To\File2.mdb].[Invoices] i
ON p.ID = i.PriceID您甚至可以连接到Excel工作簿,假设数据是从A1单元格开始的表格格式,并带有列标题:
SELECT p.*, e.*
FROM [C:\Path\To\File1.mdb].[Prices] p
INNER JOIN [Excel 12.0 Xml;HDR=Yes;Database=C:\Path\Workbook.xlsx].[SheetName$] AS e
ON p.ID = e.PriceID与CSV文件相同:
SELECT p.*, c.*
FROM [C:\Path\To\File1.mdb].[Prices] p
INNER JOIN [text;database=C:\Path\To\CSV\Folder].CSVFile.csv AS c;
ON p.ID = c.PriceIDhttps://stackoverflow.com/questions/50977197
复制相似问题