将ACCESS数据库迁移到SQLSERVER数据库
ACCESS2000文件
用ACCESS2007打开,并迁移到SQLSERVER2005里
打开ACCESS2007的数据库工具
方法一:使用ACCESS2007自带的数据库迁移工具
1、打开ACCESS2007的数据库迁移向导
2、点击SQLSERVER按钮,弹出升迁向导对话框
3、选择新建数据库
4、输入计算机名,我的本地计算机名字叫joe,因为SQLSERVER安装在本地,所以选择使用可信连接就可以了
数据库名称默认就可以了
5、选择所有表,移动到右边框
6、把表索引也一起升迁到SQLSERVER里
7、由于没有应用程序,这一步可以直接跳过
8、点击完成按钮开始迁移数据库到SQLSERVER
9、开始迁移
10、刷新一下SQLSERVER2005里的对象资源管理器里的数据库
迁移到SQLSERVER之后,SQLSERVER会自动在ACCESS数据库的名称后加SQL这三个字母
11、打开LygSQL中的某个数据表,看是否迁移成功
12、表约束也完整迁移成功
方法二:使用SQLSERVER2005自带的数据导入导出向导
限制:SQLSERVER2005自带的数据导入导出向导工具只支持ACCESS2003或以下文件
1、在SQLSERVER里新建一个与ACCESS数据库同名的数据库Lygl
2、选中Lygl数据库,然后按右键—》任务-》导入数据
3、打开SQLSERVER导入导出向导
4、下一步
提示:如果ACCESS数据库有密码的话,点击下一步会出错,所以在点击下一步之前请先去除ACCESS数据库的密码!
5、点击下一步
6、再点击下一步
7、再点击下一步
勾选第一个方框就可以了,SQLSERVER会自动帮你勾选ACCESS数据库中的所有表格
8、点击下一步
9、最后点击完成按钮
10、刷新一下SQLSERVER对象资源管理器里的数据库
11、打开表
数据都导入进来了
但是表约束没有导入进来,这个比ACCESS自带的数据库迁移向导差了一点
方法三:使用SSMA for ACCESS 5.2
使用SSMA for ACCESS 5.2迁移到SQLSERVER2012
1、安装
实际上SSMA支持多种数据库类型,大家在下面的链接下载就可以了
http://files.cnblogs.com/lyhabc/SSMAforMySQL5.2.zip
http://files.cnblogs.com/lyhabc/SSMAforAccess5.2.zip
http://files.cnblogs.com/lyhabc/SSMAforOracle5.2.zip
http://files.cnblogs.com/lyhabc/SSMAforSybase5.2.zip
http://files.cnblogs.com/lyhabc/access-ssma.rar
access-ssma.license是证书文件,在双击SSMA for Access 5.2.exe进行安装
一路next就可以了,中间如果有什么回滚操作,你点击yes就可以了,就算回滚了,也不影响安装的
双击打开
如果没有申请证书,需要点击license registration page ,打开网页输入一些邮箱之类的信息就可以了,这个是完全免费的
如果已经下载了证书了,则直接选择刚才的access-ssma.license文件,这个文件是证书文件所在的文件夹就可以了
一开始使用的时候,软件会自动弹出向导,并且新建一个project,如果你不需要,点击“close”按钮就可以了
2、设置
其实这些设置选择默认值就可以了
Global Settings
Default Project Settings
其实上面的设置我都是用的默认的,并没有更改
3、界面
3、创建项目project并开始迁移数据
数据库选择SQLSERVER2012,这个工具还支持迁移到SQL AZURE
点击OK
在ACCESS窗口会出现ACCESS-METADATA树节点
在新建文件夹下面也会产生一些文件
4、添加数据库
打开之后会看到下面的样子
迁移前,可以像文章说的那样SQL Server Migration Assistant简介(一),创建一个迁移评估报告
评估报告是一个html文件,他会评估出迁移大概需要多少时间,如果有不能迁移的数据,他会发出错误
在软件的下方的输出窗口里也会有评估转换的输出信息
5、连接到SQLSERVER2012
最好不要预先在SQLSERVER2012里面创建好要迁移的数据库,让SSMA FOR ACCESS去创建就好了
在Database那一栏,输入你想在SQLSERVER中创建的数据库,当你点击connect的时候,软件会自动帮你创建好数据库的
点击“Yes”
在SQLSERVER窗口就会看到新建的数据库Course
同时在SSMS里也能看到新的数据库Course
6、架构转换
在ACCESS窗口,选中Course数据库,在转换过程,会在表里添加一个SSMA_TimeStamp列,主键也会重新命名
7、与ACCESS进行同步
在SQLSERVER窗口,选中Course数据库,右键-》同步
这个时候,在SSMS里面就能够看到表,主键,索引已经生成好了,就差导数据了
软件会在表中生成SSMA_TimeStamp列,也会修改主键的名字为Course_baseinfo$PrimaryKey
索引的扩展属性
7、导数据
在ACCESS窗口,选中Course数据库,右键-》Migrate Data
我们在SSMS里查看,数据都导过来了
8、如果你嫌转换、同步、导数据麻烦的话,界面中还有一个按钮,点击一下,就能够把上面的1、转换 2、同步 3、导数据 一起完成
迁移的过程就是这样了
如有不对的地方,欢迎大家拍砖o(∩_∩)o