关闭顶部展开顶部

将Access数据库移植到SQL Server 7.0_Access数据库教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!
缂傚倸鍊搁崐鎼佸磹妞嬪海鐭嗗ù锝堫嚉濞差亝鏅濋柛灞炬皑閸旂數绱撴担鎻掍壕闂佺浜顤獵MS闂傚倷娴囧畷鐢稿窗閹扮増鍋¢柕澶堝剻濞戞ǚ鏀介悗锝冨妷閸嬫捇宕掗悙鏌ュ敹闂佸搫娲ㄩ崑鐐烘倵椤掆偓閳规垿鎮欓崣澶樻!闂佹悶鍔庨崰鏍ь嚕婵犳碍鏅搁柨鐕傛嫹濠电姷鏁搁崑鐐哄垂鐠轰警娼栭悷娆忓閻濆爼鏌涢埄鍐槈闁绘挻锕㈤弻鈥愁吋鎼粹€崇闂佹娊鏀辩敮锟犲蓟閵娾晜鍋嗛柛灞剧☉椤忥拷 缂傚倸鍊搁崐椋庣矆娓氣偓钘濋梺顒€绉寸粣妤呮煙闁箑澧鹃柤鏉挎健閺屾盯濡烽鐓庮潻缂備讲鍋撳鑸靛姈閻撳啴鏌曟径鍫濆闁绘繍浜弻锝呪攽閹炬潙顏� 闂傚倸鍊搁崐椋庢閿熺姴纾婚柛鏇ㄥ瀬閸ャ劍缍囬柍鍝勫暟椤︻垱绻濋姀锝嗙【闁哄牜鍓熷畷妤€饪伴崼鐔哄幐闂佹悶鍎崝宥夋儍閹达附鈷掑璺猴功鏁堥梺鍝勮閸婃牕岣胯箛娑樜╅柨鏃傜帛椤ユ稓绱撻崒娆戝妽闁哥偛顭烽獮蹇涙晸閿燂拷 闂傚倸鍊风粈渚€骞栭锕€鐤柣妤€鐗婇崣蹇涙煙缂併垹鏋涙俊鐐扮矙閺屸€愁吋鎼粹€茬敖闂佸憡顨嗙喊宥囨崲濞戙垹骞㈡俊顖濐嚙闂夊秴鈹戦鍡欑ɑ闁告梹顨婇崺鈧い鎺戝枤濞兼劙鏌熼鑲╁煟鐎规洘娲熼弻鍡楊吋閸涱垳鍘梻浣芥硶閸o箓骞忛敓锟�,闂傚倸鍊峰ù鍥儍椤愶箑绀嬫い鎰╁灩琚橀梻浣筋嚙濮橈箓锝炴径瀣濠电姴鍋嗛崵鏇㈡煕椤愶絾绀€缂佲偓閸愨斂浜滈柡鍌氱仢閹垶銇勮箛鏇炴瀾缂佺粯鐩獮瀣倷閺夋垹娈ら梻浣呵归鍡涘箲閸パ屾綎闁告繂瀚ч弸搴ㄦ煙椤栧棗瀚禍顏堟⒒娴e憡鍟為柣鐔村劤閹广垹螣娓氼垰娈ㄦ繝鐢靛У绾板秹寮查幖浣圭叆闁绘洖鍊圭€氾拷!

推荐:Access作为网站数据库的弊端
现在网上绝大多数网站都是ACCESS ASP的形式,因为ACCESS结构简单容易处理,而且也能满足多数的网站程序要求。 ACCESS是小型数据库,既然是小型就有他根本的局限性,以下几种情况下数据库基本

简介

随着用户对于企业级高性能数据库的需求的增长,用户时常要从Microsoft Access Jet引擎的文件-服务器环境下转换到Microsoft SQL Server的客户-服务器环境。Microsoft Office 2000中的Access 2000 Upsizing Wizard可实现将数据表和查询转移到SQL Server 7.0中。如果您用的是Access的较早的版本,您可以先将它升级为Access 2000,然后再使用其中的Upsizing Wizard,从而将您的应用移植到SQL Server中。

如果您并不太愿意采用Access 2000 和Upsizing Wizard来实现移植,本文可以作为将Access 2000移植到SQL Server的一个指南。转移一个Access上的应用首先需要将数据转移到SQL Server,然后将查询转移进数据库,或是转移为SQL文件以备稍后执行。最后要采取的步骤是移植应用程序。

数据库移植中用到的SQL Server 工具

SQL Server管理器(SQL Server Enterprise Manager)

SQL Server管理器 允许对SQL Server以及SQL Server中的对象进行企业级的配置和管理。SQL Server管理器提供一个强有力的scheduling引擎,高度的容错力和一个嵌入式的复制管理界面。使用SQL Server管理器可以实现以下功能:

管理连接和用户许可

创建脚本程序

管理SQL Server对象的备份

备份数据和事务处理日志

管理表、视图、存储过程、触发器、索引、规则、默认值以及用户定义的数据类型

建立全文本索引、数据库图表和数据库维护计划

输入和输出数据

转换数据

执行各种网络管理任务

在以Microsoft Windows NT为操作系统的计算机中,SQL Server Manager由SQL Server Setup进行安装,并被默认为服务
器组件,而在运行着Windows NT 和Microsoft Windows 95的机器上,它将被默认为客户方组件。您将从SQL Server
Manager的图形用户界面中启动数据转移服务(DTS,Data Transformation Services)。

数据转移服务(Data Transformation Services ,DTS)

数据转移服务允许您在多种异构数据源之间输入和输出数据,这些数据源采用基于数据库的OLE体系结构;或在使用SQL
Server 7.0的多个计算机之间转移数据库和数据库对象;您还可以通过运用数据转移服务,更便捷地在一个在线事务处理
系统(OLTP)中建立数据仓库和数据中心。

DTS Wizard允许您交互地创建DTS包,通过OLE DB和ODBC来输入、输出、验证和转移数据。DTS Wizard还允许您在关系型数
据库之间拷贝图解(schema)和数据。

SQL Server 查询分析器(Query Analyzer)

SQL Server 查询分析器是一种图形化的查询工具,通过它您可以分析一个查询,同时执行多个查询,查看数据和获取索引
建议。SQL Server 查询分析器提供了showplan选项,可用来显示SQL Server查询优化器所选择的数据提取方法。

SQL Server Profiler

SQL Server Profiler可以实时地捕获数据库服务器活动的连续记录。SQL Server Profiler允许您监控SQL Server产生的
事件,过滤基于用户指定标准的事件,或将操作步骤输出到屏幕、文件或数据表。运用SQL Server Profiler,您可以重新
执行所捕获的上一次操作。这种工具可以帮助应用程序开发者识别那些可能会降低应用程序性能的事务处理。在将一个基
于文件体系结构的应用程序移植到客户/服务器结构中时该特性是很有用的,因为它的最后一步包括对面向新的客户/服务
器环境的应用程序进行优化。

转移表和数据

使用DTS Wizard将您的Access数据转移到SQL Server,可采取以下步骤:

在 SQL Server Manager(Enterprise Manager)的工具菜单中,鼠标指向“Data Transformation Services”, 然后点击
“Import Data.”

在“选择数据源”( Choose a Data Source)的对话窗口中,选择Microsoft Access为数据源,然后输入您的.mdb文件
名(mdb为文件扩展名)或者选择浏览文件。

在“选择数据目标”(Choose a Destination)的对话窗口中,选择“Microsoft OLE DB Provider for SQL Server”,
再选择好数据库服务器,然后点击所需的认证模式。

在“指定表备份或查询”( Specify Table Copy or Query)的对话窗口中,点击“拷贝表”(Copy tables)。

在“选择数据源”的对话窗口中,点击“选择所有项”( Select All)。

移植Microsoft Access查询

您可以将Access的查询以下面的格式之一转移至SQL Server中:

事务处理SQL脚本程序(Transact-SQL scripts )

事务处理SQL语句通常是由数据库程序调用的,但是您也可以使用SQL Server 7.0中包含的SQL Server 查询分析器直接运
行它们。SQL Server 查询分析器可帮助开发者测试事务处理SQL语句,或运行那些执行查询处理、数据操作(插入,修
改,删除)和数据定义(创建表)的事务处理SQL语句。

存储过程(Stored procedures )

开发者可以将大部分产生自Access查询(查找,插入,修改,删除)的事务处理SQL语句转移至存储过程。用事务处理SQL
语句书写的存储过程可以用来对您的数据存取打包,并使之标准化,而且存储过程实际上是存储在数据库中的。存储过程
可以带参数,也可不带参数,可以由数据库程序调用或者由SQL Server查询分析器手动执行。

视图(Views )

视图是从一个或多个表中显示特定的行和列的虚拟表。它们允许用户可以不直接执行构成查询基础的复杂连接而建立查
询。视图不支持参数的使用。连接多个数据表的视图不能用INSERT, UPDATE或 DELETE语句来修改。视图由事务处理SQL语
句调用,也可用于SQL Server查询分析器中运行的程序段。SQL Server视图和SQL-92标准不支持视图中的ORDER BY排序子
句。如欲了解事务处理SQL,存储过程和视图的其他信息,请参阅SQL Server 在线参考书。

Access查询类型的SQL Server移植选择与建议

一个SELECT语句可以存储在事务处理SQL文件、存储过程或是视图中。建立存储过程是将数据库应用开发与数据库设计的物
理实施分开的最佳方法。存储过程可在一处创建而由应用程序调用。

如果存储过程所基于的数据库变化了,而存储过程经过仔细的修改以反应这些变化,则对存储过程的调用将不会受到破
坏。

交叉表(CROSSTAB)

交叉表经常用于总结报表。

一个Access的交叉表可以通过SQL程序段、存储过程或视图中的事务处理SQL语句来执行。每当发出一个查询时,数据连接
被重现执行以确保最近的数据得到使用。

根据实际应用情况,比较合适的方法是将交叉表中的数据存储为一个临时表(参考下面的MAKE TABLE),临时表对资源的
需求比较少,但是临时表在建立的同时只提供对数据的一个快照(snapshot)。

创建表(MAKE TABLE)

Access中的“MAKE TABLE”( 创建表)可以通过事务处理SQL脚本程序或存储过程中的事务处理SQL语言的建表语句
“CREATE TABLE”来执行。语法如下所示:

UPDATE语句可以存储在事务_SQL脚本程序中,然而比较好地执行UPDATE语句的方法是创建一个存储过程。

以下为引用的内容:

SELECT [ ALL / DISTINCT ]

[ {TOP integer / TOP integer PERCENT} [ WITH TIES] ]

<select_list>

[ INTO new_table ]

[ FROM {<table_source>} [,…n] ]

[ WHERE <search_condition> ]

[ GROUP BY [ALL] group_by_expression [,…n]

[ WITH { CUBE / ROLLUP } ]

CREATE TABLE mytable (low int, high int)

UPDATE(修改)

APPEND(添加)

ALLEND语句可以存储在事务_SQL脚本程序中,然而比较好地执行APPEND语句的方法是创建一个存储过程。

移植Microsoft Access的查询到存储过程和视图

每个Access查询都必须用以下的一系列语句替换:

以下为引用的内容:

CREATE PROCEDURE <NAME_HERE> AS

< SELECT, UPDATE, DELETE, INSERT, CREATE TABLE statement from Microsoft Access >

GO

CREATE VIEW <NAME_HERE> AS

<Place (SELECT only, with no parameters) Microsoft Access Query>

GO

对每个Access查询应执行:

打开Access,然后在SQL Server中,打开SQL Server查询分析器。

在Access的数据库窗口中点击“Queries”tab键,然后点击“Design”按钮。

在“View”菜单上点击“SQL”按钮。

将整个查询粘贴到SQL Server查询分析器中。

测试语法,保存事务处理SQL语句以备后用,或者在数据库中执行这些语句。您可以选择将事务处理SQL语句保存到一段脚
本程序中。

移植Microsoft Access查询到事务处理SQL语句

大部分的Access查询应该转换成存储过程和视图。然而,有一些应用程序开发者不太常用的语句可以存储为事务处理SQL脚
本,一种以sql为文件扩展名的文本文件。 这些文件可以在SQL Server查询分析器中运行。

如果您打算将一些Access查询转换为sql文件的话,可以考虑根据它们使用的方式有区别地将这些事务处理SQL语句分别放
在几个脚本程序中。例如,您可以将必须以同样频率运行的事务处理SQL语句归类到同一个脚本中。另一个脚本中则应包含
所有只在某些条件下运行的事务处理SQL语句。此外,必须以一定顺序执行的事务处理SQL语句应当归类到一个不连续的脚
本中。

将Access语句转移到事务处理SQL 文件

将语句拷贝到SQL Server查询分析器中

使用蓝色的多选项图标分析语句

在适当时候执行该语句

要执行Access中的创建表(MAKE TABLE)的查询任务的开发者在SQL Server中有几种选择。开发者可创建下列对象之一:

一个视图

视图具有动态的虚拟表的效果,可提供最近的信息。这是一个输入/输出强化器,因为每当发出一个查询时它都要求对数据
表重现建立连接。

一个临时表

临时表为已连接的用户会话建立一个快照。您可以建立局部的或全局的临时表。局部临时表只在当前会话中可见,而全局
临时表则在所有会话都是可见的。在局部临时表的名字前加上单个数字的前缀((#table_name)),而在全局临时表的名字
前加上两位数字的前缀(##table_name)。对临时表的查询执行起来非常快,因为它们取得一个结果集的时候通常只用一个
表,而不是将多个表动态地连接在一起来。

如欲了解临时表的其他信息,请参阅SQL Server在线参考书。

SQL Server 7.0中的数据转换服务(DTS)允许您通过创建包来实现临时表建立的标准化、自动化和进度安排。例如,当您
移植Access 2.0中的Northwind 范例数据库时,用于季度数据报表的交叉表可转变为一个视图或者一个可在规范基础上建
立临时表的数据转换。如欲了解关于DTS的其他信息,请参阅SQL Server在线参考书。

其他设计上的考虑

下面是当您将您的Access应用移植到SQL Server时必须考虑的一些其他问题:

使用参数

带参数的SQL Server存储过程需要一种不同于Access查询的语法格式,例如:

Access 2.0格式:

以下为引用的内容:
查询名:Employee Sales By Country, in NWIND.mdb:

PARAMETERS [Beginning Date] DateTime, [Ending Date] DateTime;

SELECT Orders.[Order ID], [Last Name] & ", " & [First Name] AS Salesperson, Employees.Country, Orders.
[Shipped Date], [Order Subtotals].Subtotal AS [Sale Amount]

FROM Employees INNER JOIN (Orders INNER JOIN [Order Subtotals] ON Orders.[Order ID] = [Order Subtotals].
[Order ID]) ON Employees.[Employee ID] = Orders.[Employee ID]

WHERE (((Orders.[Shipped Date]) Between [Beginning Date] And [Ending Date]))

ORDER BY [Last Name] & ", " & [First Name], Employees.Country, Orders.[Shipped Date];

SQL Server 7.0格式:

CREATE PROCEDURE EMP_SALES_BY_COUNTRY

@BeginningDate datetime,

@EndingDate datetime

AS

SELECT Orders.[Order ID], [Last Name] ", " [First Name] AS Salesperson, Employees.Country,

Orders.[Shipped Date], [Order Subtotals].Subtotal AS [Sale Amount]

FROM Employees INNER JOIN (Orders INNER J


分享:如何打开老版本数据库
如果你的数据库是用ACCESS 97建立的,用ACCESS 2000打开时,会出现一个提示框,我们可以按照提示框上介绍的方法将数据库转为当前版本。 先关闭已打开的数据库,单击“工具”菜

来源:模板无忧//所属分类:Access数据库教程/更新时间:2008-08-22
相关Access数据库教程
闂備焦鐪归崺鍕垂闁秵鍋ら柡鍥舵緛缂嶆牠鏌涢埄鍐姇闁抽攱甯楅妵鍕即濡も偓娴滄儳顪冮妶蹇曠Ф闁瑰嚖鎷�
婵犵數鍋涢顓熸叏椤撱垹纾婚柟鐐灱濡插牓鏌¢崒婵囩《濠⒀勭⊕娣囧﹪鎳犻澶嗗亾濠靛鐓熼柕蹇婃櫅閻忔煡鏌熼崙銈嗗
婵犵數濮烽。浠嬪焵椤掆偓閸熷潡鍩€椤掑嫷妫戠紒杈╁仜椤撳吋寰勭€n亝顓鹃柣搴f嚀鐎氼厽绔熼崱娆愬床濞戞柧绶氶弻锝夊閳轰胶浼堥梺鐟板殩閹凤拷
婵犵數濮烽。浠嬪焵椤掆偓閸熷潡鍩€椤掑嫷妫戠紒杈╁仜椤撳吋寰勬繝鍕靛悑闂備浇顕栭崹搴ㄥ礋椤撗勑氶梻浣筋嚙闁帮絽岣胯铻炴繛鎴欏灪閸嬪鏌ㄩ悤鍌涘
闂傚倷鑳舵灙缂佺粯鍔欓獮濠冩償閵娿儳鍔﹀銈嗗笒閸婂摜鏁崼鏇炵閻庢稒岣块惌鎺斺偓瑙勬礃缁诲牓寮幘缁樻櫢闁跨噦鎷�
闂傚倷鑳舵灙缂佺粯鍔欓獮濠冩償閵娿儳鍔﹀銈嗗坊閸嬫捇鏌涘顒夊剳缂侇喖锕弫鍌炲礈瑜忛悡鎾绘煟鎼搭垳宀涢柡鍛箞閹苯鈻庨幋鐘碉紳婵炴挻鑹鹃敃銉р偓姘炬嫹
闂傚倷娴囬妴鈧柛瀣尰閵囧嫰寮介妸褉妲堥梺浼欏瘜閸o綁寮诲☉妯锋斀闁归偊浜為懗铏圭磽娴i潧濡芥俊鐐舵椤曪綁濡搁埡濠冩櫖濠电偛妫欓崹鐢电箔閿熺姵鈷戦柛婵嗗閳ь剙顭烽獮濠囧箻閼告娼熼梺璺ㄥ櫐閹凤拷
闂傚倷绀侀幖顐﹀疮閻楀牊鍙忓瀣捣缁€濠傤熆閼搁潧濮堥柣鎿勭秮閹娼幏宀婂妳濠电偛鐪伴崐鏇㈡箒闂佹寧绻傚Λ娆戠矆閳ь剟姊洪崨濞氭垿鎮ч悩鑼殾闁规壆澧楅弲鎼佹煥閻曞倹瀚�
濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涙-閻斿棙淇婇姘倯閻庢氨绮妵鍕箻鐎靛摜鐣洪柣搴㈢啲閹凤拷
婵犵數濮烽。浠嬪焵椤掆偓閸熷潡鍩€椤掑嫷妫戠紒杈╁仜椤撳ジ宕堕妸銉紩婵$偑鍊栭幐鑽ゆ崲閸愵亖鍋撳铏彧濞e洤锕、娑樜旈埀顒佹櫠閸欏绡€妞ゎ偒鍠楃€氾拷
濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涙-閻斿棙鎱ㄥ璇蹭壕閻庤娲﹂崜鐔笺€佸▎鎾崇闁绘挸绨堕崑鎾绘偨閸涘﹦鍘搁梺鍓插亝缁诲嫬鐡┑鐘愁問閸n垶骞忛敓锟�
濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涙-閻斿棙鎱ㄥ璇蹭壕闂佸搫鑻幊姗€宕洪埀顒併亜閹哄棗浜鹃梺瀹狀嚙闁帮綁鐛幋锕€绠涢梻鍫熺⊕椤斿棝姊绘担鍛婃儓閻庢碍鎮傞獮蹇涙晸閿燂拷
濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涙-閻斿棙鎱ㄥ璇蹭壕閻庤娲╃紞渚€鐛€n亖鏀介柛顐亗缁憋拷
婵犵數濮烽。浠嬪焵椤掆偓閸熷潡鍩€椤掑嫷妫戠紒杈╁仜椤撳吋寰勬繝鍕幀闂備胶鎳撻悺銊ф崲閸曨垼鏁傞悗娑櫭肩换鍡樸亜閺嶎煈娈斿褍寮剁换婵嬶綖椤旇棄顏�
闂備浇顕ф鎼佸储濠婂牆绀堟繝闈涱儐閸嬪鏌熼幆鐗堫棄闁活厽顨呴埞鎴︽偐閹绘帗娈梺濂告涧缂嶅﹪寮婚妶澶嬪殟闁靛鍎遍~宥夋⒑缂佹ḿ澹勭紓宥勭閻e嘲鈻庨幘瀛樻闂佽法鍣﹂幏锟�
UB闂傚倷绀佸﹢杈╁垝椤栫偛绀夋俊銈呮噽瀹撲線鏌涢妷銏℃珕閻庢碍宀搁幃妤€鈽夊▍铏灴閿濈偤鏁撻敓锟�
闂傚倷娴囨竟鍫熴仈缁嬫娼栧┑鐘崇閻掗箖鎮楅悽鐢点€婇柛瀣崌閻涱噣宕归鍙ョ棯婵犵數濮崑鎾绘煥閻曞倹瀚�
闂備浇顕ф鍝ョ不瀹ュ鍨傞柛婵嗗閼板潡鏌涢姀銏犳
闂傚倷绀侀幉鈥愁潖缂佹ɑ鍙忓瀣捣缁€濠傤熆鐠鸿櫣鐏遍柛妤佺缁绘盯宕卞Δ鈧銏ゆ煕閻愬樊妲圭紒缁樼〒缁辨瑩鎮╅崫鍕腐闂備胶枪妤犲繘骞忛敓锟�
缂傚倸鍊搁崐鐑芥倿閿曞倹鍋¢柨鏇炲€搁崹鍌涚節婵犲倸顏い鈺呮敱閵囧嫰骞掑鍥舵М缂備焦褰冨﹢閬嶅焵椤掑倸浠柛濠冪箘缁辨挸顫濇0婵囨櫓闂佽法鍣﹂幏锟�
©2017 www.mb5u.com濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涙-閻斿棙鎱ㄥ璇蹭壕閻庢鍣崳锝夊箖閳哄懎绠甸柟鐑樻尭閻︼拷
闂傚倷娴囬妴鈧柛瀣崌閺岀喖顢涘⿰鍐炬毉濡炪們鍎婚幏锟�&闂傚倷绀侀幉锛勬暜閹烘嚦娑㈠籍閸噥妫呴梺璺ㄥ櫐閹凤拷