我在 Access 数据库中有一个表,在 Excel 中有一个表,其中有一个名为[Number]
的唯一列。 我想知道如何使用单个OleDbConnection同时连接到这两个源,以便我可以在 VB .Net 中执行这样的查询。
SELECT [Sheet1$].[Number], [Sheet1$].[Vendor],[Sheet1$].[Details], ,TableinAccess.[Datefield], TableinAccess.[Agreement],TableinAccess.Comments
FROM ([Sheet1$] LEFT OUTER JOIN TableinAccess ON [Sheet1$].[Number] = TableinAccess.[Number])
想法是用来自两个源的数据填充网格视图。
例如:
Excel有下表(表1(,
编号 供应商 详细信息
1 vend1 xxx
2 vend2 xxx
3 vend3 xxx
访问有下表(TableinAccess(,
编号 日期字段 协议注释
1 vend1 xxx 某物 2 vend2 某物
我必须像这样填充我的网格视图,
编号 供应商 详细信息 日期字段 协议 注释
1 vend1 xxx Vend1 xxx 某物 2 vend2 xxx
vend2 xxx 某物 3 vend3 xxx
空 空 空
您无法执行所描述的操作,因为两个数据源彼此完全隔离。
OLEDB 连接一次只能连接到单个"事物"(数据库服务器、文件等(。
若要执行联接,需要将 Excel 数据复制到 Access 中的临时表或从 Access 链接到该表,然后在 Access 中执行联接。