有谁知道如何将 .dbf 文件导入到 MS ACcess 2007 中?
您想以编程方式执行此操作吗?
MS-Access 可以选择导入表,或者您可以创建链接表。
编辑:打开 MS-Access MDB,转到表。右键单击 -> 导入 -> 选择适当的数据库类型(在您的情况下可能是 dbf)。
实际提取此信息的 VBA 方法是创建一个连接对象,连接到要从中提取的表的目录。
之后,打开一个记录集,根据该连接从表中查询您需要的内容。 直接连接和扫描的一大好处是,您不会增加数据库中的表,从而使您更接近下一次修复/压缩。
为了获得此连接,我需要某种 ODBC 连接器,当我切换到新的工作 PC 时,网络管理员在我背后安装了该连接器,但它在连接时突然中断。 如果这是您将在无法访问此内容的其他用户 PC 上使用的内容(如果这是您将在正常基础上执行的查询),则它可能无法对其他人正常运行...
我知道这是一个老问题,但我最近被迫尝试使用 Foxpro 表,并认为我可以在此事上添加我的 2 美分。
首先您需要确定 .dbf 文件是 dbase 还是 Foxpro 表。一旦确定了要使用的表格类型,就有两个选项。
选项 1:手动链接表。就像 @shahkalpesh 提到的那样,但我会更详细地介绍一下:
选项 1A(数据库):单击“外部数据”选项卡 -> 单击“新数据源”下拉列表 -> 选择“来自数据库”,然后选择 dbase。将弹出一个向导,允许您浏览数据库表,您可以选择是否导入或链接所述表。
选项 1B (Foxpro):单击“外部数据”选项卡 -> 单击“新数据源”下拉列表 -> 选择“来自其他源” -> 然后 ODBC 连接(参见注释 1)。 -> 选择是否要导入或链接表,然后单击“确定” -> 在弹出的窗口中转到“机器数据源”选项卡,然后双击“Visual FoxPro 表”。 -> 在下一个屏幕中单击“Free Table Directory”单选按钮,然后选择浏览 -> 浏览到 PC 或网络上包含 .dbf 文件的文件夹,然后单击“确定”。 -> 再次单击“确定”,然后选择您要导入/链接的表。
注 1:现在 Access 具有连接到 dbase 文件的内置功能,但对于 Foxpro 文件,您需要下载 VFPODBC 驱动程序 (google vfpodbc.msi),以便“Visual FoxPro Tables”选项出现在“机器数据源”选项卡。
选项2以编程方式导入:正如@David-W-Fenton建议使用transferdatabase命令
DoCmd.TransferDatabase acImport, "ODBC Database",_
"ODBC Database", "ODBC;DSN=pcMRPVFP;SourceDB=u:\PC MRP;SourceType=DBF;_
Exclusive=No;BackgroundFetch=Yes;Collate=Machine;Null=Yes;Deleted=Yes;",_
acTable, "(your dbf table)", "(table in your access database)"
请注意,您的连接字符串将与我的不同,即“DSN”和“SourceDB”。如果您在构建连接字符串时遇到问题,您可以尝试手动链接到 .dbf 文件,在设计视图中打开它,然后在表属性表的描述字段中,您可以找到 access 用于创建链接的连接字符串得到一个想法。以下链接对于使用 FoxPro 表的连接字符串语法也很有帮助:
https://www.connectionstrings.com/visual-foxpro/#google_vignette