志在指尖
用双手敲打未来

mysql和sql一样吗(学sql需要什么基础)

mysqlsql一样吗

在本文中,我们将评论SQL和MySQL之间的首要区别。在评论SQL和MYSQL的区别之前,让我们先别离看看SQL是什么,MySQL是什么,以便更好地理解它们。
什么是SQL?
SQL是一种用于操作数据库的言语。SQL是用于一切数据库的根本言语。不同数据库之间的语法略有改变,但根本的SQL语法根本保持不变。SQL是结构化查询言语的简称。根据ANSI(美国国家规范协会),SQL是操作关系数据库管理体系的规范言语。
SQL用于拜访、更新和操作数据库中的数据。它的设计答应在RDBMS中管理数据,例如MYSQL。SQL言语还用于操控数据拜访以及创建和修正数据库模式。
什么是MYSQL?
MySQL开发于90年代中期,是市场上最早可用的开源数据库之一。今天有许多MySQL的替代变体。可是,变体之间的差异并不明显,由于它们运用相同的语法,并且根本功能也保持不变。
MySQL是一个RDBMS,它答应将数据库中存在的数据组织起来。MySQL的发音为“MySQL”,但也称为“MySequel”。它以联合创始人MichaelWidenius的女儿的姓名命名。MySQL提供对数据库的多用户拜访。该RDBMS体系与PHP和ApacheWebServer结合运用,坐落Linux发行版之上。MySQL运用SQL言语来查询数据库。mysql
首要区别:
SQL是一种用于操作数据库的言语,而MySQL是市场上最早可用的开源数据库之一。
SQL用于拜访、更新和操作数据库中的数据,而MySQL是一种RDBMS,答应将数据库中存在的数据组织起来。
SQL是一种结构化查询言语,而MySQL是一种用于存储、检索、修正和管理数据库的RDBMS。
SQL是一种查询言语,而MYSQL是一种数据库软件。

学sql需要什么基础

SQL正是用来完成这一使命的言语,因而在学习SQL之前,你应该对数据库及数据库技能的某些基本概念有所了解。
你可能还没有意识到,其实自己一直在运用数据库。每当你在手机上选取联系人,或从电子邮件地址簿里查找名字时,便是在运用数据库。
你在网站上进行搜索,也是在运用数据库。你在工作中登录网络,也需求依托数据库验证用户名和密码。即便是在主动取款机上运用ATM卡,也要运用数据库进行密码验证和余额查询。
尽管咱们一直都在运用数据库,但对终究什么是数据库并不非常清楚。更何况人们可能会运用同一个数据库术语表明不同的事物,这样一来,就进一步加重了这种混乱。
因而,咱们首先给出一些最重要的数据库术语,并加以阐明。
提示:基本概念回忆
后面是一些基本数据库概念的简要介绍。假如你现已具有必定的数据库经历,能够借此复习巩固一下;假如你刚开始触摸数据库,能够由此了解必需的基本知识。
理解数据库概念是学习并把握SQL的重要前提,假如有必要,你或许还应该找本好书好好补一补数据库基础知识。
1.1数据库
数据库这个术语的用法许多,但就本博客中的SQL分类下的文章而言,数据库是以某种有安排的方式存储的数据调集。
最简略的办法是将数据库幻想为一个文件柜。文件柜仅仅一个寄存数据的物理位置,它不论数据是什么,也不论数据是怎么安排的。
数据库(database)
保存有安排的数据的容器(一般是一个文件或一组文件)。
留意:误用导致混杂
人们一般用数据库这个术语来代表他们运用的数据库软件,这是不正确的,也因而产生了许多混杂。确切地说,数据库软件应称为数据库办理系统(DBMS)。
数据库是经过DBMS创立和操作的容器,而详细它终究是什么,方式怎么,各种数据库都不相同。mysql
1.2表
你往文件柜里放材料时,并不是随便将它们扔进某个抽屉就完事了的,而是在文件柜中创立文件,然后将相关的材料放入特定的文件中。
在数据库领域中,这种文件称为表。表是一种结构化的文件,可用来存储某种特定类型的数据。表能够保存顾客清单、产品目录,或许其他信息清单。
表(table)
某种特定类型数据的结构化清单。
这里的要害一点在于,存储在表中的数据是同一品种型的数据或清单。决不应该将顾客的清单与订单的清单存储在同一个数据库表中,不然以后的检索和访问会很困难。应该创立两个表,每个清单一个表。
数据库中的每个表都有一个名字来标识自己。这个名字是仅有的,即数据库中没有其他表具有相同的名字。
阐明:表名
使表名成为仅有的,实际上是数据库名和表名等的组合。有的数据库还运用数据库具有者的名字作为仅有名的一部分。
也便是说,尽管在一个数据库中不能两次运用相同的表名,但在不同的数据库中完全能够运用相同的表名。
表具有一些特性,这些特性定义了数据在表中怎么存储,包括存储什么样的数据,数据怎么分解,各部分信息怎么命名等信息。
描绘表的这组信息便是所谓的形式(schema),形式能够用来描绘数据库中特定的表,也能够用来描绘整个数据库(和其中表的联系)。
形式
关于数据库和表的布局及特性的信息。
1.3列和数据类型
表由列组成。列存储表中某部分的信息。
列(column)
表中的一个字段。一切表都是由一个或多个列组成的。
理解列的最好办法是将数据库表幻想为一个网格,就像个电子表格那样。网格中每一列存储着某种特定的信息。
例如,在顾客表中,一列存储顾客编号,另一列存储顾客名字,而地址、城市、州以及邮政编码全都存储在各自的列中。
提示:数据分解
正确地将数据分解为多个列极为重要。例如,城市、州、邮政编码应该总是互相独立的列。经过分解这些数据,才有可能运用特定的列对数据进行分类和过滤(如找出特定州或特定城市的一切顾客)。
假如城市和州组合在一个列中,则按州进行分类或过滤就会很困难。你能够根据自己的详细需求来决定把数据分解到何种程度。
例如,一般能够把门商标和大街名一同存储在地址里。
这没有问题,除非你哪天想用大街名来排序,这时,最好将门商标和大街名分隔。
数据库中每个列都有相应的数据类型。数据类型(datatype)定义了列能够存储哪些数据品种。
例如,假如列中存储的是数字(或许是订单中的物品数),则相应的数据类型应该为数值类型。假如列中存储的是日期、文本、注释、金额等,则应该规定好恰当的数据类型。
数据类型
答应什么类型的数据。每个表列都有相应的数据类型,它限制(或答应)该列中存储的数据。
数据类型限定了可存储在列中的数据品种(例如,避免在数值字段中录入字符值)。数据类型还协助正确地分类数据,并在优化磁盘运用方面起重要的作用。
因而,在创立表时必须特别重视所用的数据类型。
留意:数据类型兼容
数据类型及其称号是SQL不兼容的一个主要原因。尽管大大都基本数据类型得到了共同的支撑,但许多高档的数据类型却没有。
更糟的是,偶尔会有相同的数据类型在不同的DBMS中具有不同的称号。对此用户毫无办法,重要的是在创立表结构时要记住这些差异。
1.4行
表中的数据是按行存储的,所保存的每个记载存储在自己的行内。假如将表幻想为网格,网格中笔直的列为表列,水平行为表行。
例如,顾客表能够每行存储一个顾客。表中的行编号为记载的编号。
行(row)
表中的一个记载。
阐明:是记载还是行?
你可能听到用户在提到行时称其为数据库记载(record)。这两个术语多半是能够互通的,但从技能上说,行才是正确的术语。
1.5主键
表中每一行都应该有一列(或几列)能够仅有标识自己。顾客表能够运用顾客编号,而订单表能够运用订单ID。雇员表能够运用雇员ID。书目表则能够运用国际标准书号ISBN。
主键(primarykey)
一列(或几列),其值能够仅有标识表中每一行。
仅有标识表中每行的这个列(或这几列)称为主键。主键用来表明一个特定的行。没有主键,更新或删除表中特定行就极为困难,因为你不能确保操作只触及相关的行,没有伤及无辜。
提示:应该总是定义主键
尽管并不总是需求主键,但大都数据库规划者都会确保他们创立的每个表具有一个主键,以便于以后的数据操作和办理。
表中的任何列都能够作为主键,只需它满足以下条件:
恣意两行都不具有相同的主键值;
每一行都必须具有一个主键值(主键列不答应空值NULL);
主键列中的值不答应修改或更新;
主键值不能重用(假如某行从表中删除,它的主键不能赋给以后的新行)。
主键一般定义在表的一列上,但并不是必须这么做,也能够一同运用多个列作为主键。在运用多列作为主键时,上述条件必须应用到一切列,一切列值的组合必须是仅有的(但其中单个列的值能够不仅有)。
还有一种非常重要的键,称为外键,咱们在怎么运用SQLINNERJOIN联合两个或多个表中介绍。
二、什么是SQL
SQL(发音为字母S-Q-L或sequel)是StructuredQueryLanguage(结构化查询言语)的缩写。SQL是一种专门用来与数据库交流的言语。
与其他言语(如英语或Java、C、PHP这样的编程言语)不相同,SQL中只要很少的词,这是有意而为的。规划SQL的意图是很好地完成一项使命——供给一种从数据库中读写数据的简略有用的办法。
SQL有哪些长处呢?
SQL不是某个特定数据库厂商专有的言语。绝大大都重要的DBMS支撑SQL,所以学习此言语使你几乎能与一切数据库打交道。
SQL简略易学。它的句子全都是由有很强描绘性的英语单词组成,而且这些单词的数目不多。
SQL尽管看上去很简略,但实际上是一种强有力的言语,灵敏运用其言语元素,能够进行非常复杂和高档的数据库操作。
下面咱们将开始真实学习SQL。
阐明:SQL的扩展
许多DBMS厂商经过添加句子或指令,对SQL进行了扩展。这种扩展的意图是供给履行特定操作的额外功能或简化办法。尽管这种扩展很有用,但一般都是针对单个DBMS的,很少有两个厂商一起支撑这种扩展。
标准SQL由ANSI标准委员会办理,然后称为ANSISQL。一切主要的DBMS,即便有自己的扩展,也都支撑ANSISQL。各个完成有自己的称号,如Oracle的PL/SQL、微软SQLServer用的Transact-SQL等。
三、着手实践
与其他任何言语相同,学习SQL的最好办法是自己着手实践。为此,需求一个数据库和用来测验SQL句子的应用系统。
3.1该选哪个DBMS?
你需求用一种DBMS来跟着学,那么该选哪一个呢?
基本上有两种做法。一种是你在自己电脑上装置一个DBMS(以及有关的客户端软件),这样做你用起来便利,好控制。但是对许多人来说,要学SQL最费事的一关便是装置装备DBMS了。
另一种做法是经过网络运用远程(或云端)DBMS,你不需求办理或装置任何东西。
要是准备在自己电脑上装置,其实可选的许多。我给两个建议:
MySQL(或派生的MariaDB)是很不错的,免费,每个主流操作系统都支撑,装置简洁,它也是最流行的DBMS之一。
MySQL自带一个命令行工具,你能够输入SQL命令,但最好是运用MySQLWorkbench,你也把它下载装置吧(一般是要独自装置的)。
Windows用户能够运用MicrosoftSQLServerExpress。这是强壮的SQLServer的一个免费版本,它还包括一个用户友好的客户端叫SQLServerManagementStudio。
要是准备运用远程(或云端)DBMS的话,我的建议是:
假如你是为工作需求而学习SQL,那么你们公司应该会有DBMS供你运用。这样的话,你应该能够得到登录名和连接工具,能够访问DBMS并输入和测验你的SQL句子。
云端DBMS是指运行在虚拟服务器上的DBMS,用起来就像自己机器上装置了DBMS,而实际上不需求装置。一切主流的云服务厂商(如谷歌、亚马逊、微软)都供给云端DBMS。
可是,设置云端DBMS(包括装备远程访问)都不太简略,常常比自己装置个DBMS还要费事。
有两个例外,Oracle的LiveSQL和IBM的云端DB2,它们供给的免费版本有Web界面,你只需求在浏览器里输入SQL句子就能够了。
学习SQL所用到的样例表脚本解说了什么是样例表,并详述了怎么获得(或创立)样例表。

未经允许不得转载:IT技术网站 » mysql和sql一样吗(学sql需要什么基础)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载