You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在本地通过SSMS对Access 2003数据库执行查询?

未安装Access 2003时通过SSMS处理.mdb数据库的可行方案

方案一:将.mdb数据导入SQL Server数据库(适合长期使用)

  • 打开SSMS,连接到本地服务器acer-davide,展开目标数据库mydb
  • 右键点击mydb → 「任务」→ 「导入数据」,启动SQL Server导入导出向导
  • 在「数据源」下拉列表中选择Microsoft Access(若未找到该选项,需先安装对应位数的Access Database Engine,见下方注意事项)
  • 点击「浏览」按钮,选择你的.mdb文件路径,无需Access客户端即可读取
  • 「目标」选择SQL Server Native Client,确认服务器为acer-davide,目标数据库选mydb
  • 按向导提示选择需要导入的表/视图,配置字段映射规则,完成导入后即可在mydb中直接执行SQL查询

方案二:创建链接服务器直接查询.mdb(适合临时测试)

1. 安装Access Database Engine

确保安装与SQL Server位数匹配的Access Database Engine(64位SQL Server装64位引擎,32位则装32位),若遇Office版本冲突,可通过管理员命令提示符静默安装:

  • 64位引擎:AccessDatabaseEngine_X64.exe /quiet
  • 32位引擎:AccessDatabaseEngine.exe /quiet

2. 执行T-SQL创建链接服务器

在SSMS中打开新查询窗口,运行以下代码(替换文件路径为你的.mdb实际路径):

-- 创建链接服务器
EXEC sp_addlinkedserver 
    @server = N'Access_Link', -- 自定义链接服务器名称
    @srvproduct=N'Access',
    @provider=N'Microsoft.ACE.OLEDB.12.0',
    @datasrc=N'C:\你的文件路径\你的数据库.mdb';

-- 配置登录映射(解决权限问题)
EXEC sp_addlinkedsrvlogin 
    @rmtsrvname=N'Access_Link',
    @useself=N'False',
    @locallogin=NULL,
    @rmtuser=NULL,
    @rmtpassword=NULL;

3. 测试查询

链接创建完成后,直接执行查询语句访问.mdb中的数据:

-- 替换[表名]为实际的Access表名
SELECT * FROM [Access_Link]...[表名];

关键注意事项

  • Access Database Engine的位数必须与SQL Server一致,否则会出现驱动加载失败的错误
  • 若.mdb文件路径包含空格,需用引号包裹路径,例如:@datasrc=N'"C:\My Files\db.mdb"'

内容的提问来源于stack exchange,提问作者Davide

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 08:53:22