浅谈MySQL和Access数据库的区别
MicrosoftOfficeAccess是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它以自己的格式将数据存储在基于AccessJet的数据库引擎里。可以将数据直接导入或链接数据。Access支持visualBasic宏语言,是一个面向对象的编程语言,可以引用各种对象,包括DAO(数据访问对象),ActiveX数据对象以及许多其他的ActiveX组件。
MySQL是一个开放源码的关系型数据库管理系统,关联数据库将数据保存在不同的表中,提高了速度;MySQL使用的SQL语言是用于访问数据库的最常用的标准化语言。特性是体积小、速度快、成本低、开放源码,因为其开放源码,所以许多中小型网站为了降低网站总体拥有成本,于是选择MySQL作为网站数据库。
MySQL和Access的区别
MySQL特性:很便宜,通常是免费的;网络承载少;查询优化;可以简便的应用程序通过MySQL做备份;MySQL操纵简单,易上手,且为各种不同的资料格式提供有弹性的扩展界面(ODBC)。
Access特性:简单易学,使用方便,开发效率高。
价格:MySQL对于大多数用户而言是免费的,但是如果你以内嵌的方式使用MySQL或者是只使用MySQL的商业用途软件,你才会需要支付一小笔授权费。而Access的价格更贵一些。
并发处理:Access可以处理的连接数目是无限制的,但是连接必须保持在并发处理的范围限制内;MySQL内定最大连接数为100个使用者,但是即使网络上有大量的资料往来,也不会对MySQL上的查询优化造成太大影响。
资料更新速度:在Windows98上使用相同的硬件和数据尺寸,处理几十万笔资料的时候,MySQL的资料更新速度将明显快于Access;但是如果处理对象结构,Access将会优于MySQL;当建立表格(table)以及索引的时候,MySqL会将表格锁住,如此一来会导致正在进行的大量资料处理速度慢下来,这会保证用户来访时的查询速度,且不会影响网站开发。
结构的优化:MySQL仅需优化硬件条件,而不是MySQL本身;Access的数据库非常的有效率,当然这也有赖于网站的结构设计;MySQL不支持外键,优化时注意如何让存取IO减少到最低值、如何让一个或多个CPU随时保持在高速作业的状态、以及适当的网络带宽,而非实际上的设计以及资料查询语句。
数据备份:MySQLDump会产生一个比Access好很多而且也更可靠的备份档案。相比之下,在Access中你只是将一个MDB档拷贝起来做备份。其次,即使MySQL的备份有部分损坏,复原起来也要比一个损坏的MDB档要容易得多了。
资料处理能力:MySQL的资料处理能力比Access强;eg:MySQL如果处理100MB的档案,不会发生承载过重的迹象,而Access就会造成网站效率低下。
MySQL缺点:没法处理复杂的关联性功能;不支持事务处理和事务的提交/撤销;MySQL不支持外键以及参考完整性限制,因此MySQL不适用于有复杂资料关系的应用程序,但是Access可以;而且MySQL也没有存储进程和触发器。当有许多表格需要同时在一个事务过程中完成更新的时候,MySQL的速度较慢。
一篇详细讲述mysql和access区别的好文章!
MySQL∶网站开发者的新选择
「变动」这两个字对 IT 业界来说是再普通不过的事了。如果今天管理阶层的主管们跟你要数据库的推荐名单,很可能在你开始执行你所推荐的方案之前,你的推荐名单上的项目就已经过时了。 如此一来,你可能就要重新考虑各种软硬件方案,好让你∶
·帮你将事情完成
·买来以便帮助别人完成他们的工作
·开发以便帮助别人更好地完成他们的工作
不论你的消息有多新,在你的建议通过层层关卡,并且拿到购买资金之前,你的推荐表上的某些项目通常都会过时。幸运的是,没有人会责怪你,或者是对你反唇相讥 -- 这是这一行里很自然的事情。数据库技术通常在你能够掌握它之前就变了。
为了适应日新月异的数据库技术,有相当多的软件工程师逐渐地从桌面数据库软件诸如 Microsoft Access 以及 SQL Server,转到使用 MySQL。虽然严格说来MySQL 并非 SQL Server 的对手,但许多服务提供商都支持 MySQL,并视之为便宜而有效率的替代品。
Susan Sales Harkins 经常在 CNET Builder.com 发表文章,是一位精通微软 Office 的专家。她也是Using Microsoft Access 97和Using Microsoft Access 2000两书的作者,这两本书均由 Que 所出版。
Martin W. P. Reid 也经常在 CNET Builder.com 发表文章,是英国贝尔法斯特女王大学(Queen's University) 的分析师暨程序设计员。他也指导关系型数据库设计的课程;工作之余也为北爱尔兰的一些小型企业充当数据库顾问。
▲考虑使用 MySQL 的原因
如果你要找的是可靠的数据库软件,以便支持你的网站开发工作,那么以下的原因就说明了你为什么应该考虑 MySQL而不是其它数据库∶
·它便宜(通常是免费)。
·它的网络承载比较少。
·它经过很好的优化(Highly Optimized)。
·应用程序通过它做备份来比较简单。
·它为各种不同的资料格式提供有弹性的扩展介面 (ODBC)。
·它较好学,且操作简单。
·你负担得起的客户支持费用。
▲关于“$”的问题
简单的说,你不会找到比 MySQL 更便宜的了。事实上,对大多数用户来说,MySQL 是免费的。有时候虽然是要付出一小笔的授权费,但是这个付费规定只限于以下两种情况∶
·以内嵌(embedded)的方式使用 MySQL 服务器
·只使用 MySQL 的商业用途软件
例如,Windows 版本的 MySQL 服务器,需要授权。虽然只付比美金 $200 元多一点点的费用,MySQL 还是比其他任何数据库软件来得更便宜多了。Office XP Developer 的零售价是美金 $799 元,升级版则是美金 $549 元。Access 2002 的价格是美金 $339 元,升级版则是美金 $109 元。
▲ 避免堵塞
针对多个使用者共同读写信息的需求,Access 根本不是 MySQL 的对手。Access 在大约十五个使用者连上来的时候,就输掉了。我们还听说过当只有五个人连上来时, 就会有一些问题(这并不是说,只有五个人能够同时连上由 Access 数据库支持的网站)。“同时连结”(Simultaneous connection)事实上是一种并发处理(concurrent process)。因此,虽然事实上 Access 可以处理的连结数目是无限制的,但只要那些连结保持在并发处理的范围限制内就没关系。对于只读网站(这些网站并非你想像中的少数)它可以支持到最多到 255 个使用者。而较大的网站,则无可避免的必须升级到 SQL Server 以提高稳定性和效率。
相对说来,MySQL 内定最大连结数为 100 个使用者。但是,我们绝对不可以用一个程序的内建设定来判断它的效能。到目前为止,我们还没听说过使用 MySQL 的较大而且访问频繁的网站上的使用者有任何抱怨。除此之外,即使有网络上有 大量 的资料往来,似乎并不会对MYSQL的查询优化(query optimization)造成多大的影响。
在 Windows 98 操作系统上使用相同的硬件和数据尺寸,MySQL 表现得比 Access 2000 还要快 – 但只是并非所有的情况下都是如此。 这两者在资料更新方面的效能,有着很大的差异,同样的资料更新,Access 要花上两倍的时间。如果是在高速系统上做小量的资料的处理,你不会去注意到这两者间的差异。 但只有在处理的是几十万笔资料的时候,这效能上的差异才会明显。MySQL 只在处理数据库对象结构(object structure)的时候,才会输给 Access。 当建立表格(table) 以及索引的时候,MySqL 会将表格锁住,如此一来会导致正在进行的大量资料处理速度慢下来。然而以上所提到的最后一个问题在网站开发时,通常并不会造成麻烦。 因为网站上,我们所重视的是用户来访时查询的速度,而非资料储存结构本身。因此,在这个领域,MySQL 胜利。
▲MYSQL其它的优点
·优化
对于 MySQL 的优化,我们可以说,主要的问题在于你的硬件条件,而非 MySQL 本身。不过对于 Access,(以及其他桌面数据库软件)事情就不是这样了。 没错,Microsoft Jet Database 的确实有效率,不过它还不是最快的。如果你的数据库设计得非常差,你的网站还是会受到影响而速度变慢的。 数据库结构设计也会影响到 MySQL,例如,MySQL 并不支持外键(foreign key)。这个缺点会影响到你的数据库设计以及网站的效率。对于使用 MySQL 做数据库的网站,你应该注意的是,如何让硬盘存取IO减少到最低值、如何让一个或多个 CPU 随时保持在高速作业的状态、以及适当的网络带宽, 而非实际上的数据库设计以及资料查询语句。事实上,有些网站开发者将 MySQL 称为目前市面上跑得最快的数据库。不过,当你的数据库有很多表格需要同时在一个事务过程(transaction)内完成更新的时候,MySQL 的确跑得不怎么样。
·备份
如果你曾经有过抢救一个损坏的 MDB 档案的惨痛经验,那么你会对 MySQL 表示非常激赏。这是 MySQL 另一个胜过 Access 的地方。首先,mysqldump 会产生一个比 Access 好很多而且也更可靠的备份档案。相比之下,在 Access中你只是将一个 MDB 档拷贝起来做备份。其次,即使 MySQL 的备份有部分损坏,复原起来也要比一个损坏的 MDB 档要容易得多了。
·可延伸性(Scalability)以及资料处理能力
套句登山者的话来说,将 Access 数据库来跟 MySQL 相比,简直就是像把印第安那的小山丘拿来跟科罗拉多洛矶山脉的 Pike's Peak 顶相比较。事实就是这么简单∶MySQL 可以处理的档案比 Access 所能处理的档案大很多。如果你硬将 Access 数据库弄到 100MB 的 MDB 档案时,你要准备好一个字典厚的纪录本来记录来自客户对于网站效率低下的抱怨。而类似的数据库在 MySQL 上面跑,就不会发生承载过重的迹象。
另外,MySQL 同时提供高度多样性,能够提供很多不同的使用者介面,包括命令行客户端操作,网页浏览器,以及各式各样的程序语言介面,例如 C+,Perl,Java,PHP,以及 Python。你可以使用事先包装好的客户端,或者干脆自己写一个合适的应用程序。MySQL 可用于 Unix,Windows,以及 OS/2 等平台,因此它可以用在个人电脑或者是服务器上。
没错,Microsoft ActiveX Data Objects Library(ADO)的确使得 Access 在外部资料市场(foreign data market)上能够做更具弹性的应用。它能够让你不用管资料的所在位置而取出资料,然后在公用的介面上(即网页浏览器)将资料显示出来。不过,其坏处是 ADO 毕竟是比较笨重(它本身就是个资源大杂烩)而且学习它要花不少的金钱跟时间,就算你是一个能力不错的开发工程师或者软件工程师也一样。没有人能在一天内将 ADO 学会。
▲学习曲线
如果你已经熟悉数据库技术,那么基本上你已经没什么问题了。精通数据库的人在一天之内就可以把 MySQL 学会,把这个经验加到他的履历表里面去。相较之下,Access 是个复杂得多的数据库及开发工具。即使是一个能力不错的开发工程师也需要一段时间才能具备足够的专业知识,有效地使用这个软件。
正如你期待的,MySQL 支持结构化查询语言(Structured Query Language ,SQL)。如果你已经学会某种版本的 SQL 语言,事情会好办很多。具有 VB 或者是 VBA 知识背景的开发工程师会发现,他们以前所具备的 ASP 背景,能够帮助他们缩短学习时间。
▲客户支持
虽然好用而且免费的客户支持已不存在,然而MySQL 倒提供了一些电子群组名单供您参考。有一些是颇具技术性的,而且会员们往往互相提供最佳的客户支持 -- 他们彼此分享经验和专业知识。此外,你还可以购买具有 客户支持 的版本,包括 email 支持或者电话支持的方式。大致上来说,客户支持费率并非固定的,因此我们无法提供你相关价位的信息。
▲MySQL 的不足之处
Access 是一个关联性数据库管理系统(RDBMS),然而 MySQL 并非在每一个层面都是如此。这表示,虽然 MySQL 很好用,它还不是最好的。 以下列表记录了目前关联性层面以及管理层面,MySQL 尚未支持的部分:
MySQL 没法处理复杂的关联性数据库功能,例如,子查询(subqueries),虽然大多数的子查询都可以改写成 join。我们期待下一版出来时,这项功能会被加进来。
另一个 MySQL 没有提供支持的功能是事务处理(transaction)以及事务的提交(commit)/撤销(rollback)。 一个事务指的是被当作一个单位来共同执行的一群或一套命令。如果一个事务没法完成,那么整个事务里面没有一个指令是真正执行下去的。对于必须处理线上订单的商业网站来说, MySQL 没有支持这项功能,的确让人觉得很失望。 但是可以用MaxSQL,一个分开的服务器,它能通过外挂的表格来支持事务功能。
外键(foreign key)以及参考完整性限制(referential integrity)可以让你制定表格中资料间的约束,然后将约束(constraint)加到你所规定的资料里面。这些MYSQL没有的功能表示一个有赖复杂的资料关系的应用程序并不适合使用 MySQL。 当我们说 MySQL 不支持外键时,我们指的就是数据库的参考完整性限制 -- MySQL 并没有支持外键的规则,当然更没有支持连锁删除(cascading delete)的功能。 简短的说,如果你的工作需要使用复杂的资料关联,那你还是用原来的 Access 吧。
你在 MySQL 中也不会找到存储进程(stored procedure)以及触发器(trigger)。(针对这些功能,在 Access 提供了相对的事件进程(event procedure)。)
Access 的 GetRows 功能,提供了较好的资料拾取。
▲总结
下面这个表格能让你对于 MySQL,Access,以及 SQL Server 大致上比起来是怎么样有个基本概念:
□访问频繁的网站
·MySQL √
·Access √**
·SQL Server √
□复杂的资料关联
·MySQL ×
·Access √
·SQL Server √
□在线订单处理
·MySQL √*
·Access √***
·SQL Server √
□兼容性
·MySQL ×
·Access √****
·SQL Server √
□易于使用及操作
·MySQL √
·Access ×
·SQL Server ×
注:
* 需要MaxSQL
** 前提是资料只读的话
*** 通过Jet SQL获得的附加功能
**** 因为只有ADO
如果你需要使用复杂的数据库,并且有很多资源和金钱,那么你就用 SQL Server 吧。如果你仍旧需要复杂的数据库但是却没有雄厚的后援,那么用 Access 看看。至于其他的人,至少应该给 MySQL 一个使用的机会吧!
MySQL和Access是什么?
Microsoft Office Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它以自己的格式将数据存储在基于Access Jet的数据库引擎里。可以将数据直接导入或链接数据。Access支持visual Basic宏语言,是一个面向对象的编程语言,可以引用各种对象,包括DAO(数据访问对象),ActiveX数据对象以及许多其他的ActiveX组件。
MySQL是一个开放源码的关系型数据库管理系统,关联数据库将数据保存在不同的表中,提高了速度;MySQL使用的SQL语言是用于访问数据库的最常用的标准化语言。特性是体积小、速度快、成本低、开放源码,因为其开放源码,所以许多中小型网站为了降低网站总体拥有成本,于是选择MySQL作为网站数据库。
MySQL和Access的区别
MySQL特性:很便宜,通常是免费的;网络承载少;查询优化;可以简便的应用程序通过MySQL做备份;MySQL操纵简单,易上手,且为各种不同的资料格式提供有弹性的扩展界面(ODBC)。
Access特性:简单易学,使用方便,开发效率高。
价格:MySQL对于大多数用户而言是免费的,但是如果你以内嵌的方式使用MySQL或者是只使用MySQL的商业用途软件,你才会需要支付一小笔授权费。而Access的价格更贵一些。
并发处理:Access可以处理的连接数目是无限制的,但是连接必须保持在并发处理的范围限制内;MySQL内定最大连接数为100个使用者,但是即使网络上有大量的资料往来,也不会对MySQL上的查询优化造成太大影响。
资料更新速度:在 Windows 98 上使用相同的硬件和数据尺寸,处理几十万笔资料的时候,MySQL的资料更新速度将明显快于Access; 但是如果处理对象结构,Access将会优于MySQL;当建立表格(table) 以及索引的时候,MySqL 会将表格锁住,如此一来会导致正在进行的大量资料处理速度慢下来,这会保证用户来访时的查询速度,且不会影响网站开发。
结构的优化:MySQL仅需优化硬件条件,而不是MySQL本身;Access的数据库非常的有效率,当然这也有赖于网站的结构设计;MySQL不支持外键,优化时注意如何让存取IO减少到最低值、如何让一个或多个 CPU 随时保持在高速作业的状态、以及适当的网络带宽, 而非实际上的设计以及资料查询语句。
数据备份:MySQL Dump 会产生一个比 Access 好很多而且也更可靠的备份档案。相比之下,在 Access中你只是将一个 MDB 档拷贝起来做备份。其次,即使 MySQL 的备份有部分损坏,复原起来也要比一个损坏的 MDB 档要容易得多了。
资料处理能力:MySQL的资料处理能力比Access强;eg:MySQL如果处理100MB的档案,不会发生承载过重的迹象,而Access就会造成网站效率低下。
MySQL缺点:没法处理复杂的关联性功能;不支持事务处理和事务的提交/撤销;MySQL不支持外键以及参考完整性限制,因此MySQL不适用于有复杂资料关系的应用程序,但是Access可以;而且MySQL也没有存储进程和触发器。当有许多表格需要同时在一个事务过程中完成更新的时候,MySQL的速度较慢。
深入理解MySQLXA事务处理机制mysqlxac
MySQL XA(eXtended Architecture)是一种分布式事务协议,通过该协议,MySQL数据库可以实现分布式事务的控制和管理。在分布式系统中,XA可以协调多个数据库事务的提交,保证数据的一致性和可靠性。在本文中,我们将深入探讨MySQL XA事务处理的机制,并为您提供代码示例。一、MySQL XA事务的基本概念 XA协议主要...
Mysql 数据库文件存储在哪个目录
mysql数据库在系统上是以一个文件夹的形式出现的,你创建了ac数据库,那么在磁盘上就会出现ac的目录,而ac数据库的全局配置则是ac文件夹中的db.opt文件来管理。mysql的数据文件在datadir下,你在数据库中执行 show variables like '%datadir%';就会显示数据库文件的路径,你可以找到ac文件夹。在 MyS...
Mysql之索引的基本概念语法
因为更新表时,MySQL不仅要保存数据,还要保存一下索引文件。建立索引会占用磁盘空间的索引文件。CREATE (UNQIUE)INDEX +索引名称+ON+表名(列名(长度))例如:create unique index ac on sys_user(account);ALTER TABLE+表名+ADD(UNIQUE) INDEX+索引名称(列名)例如:alter table sys_user add uniq...
MySql操作「数据查询条件20211223
带有“%”通配符的查询 “%”是 MySQL 中最常用的通配符,它能代表 **任何长度的字符串** ,字符串的长度可以为 0。例如,a%b表示以字母 a 开头,以字母 b 结尾的任意长度的字符串。该字符串可以代表 ab、acb、accb、accrb 等字符串。注意:匹配的字符串必须加 *单引号* 或 ...
mysql中,以下关于子查询概念和注意事项说法正确的是?
AC,子查询是子查询,父查询不能用子查询里的表。
常见的数据库有哪些
?1.MySQL ?MySQL是最受欢迎的开源SQL数据库管理系统,由MySQL AB公司,发布和支持。 MySQL AB是基于MySQL开发一个商业公司,它是利用与开源值相结合的一个成功的商业模式?和方法论的第二代开源公司。 MySQL是MySQL AB的注册商标。 ?MySQL是一个快速,多线程,多用户和健壮的SQL数据库服务器。 MySQL服务器支持关键...
MYSQL数据库文件在哪个目录
Data\\MySQL\\MySQL Server 5.1\\data(你的可能是C:\\Documents and Settings\\All Users\\Application Data\\MySQL\\MySQL Server 5.0\\datalinux 或windows 下 mysql的数据文件在datadir下,你在数据库中执行 show variables like '%datadir%';就会显示数据库文件的路径,你可以找到ac文件夹 ...
如何开启mysql的慢查询
1,配置开启 Linux:在mysql配置文件my.cnf中增加 log-slow-queries=\/var\/lib\/mysql\/slowquery.log (指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log)long_query_time=2 (记录超过的时间,默认为10s)log-queries-not-using-indexes (log下来没有使用索引的query,可以根据...
几个常用的MySQL性能测试工具
n -s \/usr\/local\/mysql5.5\/mysql\/lib\/libmysqlclient.so.18 \/usr\/lib64\/ 4.如果执行autogen.sh时,报如下错误:.\/autogen.sh: line 3: aclocal: command not found 那么需要安装一个软件:yum install automake 然后需要增加一个参数:查找: AC_PROG_LIBTOOL 将其注释,然后增加AC_PROG_RANLIB ...
mysql 帐号余额和消费记录表设计?
select acc.*, (select sum(balance)+acc.balance from account as ac where ac.id < acc.id) as profit from account as acc;id | no | balance | datetime | profit ---+---+---+---+--- 1 | 1000 | $0.00 | 2013-10-09 10:51:10 | 2 | 1000 | $1...
播炊利佳: 两个不是同类数据库,MYSQL是网络数据库,ACCESS是桌面数据库.展开全部 1.access是文件数据库,必须共享方式在工作站打开. 2.ACCESS的工作模式是在运行端执行SQL语句,而SQL SERVER是在SQL Server服务器上执行.所以在网...
海城市13815759675: mysql和access的区别是什么 - ?
播炊利佳: 众所周知,PHP和ASP.NET是建站所需,前段时间小编已经和大家分享了企业建站选择这两者的区别;可是有许多新手站长表示不清楚使用MySQL和Access数据库有何不同,今天小编就为大家简单分析一下两者的区别. MySQL和Access是什...
海城市13815759675: Access,MSSQL,MYSQL数据库之间有什么区别 - ?
播炊利佳: MySQL和Access的区别MySQL特性:很便宜,通常是免费的;网络承载少;查询优化;可以简便的应用程序通过MySQL做备份;MySQL操纵简单,易上手,且为各种不同的资料格式提供有弹性的扩展界面(ODBC).Access特性:简单易...
海城市13815759675: mysql跟Access数据库有什么不同?
播炊利佳: 这些都是真正的数据库access是桌面数据库,也就是小型数据库,主要用于办公用MySQL 一种免费的开源的数据库,属于中型数据库DB2 也是一种中型数据库Oracle 是一种大型数据库除了Access以外,向MySQL,DB2,Oracle都可以实现跨平台.微软的数据库都不可以跨平台,包括SQL Server2000和SQl Server2005
海城市13815759675: ACCESS、MSSQL、MYSQL 这三个数据库有什么不一样. - ?
播炊利佳: Access:是一种桌面数据库,适合数据量较少的应用,存储数据库(.mdb)文件大小不超过2G字节,数据库中的对象个数不超过32,768.MSSQL:是基于服务器端的中型数据库,可以适合大容量数据的应用,在功能上管理上也要比Access强...
海城市13815759675: Access 和 MySQL 有什么不同??
播炊利佳: 从应用角度来说把,Access只能用在Windows系统下,MySQL就可以跨平台.如果在Windows平台下,Access数据库就是一个文件,不需要单独安装任何东西,就可以.MySQL需要安装MySQL软件.
海城市13815759675: MYSql数据库和ACCESS数据库哪个好?为什么? - ?
播炊利佳: MYSQL是企业级的数据库 ACCESS个人的话比较好用.灵活性也比较大,不用太多的专业知识.
海城市13815759675: access与mysql数据库有什么不同? - ?
播炊利佳: access 是基于文件的数据库,mysql是基于系统的数据库有着本质区别
海城市13815759675: SQL Server数据库与Access数据库有什么区别 - ?
播炊利佳: SQL Server数据库与Access数据库的区别 1、Access是由微软发布的关联式数据库管理系统.它结合了Microsoft Jet Database Engine和图形用户界面两项特点,是Microsoft Office的系统程序之一.Access具有强大的数据处理、统计分析能力...
海城市13815759675: Mysql 和Access 哪个好? - ?
播炊利佳: 两者不能相比 从易用性来说,肯定是Access好,从性能上来说是Mysql好 这个要从应用的需求方面来看!!! 如果你只是做一些数据量很少的数据库或应用程序!那么就可以选择ACCESS!如果数据量很大的话MSSQL和MYSQL是你必须的选择!应为它们在处理大量数据时的速度比较快!