{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

MySQL和SQL的本质区别是什么?

xiaokaixiaokai 回答0 收藏1
收藏问题

10条回答

Java_oldboy

Java_oldboy

回答于2022-06-28 13:49

看似MySQL和SQL很像,其实这两者本质上是有区别的,更不能把这两者都当成数据库来看待。

SQL是数据库管理及查询语言

SQL是结构化查询语言的英文简称,为便于理解,我们可以把SQL直接理解成操作关系型数据库的语言,它是一种特殊的编程语言

SQL结构化查询语言其实有很多功能,数据库查询只是其中一部分,一般而言SQL语言主要包含以下几个部分:

  • 数据库查询语言:确定数据如何查出

  • 数据库操作语言:主要是Insert、Update、Delete等操作

  • 事务控制语言:主要包含Commit、Rollback等事务类操作

  • 数据定义语言:主要是对表进行的一些操作,如:Create、Alter、Drop等。

另外需要注意的是:SQL只是一种标准,不同的数据库对SQL语句的支持是不同的,比如你在MySQL中能执行某条SQL语句,同样的SQL语句在Oracle中就未必能执行!

MySQL是一种关系型数据库

MySQL它是当下应用最为广泛的开源关系型数据库,它是一款数据库综合软件,主要是用来管理和存储数据库中的数据的,它除了提供基本的数据库功能外,也支持SQL语言。


总结:SQL是一种用来操作数据库的程序语言,不同数据库的SQL语句也存在一些差异;而MySQL是一种数据库,通过SQL语言可以从MySQL中查找数据。

现在很多人把数据库简称为SQL,其实这是错误的!

评论0 赞同0
  •  加载中...
Jensen

Jensen

回答于2022-06-28 13:49

1.根本的区别是它们遵循的基本原则

二者所遵循的基本原则是它们的主要区别:开放vs保守。SQL服务器的狭隘的,保守的存储引擎与MySQL服务器的可扩展,开放的存储引擎绝然不同。虽然你可以使用SQL服务器的Sybase引擎,但MySQL能够提供更多种的选择,如MyISAM, Heap, InnoDB, and Berkeley DB。MySQL不完全支持陌生的关键词,所以它比SQL服务器要少一些相关的数据库。同时,MySQL也缺乏一些存储程序的功能,比如MyISAM引擎联支持交换功能。

2.性能:先进的MySQL

纯粹就性能而言,MySQL是相当出色的,因为它包含一个缺省桌面格式MyISAM。MyISAM 数据库与磁盘非常地兼容而不占用过多的CPU和内存。MySQL可以运行于Windows系统而不会发生冲突,在UNIX或类似UNIX系统上运行则更好。你还可以通过使用64位处理器来获取额外的一些性能。因为MySQL在内部里很多时候都使用64位的整数处理。Yahoo!商业网站就使用MySQL作为后台数据库。

当提及软件的性能,SQL服务器的稳定性要比它的竞争对手强很多。但是,这些特性也要付出代价的。比如,必须增加额外复杂操作,磁盘存储,内存损耗等等。如果你的硬件和软件不能充分支持SQL服务器,我建议你最好选择其他如DBMS数据库,因为这样你会得到更好的结果。

3.发行费用:MySQL不全是免费,但很便宜

当提及发行的费用,这两个产品采用两种绝然不同的决策。对于SQL服务器,获取一个免费的开发费用最常的方式是购买微软的Office或者Visual Studio的费用。但是,如果你想用于商业产品的开发,你必须还要购买SQL Server Standard Edition。学校或非赢利的企业可以不考虑这一附加的费用。

4.安全功能

MySQL有一个用于改变数据的二进制日志。因为它是二进制,这一日志能够快速地从主机上复制数据到客户机上。即使服务器崩溃,这一二进制日志也会保持完整,而且复制的部分也不会受到损坏。

在SQL服务器中,你也可以记录SQL的有关查询,但这需要付出很高的代价。

安全性

这两个产品都有自己完整的安全机制。只要你遵循这些安全机制,一般程序都不会出现什么问题。这两者都使用缺省的IP端口,但是有时候很不幸,这些IP也会被一些黑客闯入。当然,你也可以自己设置这些IP端口。

恢复性:先进的SQL服务器

恢复性也是MySQL的一个特点,这主要表现在MyISAM配置中。这种方式有它固有的缺欠,如果你不慎损坏数据库,结果可能会导致所有的数据丢失。然而,对于SQL服务器而言就表现得很稳键。SQL服务器能够时刻监测数据交换点并能够把数据库损坏的过程保存下来。

评论0 赞同0
  •  加载中...
Half

Half

回答于2022-06-28 13:49

一个是数据库管理软件,一个是数据库语言!

评论0 赞同0
  •  加载中...
baihe

baihe

回答于2022-06-28 13:49

这好比问汽车跟发动机的区别是什么!不具备可比性。我猜是想问mysql与微软的sqlserver的区别吧?

评论0 赞同0
  •  加载中...
BlackMass

BlackMass

回答于2022-06-28 13:49

一句话:sql是一种操作数据处理数据的语言,而mysql则是实现了sql规范解析sql的操作数据的客户端工具是一种关系型数据库应用软件.

而这些客户端有两大分类关系型和非关系型:关系型如mysql sqlserver oracle等 分关系型如:redis memcache mongdb等

评论0 赞同0
  •  加载中...
Cympros

Cympros

回答于2022-06-28 13:49

相辅相成关系,mysql是物理层面上存放数据的储存器,sql是从数据库中取出数据的一种实现途径,mysql因为其小体量,年费来源,功能强大在各大小公司备受欢迎,sql则是可以适用于合种类型数据库而成为程序开发必备的技能,相对来说sql的应用更加广泛,两者本质上是不同纬度的产品

评论0 赞同0
  •  加载中...
李昌杰

李昌杰

回答于2022-06-28 13:49

一个开源免费,一个收费。

评论0 赞同0
  •  加载中...
iliyaku

iliyaku

回答于2022-06-28 13:49

简单说:SQL是一种计算机语言,大多数多数据库管理系统都能运行这种语言,彼此的差别很小。而MySQL是一个数据库管理系统,这样的系统,最著名的比如有Oracle,微软的Ms SQLServer,IBM的DB/2,免费的如postgresql或者MySQL,这些数据库管理系统都运行SQL语言编写的程序。

评论0 赞同0
  •  加载中...
marek

marek

回答于2022-06-28 13:49

最本质的区别,一个收费,一个不收费[呲牙]

评论0 赞同0
  •  加载中...
shenhualong

shenhualong

回答于2022-06-28 13:49

SQL是关系数据库的标准语言。mysql属于关系数据库的一种,它是一个软件产品,和mysql像类似的有oracle sql server等,他们都属于关系型数据库使用的语言都是基于sql语言。

评论0 赞同0
  •  加载中...

相关问题

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<