DBMNG数据库管理与应用

书籍是全世界的营养品。生活里没有书籍,就好像没有阳光;智慧里没有书籍,就好像鸟儿没有翅膀。
当前位置:首页 > Access > 应用案例

Access导入到SQLServer数据库中的三种方法

SQL Server数据库以2005为例,导入方法如下:

一.使用SQL Server的数据库导入/导出功能。首先在要导入到的SQL Srever数据库上右键,选择“任务”,然后选择“导入数据”,按照提示下一步直到完成即可成功将Access数据库导入到SQL Server数据库中,此种方法如果SQL Server数据库中没有相应的数据表,则会自动创建改表,但是约束等表关系不会同步导入,如果SQL Server中有相同名称并且属性相同的数据表,则会直接将Access数据库中的对应表的数据导入。

在导入过程中,还可以通过SQL语句指定要导入的数据。

使用这种方法一般会出现以下两种错误:

(1)无法建立数据流连接
为连接管理器“{FFBF32BF-EE84-4F94-ACDB-D4C5AC4C2941}”指定的连接类型“OLEDB”未被识别为有效的连接管理器类型。当视图创建未知连接类型的连接管理器时会返回此错误。请检查连接类型名称的拼写是否正确。
(2)无法连接源组件
找不到连接“SourceConnectionOLEDB”。如果找不到特定的连接元素,Connections集合将发生此错误。
其他信息:
找不到连接“SourceConnectionOLEDB”。如果找不到特定的连接元素,Connections集合将发生此错误。
({0DE0CDBB-BCD6-4261-A118-B0CB22DA3C4A})

具体解决办法是打开SqlServer Configuration Manage,右键单击“Sql Server Integration Services”,选择“属性”,将登录身份修改为“Local System(本地系统)”,然后重新启动该服务。

二.使用Access数据库的数据升迁功能。首先点击“工具”菜单,选择“数据库实用工具”,选择“升迁向导”,这是会提示你该功能尚未安装,需要安装XXX之类的信息,点击安装,等待安装成功后,即可弹出“升迁向导”对话框,按照提示下一步直到完成,即可将Access数据库导入到SQL Server数据库中。使用此种方法的好处是Access数据库中的所有数据以及表关系都会被原样导入到SQL Server数据库中。

三.使用SQL语句批量导入。1当我们只需要导入Access数据库中的指定表以及指定表的指定列到SQL Server数据库中时,前面的两种方法就显得不那么方便了。而使用SQL语句导入可以方便快捷的导入我们需要的数据。具体代码如下

(1)SQL Serve数据库中已存在要导入数据的表.(这样可以事先按照要导入的Access数据库的数据表创建好需要的关系)

Insert into table(tid,tname)SELECT id,nameFROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\Shop.mdb";User ID=Admin;Password=' )...ShopGoods

(2)SQL Server数据库中不存在要存储导入数据的表.(使用下面的代码会直接在SQL Server数据库中创建相应的数据表)

SELECT id,nameINTO table(tid,tname)FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 'Data Source="c:\Shop.mdb";User ID=Admin;Password=' )...ShopGoods

其中,table是SQL Server中用来存储Access导入数据的数据表名,ShopGoods是指要导入到SQL Server中的Access数据库中的数据表名。前面的三个点不能省略。

但使用这种方法时有可能出现以下错误:

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。

具体解决办法是使用如下语句启用“'Ad Hoc Distributed Querie”

EXEC sp_configure 'show advanced options', 1 GO RECONFIGURE GO EXEC sp_configure 'Ad Hoc Distributed Queries', 1 GO RECONFIGURE GO


本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号