方法一:DTS——零门槛图形化数据迁移工具
首推的工具是SQL Server内置的图形化神器——DTS(数据转换服务)向导。在SQL Server 2005及更高版本中,它以“SQL Server导入和导出向导”的形象出现,这是生成SSIS(SQL Server集成服务)包最快捷、最易上手的方式。
该向导的核心优势在于其强大的数据源兼容性。用户可以轻松实现跨多种数据平台的数据传输与同步,支持的主流数据源包括但不限于:
- Microsoft SQL Server(支持跨版本数据迁移)
- 文本文件(如CSV、TXT格式文件)
- Microsoft Office Access数据库
- Microsoft Office Excel电子表格
- 任何支持OLE DB或ODBC标准接口的数据源
借助ADO.NET或ODBC驱动程序,其数据对接能力得到进一步拓展,灵活应对各类异构数据迁移需求。
如何启动这个强大的数据导入导出工具?这里提供三种常用途径:
在Business Intelligence Development Studio(BIDS)中操作:在项目内的“SSIS包”文件夹上右键单击,选择“SSIS导入和导出向导”,或通过顶部“项目”菜单进入。
在SQL Server Management Studio(SSMS)中操作:连接至数据库引擎实例后,展开目标数据库,右键选择“任务” -> “导入数据”或“导出数据”,即可启动向导界面。
直接运行可执行文件:通过Windows命令提示符或直接双击运行C:\Program Files\Microsoft SQL Server\90\DTS\Binn\DTSWizard.exe文件,同样可以打开向导。
方法二:T-SQL脚本直连导入
对于熟悉T-SQL编码或需要自动化部署的开发人员,通过编写SQL查询脚本直接导入数据是更高效的选择。该方法的核心在于配置分布式查询功能,并利用OPENDATASOURCE函数建立与Access数据库的直连通道。
首先,需要在SQL Server中启用“即席分布式查询”高级选项。执行以下脚本完成配置:
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO
配置完成后,即可编写数据插入脚本。关键是通过OPENDATASOURCE函数指定Access数据源连接信息,请注意根据实际情况修改数据库路径与访问密码。
标准的数据迁移脚本结构示例如下:
INSERT INTO 目标表名(字段1, 字段2, 字段3)
SELECT 字段1, 字段2, 字段3
FROM opendatasource('Microsoft.Jet.OLEDB.4.0',
'Data Source="d:\\source.mdb";Jet OLEDB:Database Password=你的密码')...源表名
执行该脚本后,Access源表中的数据将直接、批量地插入到SQL Server目标表中,实现高效数据迁移。
方法三:Access升迁向导——完整数据库迁移方案
若希望将Access数据库整体迁移至SQL Server 2005 Express,包括表结构、索引及关系,最彻底的方法是使用Access自带的“升迁向导”。此方案特别适合需要保持数据库逻辑完整性的升级场景。
下面以Access 2003为例,详细介绍将Access数据库迁移到SQL Server 2005 Express的完整步骤:
环境准备:确保已安装Access 2003,并在安装时勾选了“数据库复制”组件。
第一步,启动向导:打开待迁移的Access数据库文件(.mdb格式),依次点击菜单栏 “工具” -> “数据库实用工具” -> “升迁向导”。
第二步,选择目标服务器:在向导界面选择“新建数据库”,点击“下一步”。输入已安装SQL Server 2005 Express的服务器名称,数据库名称通常默认为原Access文件名,确认后继续。
第三步,选择迁移表:此界面列出所有Access表。将需要迁移的表从左侧“可用表”列表添加至右侧“导出到SQL Server”列表,点击“下一步”。
第四步,配置表属性:包括索引、默认值在内的表属性,建议直接采用向导默认设置,点击“下一步”继续。
第五步,创建应用程序文件:向导提示创建新的ADP(Access数据项目)文件。选择“创建新的Access客户端/服务器应用程序”,点击“下一步”后执行“完成”。
第六步,传送数据库:上一步完成后将自动打开新建的ADP文件。在该文件中,再次进入 “工具” -> “数据库实用工具”,选择 “传送数据库”。在弹出的窗口中,SQL Server名称通常填写你的服务器名\SQLEXPRESS,按提示逐步操作直至完成。
迁移完成后,打开SQL Server Management Studio Express连接至本地实例,即可在数据库列表中看到结构完整、包含所有关系的新数据库。该方法实现了从Access到SQL Server 2005 Express的一站式、无损数据迁移。
