使用SQL Server数据转换服务升迁Access数据库

2016-01-29 16:20 15 1 收藏

使用SQL Server数据转换服务升迁Access数据库,使用SQL Server数据转换服务升迁Access数据库

【 tulaoshi.com - SQLServer 】

 

开发者常常以Access作为原型或者用Access来开发不是很关键的应用程序。但是,随着公司业务的增长,要解决的问题会变得越来越复杂,Access环境可能无法满足需要。目前,Access 2002的.mdb和.adp文件都将一个数据库的长度限制在2 GB以内。这意味着几乎每个Access和SQL Server开发者最终都要将一个Access数据库升迁成一个SQL Server数据库。

由于升迁已成为极为常见的一个任务,所以Access配套提供了一个“升迁向导”。它虽然能完成这个工作,但操作过程并不简单。SQL Server与Access的几处不兼容的地方是该向导无法处理的。你或许不知道,SQL Server的“数据转换服务”(Data Transformation Services,DTS)也能升迁一个Access数据库。下面让我们比较这两个向导,并体验如何使用DTS来升迁一个实际Access数据库。这样一来,你在遇到一个升迁任务时,就能选择最有效的方式。


比较Access升迁向导和DTS

Access升迁向导(AUW)在Access内部工作,能将数据拷贝到SQL Server表。相反,DTS将来自一个Access数据库的数据拷贝到SQL Server表中。注意,你可将数据从一个文本文件或者一个OLE DB数据源(其中自然包括Access数据库)导入SQL Server。导入文件的同时,还能对数据进行转换。

DTS的功能非常齐全,有的开发者认为它比AUW强得多,理由是:

可在导入数据时更改列(字段)属性。
在导入期间创建查询,限制实际导入的数据。
但AUW也有DTS不具备的一个优点,那就是它能将一个Access前端链接到SQL Server数据。DTS则不然,它只能导入数据,你不能将导入的数据链接到一个现有的前端。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

 

使用DTS导入/导出向导

可采取几种方式来执行DTS:

在Windows【开始】菜单中,选择【Microsoft SQL Server】,再选择【导入和导出数据】。
运行企业管理器,连接到想导入数据的一个特定的服务器和数据库,然后从【工具】菜单中选择【数据转换服务】|【导入数据】。在一个现有的数据库中导入数据时,可使用这个选项。
在企业管理器中,连接到要导入数据的服务器,再右击【数据转换服务】节点。选择【所有任务】|【导入数据】。向导最开始会显示一个提示性屏幕。请单击【下一步】开始操作。

指定数据源

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/sqlserver/)

升迁Access的第一步是指定数据源以及包含了待导入数据的实际文件。在本例中,请选择Microsoft Access作为数据源,再找到Northwind.mdb数据库(Access配套提供的示范数据库)。它通常在以下文件夹中:
LocalDrive:Program FilesMicrosoft OfficeOffice10Samples

注意,你可对任意Access数据库进行升迁。升迁不会对实际的.mdb文件及其数据产生任何影响。

如图A所示,本例不要求你输入密码和用户名。但是,在操作一个安全数据库时,则可能必须管理管理员用户名和密码。换言之,在操作这种数据库之前,你必须获得管理权限。请单击【下一步】继续。

图A

 

指定数据源和文件。如果操作的是安全数据库,还需要输入管理员用户名和密码

相反,如果使用的是AUW,它首先会要求你选择新建一个SQL Server数据库,或者选择将SQL Server数据链接到一个Access前端。如前所述,DTS没有提供链接选项。


选择目的


在下一个屏幕中,要为导入的数据选择一个目的(地)。你可选择当前服务器上的任何数据库,也可以新建一个数据库(本例采取的是第二种做法)。不要更改“目的”设置,虽然有几个选项可供选择,但本例的“目的”就是【用于SQL Server的Microsoft OLE DB提供程序】。

虽然能更改服务器,但本例不要求你这样做。除此之外,还应该保留【使用Windows身份验证】设置。只有SQL Server 2000才支持Windows身份验证。当然,如果你的安全设置有所区别,那么也可以相应地修改那个选项。

从【数据库】下拉列表中选择【<新建】。随后会出现【创建数据库】对话框。请输入新数据库的名称,Northwind的数据将导入这个数据库中,如图B所示。命名一个工作数据库时,务必遵循你的公司的命名规范。单击【确定】后,DTS会自动更新【数据库】下拉列表中的名称。单击【确定】继续。

图B

指定新的数据库名称

限制要导入的数据


指定了Access数据源,并新建了一个SQL Server数据库之后,就可开始将数据从数据源导入新的SQL Server数据库(NorthwindonlocalSS)。但是,也许不能在一个会话中完成全部工作。虽然每次都能拷贝任意数量的表。但假如你需要用一个查询来限制数据,每次就只能操作那一个表。幸运的是,额外的工作并不需要花多少时间。

 

首先,让我们创建一个查询来限制“产品”表中的数据,从而开始我们的拷贝过程。具体地

来源:http://www.tulaoshi.com/n/20160129/1498337.html

延伸阅读
标签: MySQL mysql数据库
因工作需要,要将存放在sql server数据库中的数据全部导入到mysql数据库中,在网上搜集相关资料,找到两种方法,现在分别谈谈对他们的看法。 第一种是安装mysql ODBC,利用sql server的导出功能,选择mysql数据源,进行数据的直接导出,这种方法很简便,但是针对实际应用有很多弊端,最主要体现就是数据类型问题,首先,sql server数据库中的...
标签: SQLServer
  简介 随着用户对于企业级高性能数据库的需求的增长,用户时常要从Microsoft Access Jet引擎的文件-服务器环境下转换到Microsoft SQL Server的客户-服务器环境。Microsoft Office 2000中的Access 2000 Upsizing Wizard可实现将数据表和查询转移到SQL Server 7.0中。如果您用的是Access的较早的版本,您可以先将它升级为Access 2000,然...
一般在Oracle中使用Sql,在Access中使用很少,不过与Oracle的Sql还是有很多相似之处的。 以下SQL语句在ACCESS XP的查询中测试通过 建表: Create Table Tab1 (     ID Counter primary key,     Name string(20),     Age integer,     [Date] DateTime); 技巧: 自动增加...
使用access数据库时可能用到的数据转换: 类型转换涵数: 函数 返回类型 expression 参数范围 CBool Boolean 任何有效的字符串或数值表达式。 CByte Byte 0 至 255。 CCur Currency -922,337,203,685,477.5808 至922,337,203,685,477.5807。 CDate Date 任何有效的日期表达式。 CDbl Double 负数...
标签: SQLServer
Microsoft Corp. 「Microsoft SQLServer 7.0」以下简称「SQL Server 7.0」】 数据库升级转换所需时间? 影响数据库升级转换所需时间的因素很多, 除了硬件的因素外,由于需要重新创建每个SQL Server 6.X的对象,数据库复杂与否也会有影响,一般来说大致的速度如下 数据库大小 估计所需时间 400 MB 少于20分钟 1 GB 少于1小时 5 GB 少...

经验教程

356

收藏

89
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部