Access数据库与SQL Server数据库的区别及应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Access数据库与SQL Server数据库的区别及应用
发表时间:2010-06-18T16:39:31.217Z 来源:《计算机光盘软件与应用》2010年第5期供稿作者:廖海燕
[导读] 本文分析了Access与SQL Server数据库的引擎、数据访问模型、数据类型及表设计
廖海燕
(从化市职业技术学校,广州从化 510900)
摘要:本文分析了Access与SQL Server数据库的引擎、数据访问模型、数据类型及表设计,并探讨了它们在应用领域上各自的优缺
点。
关键词:Access;SQL Server;数据库;应用
中图分类号:TP311.13 文献标识码:A 文章编号:1007-9599 (2010)05-0000-02
Differences&Application Between Access Database and SQL Server Database
Liao Haiyan
(Conghua Vocational School,Conghua 510900)
Abstract:This paper analyzes the Access and SQL Server database engine,data access model,data types and table design advantages and disadvantages.
Keywords:Access;SQL Server;Database;Application
一、Access与SQL Server的区别
(一)数据库引擎
Access是由微软发布的关联式数据库管理系统。它结合了Microsoft Jet Database Engine和图形用户界面两项特点
Microsoft Office的成员之一。Access数据库是一种关系式数据库,也是最简单的一种数据库,Access数据库由一系列表组成,表又由一
系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。
SQL是Structured Query Language(结构化查询语言)的缩写,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和
管理关系数据库系统。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。SQL Server是一个关系数据库管理系统。
安全性高,真正的客户机/服务器体系结构,图形化用户界面,使系统管理和数据库管理更加直观、简单,丰富的编程接口工具为用户进行
程序设计提供了更大的选择余地。
(二)数据访问模型
Access是只适用于客户端的关系型数据库管理系统(RDBMS)。这意味着所有数据处理(例如排序和筛选)都是在一台计算机上完成的。
Access开发人员通过拆分数据库来模拟客户端/服务器方法。通常,在多个并发用户使用Access的环境中,将在每台客户端计算机上设置一
个Access数据库。此数据库包含窗体、报表、保存的查询和Microsoft Visual Basic for Applications (VBA)窗体代码。所有数据
都存储在中央服务器的Access数据库中,而在请求时才发送给客户端计算机。此方案需要大量网络资源和客户端资源。
在这种模式中,服务器上不执行任何数据处理。当客户端请求数据时,将把整个数据集通过网络发送给客户端,任何处理都是在客户
端计算机上完成的。
例如,某学校学生数据库中有一个成绩表(.mdb文件),其中存储了10万条记录。某个Access应用
程序要显示所有学生的英语平均成绩。要完成此操作,Access必须通过网络传输整个表,而在工作站上执行计算。
这将给服务器和网络带来严重的性能问题。多次请求大量数据将占用大量服务器资源,而通过网络连接传输整个数据集将大大降低网
络速度。
SQL Server是一个纯客户端/服务器RDBMS。这意味着客户端和服务器可以共同分担处理负载。客户端使用参数发送数据请求,服务器
执行排序和筛选操作,然后只将经过筛选的数据集返回客户端。
(三)数据类型
Access数据类型和SQL Server数据类型之间有几点不同之处。这些数据类型中的大多数会在升级时自动转换,但升级之后,您需要在
SQL Server数据库中进行验证,这一点很重要。表1显示了Access数据类型和SQL Server数据类型之间的不同之处。
表1 Access数据类型和SQL Server数据类型
(四)表设计
这两个数据库管理系统(DBMS)都是关系型的,也就是说,相关数据都存储在通过唯一标识符链接的逻辑表中。表的设计界面在Access
和SQL Server中也是相似的。在Access中,可以为表中的字段指定规则,这样,当一个表中的值发生变化时,相关表中的值将自动更新
(级联更新)。在SQL Server中,可以通过企业管理器中的关系图设计器创建相同的规则。
Access与SQL Server应用的比较
1.实现过程
SQL Server用于小型应用程序,其数据库引擎是Microsoft的SQL Server数据库引擎的一部分。该版本支持很多完整SQL Server的高级功能,如存储过程、视图、函数、CLR集成、打印及XML支持等。然而,它仅仅是一个数据库引擎,而不像Microsoft Access集成了接口开发工具。任何前台应用程序的开发都需要开发程序来处理。此外,微软还创建一个很好的SQL Server,可以用来管理SQL Server数据库引擎。
Access拥有内置的窗体、报表及其他功能项。你可以使用它为后台数据库表格构建用户接口。Access大部分可编程对象都拥有一个很好的向导,这对初学者来说十分方便。最重要的是用它开发一个小系统的时间相当短。因为使用Access开发的应用程序通常都很小,并且有很多内置工具可供使用。
2.可靠性
SQL Server允许你将系统及时地恢复,同时还保持任务的连贯性以确保数据保存在一个连续的内存中。该产品可供很多用户同时访问和更新。Access在可靠性方面性能并非最佳,当多用户同时访问时可能会出现问题。此外,它几乎不支持事务的连贯性,也不支持事务日志。因此,你只能将数据库文件恢复到你上一次备份时的状态。此外,Access文件有时可能忽然变为乱码,这也十分令人头疼。
3.安全性
SQL Server提供相同的企业级安全性机制。你可以完全控制用户访问你的数据库的情况。在Access中也有一些安全方面的配置,但其性能根本无法与SQL Server相媲美。
四、结束语
通过对比发现Access数据库是小型关系型数据库,适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但在网络应用方面有明显的不足,它同时被访问的客户端不能过多,Access数据库有一定的极限,如果数据量过大,很容易造成服务器假死,或者消耗掉服务器的内存导致服务器崩溃。Access数据库优点是:操作灵活、转移方便、运行环境简单,对于小型网站的数据库处理能力效果还不错。缺点是:不支持并发处理、数据库易被下载存在安全隐患、数据存储量相对较小、数据量过大时严重影响网站访问速度和程序处理速度。
SQL Server是基于服务器端的大型企业级数据库,可以适合大容量数据的应用,在功能、管理方面也要比access数据库强得多。在处理海量数据的效率、后台开发的灵活性、可扩展性等方面强大。SQL Server还有更多的扩展,可以用存储过程,数据库大小无极限限制。SQL Server适合大容量数据和大流量网站的应用,在性能、安全、功能管理、可扩展性上要比Access强很多,两者并非同级别的数据库,有些功能Access甚至无法做到。缺点是:一般用户无法直接对SQL Server进行远程管理、空间租用的成本比Access高。