Access数据库升迁

2016-07-29 10:58:00
zstmtony
转贴
149

升迁就是将数据库对象 (数据库对象:Access 数据库包含诸如表、查询、窗体、报表、页、宏和模块等对象;Access 项目包含诸如窗体、报表、页、宏和模块等对象。)的部分或全部从 Microsoft Access 数据库 (数据库:与特定主题或用途相关的数据的集合。在数据库内,关于特定实体的信息(如雇员或订单)分类归纳到表、记录和字段中。) (.mdb) 迁移到新的或已有的 Microsoft SQL Server 数据库或新的 Microsoft Access 项目 (Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。) (.adp) 中的过程。
正 文:

升迁就是将数据库对象 (数据库对象:Access 数据库包含诸如表、查询、窗体、报表、页、宏和模块等对象;Access 项目包含诸如窗体、报表、页、宏和模块等对象。)的部分或全部从 Microsoft Access 数据库 (数据库:与特定主题或用途相关的数据的集合。在数据库内,关于特定实体的信息(如雇员或订单)分类归纳到表、记录和字段中。) (.mdb) 迁移到新的或已有的 Microsoft SQL Server 数据库或新的 Microsoft Access 项目 (Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。) (.adp) 中的过程。

升迁的方法

“升迁向导”通过升迁数据和数据定义并将数据库对象移到新的数据库结构中,而将 Access 数据库升迁到新的或已有的 SQL Server 2000、7.0 和 6.5 数据库或新的 Access 项目中。“升迁向导”的使用方法有三种:

将 Access 数据库中所有的数据库对象都升迁到 Access 项目中,这样可以创建客户/服务器应用程序。这种方法要求对应用程序进行一些额外的更改,对代码和复杂的查询进行一些修改。 
只将数据或数据定义从 Access 数据库升迁到 SQL Server 数据库。 
创建对于 SQL Server 数据库的后端而言的 Access 数据库前端,这样便可以创建前端/后端应用程序 (前端/后端应用程序:包含一个“后端”数据库文件和几份“前端”数据库文件副本的应用程序。后端数据库文件包含表,而前端数据库文件包含链接到后端表的所有其他数据库对象。)。该方法只要求对应用程序进行很小的修改,因为代码仍在使用 Jet 数据库引擎 (Microsoft Jet 数据库引擎:Access 数据库系统的一部分,可以在用户和系统数据库中检索和存储数据。可以将其视为构建数据库系统(如 Access)之基础的数据管理器。)。 
如果向导未启动

何时将 Access 数据库升迁到 SQL Server

随着时间的推移,大多数数据库应用程序都会发展,变得更复杂,并且需要支持更多用户。在 Access 数据库 (数据库:与特定主题或用途相关的数据的集合。在数据库内,关于特定实体的信息(如雇员或订单)分类归纳到表、记录和字段中。)应用程序的生命周期的某个时刻,可以考虑升迁到 SQL Server,以优化数据库和应用程序的性能、可伸缩性、可用性、安全性、可靠性和可恢复性。

更高的性能和可伸缩性

很多情况下,SQL Server 能提供比 Access 数据库更好的性能。SQL Server 还提供了对 TB 大小的超大型数据库的支持,这比当前对一个 Access 数据库 2 GB 的限制要大得多。最后,在 Microsoft Windows 2000 或更高版本上,SQL Server 并行处理查询(在单个进程中使用多个本地线程来处理用户请求)的效率极高,并且将添加更多用户时的附加内存需要降为最小。

提高的可用性

使用 SQL Server,可以在正在使用数据库时对它进行增量的或完全的动态备份。因此,不必强迫用户为了备份数据而退出数据库。这意味着数据库可以一天 24 小时、一周七天连续运行。

改进的安全性

使用可信任的连接,SQL Server 可以集成 Windows 2000 或更高版本的系统安全性,来为访问网络和数据库提供一个单一的安全访问方式,从而尽量利用这两种安全系统。这使得管理复杂的安全方案变得很容易。服务器上的 SQL Server 数据库还使用了全新的安全功能,这些功能可以帮助防止未经授权的用户直接访问数据库文件,相反,要求他们必须先访问服务器。

即时的可恢复性

当系统出现故障时(如操作系统崩溃或断电),SQL Server 具有的自动恢复机制可以在几分钟内将数据库恢复到最后的一致性状态,并且不需要数据库管理员的干预。关键的应用程序可以立即重新运行。

基于服务器的处理

Microsoft 从一开始就将 SQL Server 设计为客户/服务器数据库,其中数据和索引保存在单个服务器上,多台客户机经常通过网络访问这台服务器。通过在将结果发送给客户机之前先在服务器上处理数据库查询,SQL Server 减少了网络通信量。这样,客户/服务器应用程序可以在最适当的位置:服务器上运行。

应用程序也可以使用用户定义函数 (用户定义的函数:一种查询,采用输入参数并返回类似于存储过程的结果。类型有:标量函数(多语句;返回一个值)、内嵌函数(一个语句;可更新的表值)和表函数(多语句;表值)。)、存储过程 (存储过程:由 SQL 语句和可选流控制语句组成的预编译集合,按一个名称存储,并作为一个单元处理。此集合存储在 SQL 数据库中,可以通过某应用程序的一个调用运行。)和触发器 (触发器:一种特殊形式的存储过程,当修改指定表中的数据时,它会自动执行。触发器通常用于在不同表中具有逻辑关系的数据之间实施参照完整性或一致性。),在服务器上而不是在客户机上,集中和共享应用程序逻辑、业务规则和政策、复杂的查询以及数据有效性和参照完整性代码。

升迁 Access 数据库之前

在将 Access 数据库 (数据库:与特定主题或用途相关的数据的集合。在数据库内,关于特定实体的信息(如雇员或订单)分类归纳到表、记录和字段中。)升迁到 SQL Server 数据库或 Access 项目 (Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。)之前,请先执行下列步骤:

备份数据库      虽然“升迁向导”不从 Access 数据库中删除任何数据或数据库对象,但在升迁 Access 数据库之前最好先创建一个备份。

确保有足够的磁盘空间     在包含升迁后的 SQL Server 数据库的设备上必须有足够的磁盘空间。当有大量的磁盘空间时,“升迁向导”工作状态达到最佳。

对于 SQL Server 7.0 或更高版本的数据库,SQL Server 在创建数据库时会自动增加其大小。

对于 SQL Server 6.5 数据库,则会将 Access 数据库大小加倍,并且在磁盘中保留这个空间。这就确保了“升迁向导”有足够的空间升迁数据库,也留出了增长空间。如果打算向数据库中添加大量的数据,可以将倍数加大。
创建唯一索引     为使链接的表能够在 Microsoft Access 中接受更新,该表必须具有一个唯一的索引。“升迁向导”能升迁现有的唯一索引,但不能在不存在唯一索引时创建。如果希望能更新表,则应确保在升迁之前为每个 Access 表添加一个唯一的索引。

设置默认打印机     如果希望“升迁向导”能自动创建“升迁向导”报表的报表快照 (报表快照:扩展名为 .snp 的文件,包含 Access 报表每页的高保真度副本。它保留报表的二维布局、图形和其他嵌入对象。),必须设置默认打印机。

为自己指定对 Access 数据库的适当权限      若要升迁数据库对象,需要对它们有“读取”和“设计”权限,对所有数据库对象都是如此。

为自己指定对 SQL Server 数据库的适当权限

若要升迁到一个现有数据库,需要有 Create TABLE 和 Create DEFAULT 权限。 
若要建立一个新的数据库,需要有 Create DATABASE 权限,并且对 Master 数据库中的系统表有 Select 权限。 
若要创建新设备,必须是一名系统管理员。 
如果需要,创建几个磁盘设备      如果要升迁到 SQL Server 6.5 版数据库,可能需要在运行“升迁向导”之前创建设备。“升迁向导”在 Master 数据库设备所在的物理磁盘上创建所有新的设备。如果服务器装有多个磁盘,则可以将数据库放在一个磁盘上,将事务日志放在其他磁盘上。这样,当出现磁盘故障时,可以恢复 

分享