[
会员中心
] [
发布文章
][
发布软件
] [
中文繁體
]
文章·资料
电脑软件
手机应用
网站源码
电脑·手机·网络
学习
话题
娱乐
故事
文化·历史
国学典籍
法律法规
操作系统
网络
办公·文件
音频视频
图形图像
编程·数据库
硬件·驱动程序
行业
教学·学习
游戏
鸿蒙
安卓
苹果
其他
HTML·CSS·JavaScript
PHP
.NET
ASP
JSP
本 站 搜 索
发 送 文 章
传统 ASP 网站,Access 2003 数据库迁移到 SQL Server 2016 数据库的教程(图)
〖
评论()
〗〖
留言
〗〖
收藏
〗
收信地址
填写收信人的电子邮箱
邮件主题
填写邮件主题
邮件内容
使用微软提供的数据库迁移软件 Microsoft SQL Server Migration Assistant for Access(简称:SSMA for Access,SSMA),可以很方便的将 Access 2003 迁移到 SQL Server 2016。我这里源数据库是 Microsoft Access 2003,准备迁移到虚拟主机的 Microsoft SQL Server 2016,我本机没有安装 Microsoft SQL Server 2016 软件,通过 SSMA 软件直接把数据上传/导入到虚拟主机的 Microsoft SQL Server 2016。 Microsoft Access 2003 数据库引擎 Microsoft.Jet.OLEDB.4.0,需要安装 SSMA 32位的,我这里安装:Microsoft SQL Server Migration Assistant for Access V9.5.0 x86.msi。 V9.5.0:支持 SQL Server 2012/2014/2016/2017/2019/2022,Azure SQL Database/Managed Instance V10.6.26238:支持 Azure SQL Database/Managed Instance,SQL Server 2025/2022/2019 一、安装 SSMA: 1、如果出现这个界面,说明你的系统缺少 Access 数据库引擎,单击[Download]打开微软网站下载页面,单击[Next]继续安装: 我这里安装:Microsoft Office Access Database Engine 2007 V12.0.4518.1014.exe 2、软件协议: 3、典型安装,自定义安装,完整安装: 4、检测/更新新版本: 5、安装完成,运行 Microsoft SQL Server Migration Assistant for Access(运行时检测你的系统是否安装 Microsoft .NET Framework,如果没有,按提示下载安装,要求 Microsoft .NET Framework 4.7.2 或更高版本),关闭向导: [在新窗口浏览图片] 二、新建项目: 6、新建项目(File - New Project),填写/选择:项目名称、保存位置、数据库版本: [在新窗口浏览图片] 7、添加数据库(Add Databases),展开数据库,看到表名(如果没有安装 Access 数据库引擎,此时看不到表名): [在新窗口浏览图片] 8、创建报告(选择表名,右键选择 Create Report),创建完成,生成网页报告,如果 Error 和 Warning 有信息,按提示信息修改一下数据库(如果没有安装 Access 数据库引擎,提示消息:There is nothing to process): [在新窗口浏览图片] [在新窗口浏览图片] 9、项目设置(Tools - Project Settings);General - Tables:Add timestamp columns 选择 Never(默认迁移成功后,每个表都会自动新建一个字段 SSMA_TimeStamp,选择 Never 表示禁用);Type Mapping:date 修改为 datetime,删除 memo (for Access 97)、text (for Access 97): [在新窗口浏览图片] [在新窗口浏览图片] [在新窗口浏览图片] 三、连接数据库: 10、连接虚拟主机的 SQL Server 2016 数据库(Connect to SQL Server),填写/选择:数据库服务器地址、端口、数据库名称、认证方式、用户名、密码,选择“Encrypt Connection”和“Trust Server Certificate”: [在新窗口浏览图片] [在新窗口浏览图片] 11、转换架构(Access Metadata Explorer - 表名 - Convert Schema),转换成功,在 SQL Server Metadata Explorer 窗口就能看到表名: [在新窗口浏览图片] [在新窗口浏览图片] 12、数据库表同步到服务器(SQL Server Metadata Explorer - Tables 右键 - Synchronize with Database): [在新窗口浏览图片] [在新窗口浏览图片] 13、数据同步到服务器(Access Metadata Explorer - 表名 - Migrate Data): [在新窗口浏览图片] [在新窗口浏览图片] 项目保存退出后,重新打开/加载项目: [在新窗口浏览图片] 刷新数据库: [在新窗口浏览图片] 软件下载: Microsoft SQL Server Migration Assistant for Access V9.5/10.6(SSMA for Access 迁移数据库) Microsoft Access Database Engine 2007/2010/2016(Access 数据库引擎) Microsoft .NET Framework V4.0/V4.5.2/V4.6.2/V4.7.2/V4.8 数据库迁移完成,接下来修改 ASP 网页文件,只需修改在 SQL 语句不能通用的函数,不是 SQL 语句的函数无需修改。 在 ASP 的 SQL 字符串里,下面这些 Access 函数在 SQL Server 都不能直接用,全局搜索检查: now() → getdate() instr(AR_Keyword,'abc')=1 → charindex('abc',AR_Keyword)=1 AR_Keyword 位置不一样,搜索可用 AR_Keyword like '%abc%' 替代。 iif() → case when ... then ... else ... end mid(AR_Keyword,2,3) → substring(AR_Keyword,2,3) datediff("d",a,b) → datediff(day,a,b) dateadd "yyyy" → year / yy "q" → quarter / q "m" → month / mm "d" → day / dd "h" → hour / hh "n" → minute / mi "s" → second / ss SQL 用 datediff 时,使用 second 时数值太大出错,改成 minute 就可以。 连接符号: → + AR_Keyword='"trim(Request.Form("AR_Keyword"))"'+AR_Keyword 日期时间:#2026-10-08# → '2026-10-08' DateValue(SW_UpdateDateTime)=date() → cast(SW_UpdateDateTime as date)=cast(getdate() as date) nz() → isnull() rs.Open 之后、rs.Update 之前,不能执行 conn.Execute 去修改/更新同一条记录。 想要更详细的,百度搜索一下。迁移过程中出现错误,把错误信息发给百度,或者豆包等AI软件。
文章网址:
https://www.dangbai.cn/article.asp?ID=10005364
填写邮件内容
发信地址
填写发信人的电子邮箱
邮件签名
填写邮件签名
验证码
填写验证码,单击刷新验证码
程序执行中,请稍候...
〖文章发送协议〗
·欢迎使用本站在线文章发送系统。
·不得使用本站在线发送邮件系统发送垃圾邮件、广告邮件。
·如果收信人地址或其服务器出现错误,可能无法成功发送。
·如果有什么问题,或者意见建议,请联系[
网站管理员
]。
当佰网
【关于·免责声明】
本站使用【啊估文章软件站】网站系统
〖
网站管理员留言簿
〗
闽ICP备08009617号
闽公网安备35062802000185号