Access 导入 MSSQL 2000/2005 数据库工具

Access数据库导入到MSSQL 2005中,以前也尝试导入过,但是用SQL Server自带的DTS服务直接导入(先用sql脚本创建好表结构,否则会丢失标识等),会出现下列错误:

- 执行之前 (错误)
消息
错误 0xc0202009: 数据流任务: SSIS 错误代码 DTS_E_OLEDBERROR。出现 OLE DB 错误。错误代码: 0x80040E21。
已获得 OLE DB 记录。源:“Microsoft SQL Native Client” Hresult: 0x80040E21 说明:“多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值。没有工作被完成。”。
 (SQL Server 导入和导出向导)

错误 0xc0202025: 数据流任务: 无法创建 OLE DB 取值函数。请查看列元数据是否有效。
 (SQL Server 导入和导出向导)

错误 0xc004701a: 数据流任务: 组件“目标 9 - yiran_order”(804) 在执行前阶段失败,返回的错误代码为 0xC0202025。
 (SQL Server 导入和导出向导)

而如果不用sql脚本创建结构的话,直接导入是没有问题的,这个问题在网上找了下,基本没有什么资料,而且国内用SQL Server 2005的人并不多,而且大多数开发者使用的都是Express版本,他们只注重一些开发上的问题,而对于服务器管理者来说,SQL Server 2005的技术资料并不对,因此这个问题是比较难解决的,毕竟我不是MCDBA,我只是个MCSE而已。
既然SQL Server自身的Managemeng Studio无法使用,那么我们就全部通过SQL脚本来解决,因为图形化管理器也只是将一系列的管理功能通过图形化界面来生成相应的SQL脚本来操作的罢了。

网上很辛苦地找到了一个工具~真是福音啊。这个工具的原理是通过对Access数据库的分析自动生成SQL脚本,可以包含数据,也可以只有结构。然后只要放到SQL Server中执行一下查询一个数据库就建好了。关于如何在SQL Server中执行脚本以及在执行脚本时可能会出现的一些问题,请参考用 SQL 脚本将 Access 导入 MSSQL 2000/2005 方法


下载:CooSel2.0 CreateSQL v1.06
(支持SQL Server 2000/2005)

可能解压后会提示缺少控件,COMDLG32.OCX这个文件本来并不在这个压缩包里,我是将2个合并了起来。这个应该是VB的控件,如果提示缺少这个的话就执行RegOCX.exe试试(这个我没试过~因为没提示缺少),不行就把COMDLG32.OCX复制到system32下看看吧。

如果你找到了更好的工具,也请告诉我一声吧呵呵~



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Office数据库升迁 Access 导入 SQL Server,相信大家都知道 SQL-Server 数据库导入导出功能吧,但当你装了精简版的SQL-Server这个功能就会没有了,也就是无法实现数据库导入导出,那么怎么办 写SQL语句? Insert into Tables SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','Data Source="E:\Access.mdb";') 显然在正常情况下这可以 但如果你看见提示 Msg 15281, Level 16, State 1, Line 1 SQL Server blocked access to STATEMENT 'OpenRowset/OpenDatasource' of component 'Ad Hoc Distributed Queries' because this component is turned off as part of the security configuration for this server. A system administrator can enable the use of 'Ad Hoc Distributed Queries' by using sp_configure. For more information about enabling 'Ad Hoc Distributed Queries', see "Surface Area Configuration" in SQL Server Books Online. 这时怎么办? EXEC sp_configure 'show advanced options', 1 EXEC sp_configure 'Ad Hoc Distributed Queries', 1 结果你又被提示: Msg 15123, Level 16, State 1, Procedure sp_configure, Line 51 The configuration option 'Ad Hoc Distributed Queries' does not exist, or it may be an advanced option. 很明确这条路是走不通了,因为精简版的SQL-Server没这功能。所以你就要用的我的资源了。这里主要是通过Access自带功能(你要安装这个,暂时叫插件吧)完成数据库转换。 步骤: 1.打开Access 点击菜单栏中的--》工具 2.打开 工具栏下的--》数据库实用工具 3.选择 升迁向导(和SQL导入那里一样了 相当于数据库导出 ) 选择你的 SQL-Server 服务器地址,登陆账号和密码,同时填写 生成后的SQL-Server数据库名称,就这样简单完成了。AccessSQL-Server的转换。 Ps:当然你装的是完整版的SQL-Server, 直接可以导入导出(语句也可以的),不用这样麻烦,但如果你装的就是SQL-Server精简版那么这或许是最后的方法,同时也是对AccessSQL-Server有一个新的认识。 文件包: PRO11.MSI,A4561414.CAB,CR561401.CAB,MA561416.CAB,PA561401.CAB,SKU011.CAB,YI561401.CAB,YS561409.CAB,ZA561401.CAB, ZD561403.CAB,ZU561415.CAB,ZZ561401.CAB(office2003的) 我也是因为遇见这问题,才按这个方法成功的。希望对大家都帮助

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值