MySQL学习(1)----了解SQL

前言

开始学MySQL,我采用的是《MySQL必知必会》与菜鸟教程相结合,我本科时蹭过课,但是没听多少,所以还是算从没有学过MySQL的那种。

第一章 了解SQL

数据库基础

1.1.1 什么是数据库

数据库这个术语的用法很多,但就本书而言,++数据库是一个以某种
有组织的方式存储的数据集合++。

理解数据库的一种最简单的办法是将其想象为一个文件柜。此文件柜是一个存放数据的物理位置,不管数据是
什么以及如何组织的。

数据库(database) 保存有组织的数据的容器(通常是一个文
件或一组文件)

注意:误用导致混淆 人们通常用数据库这个术语来代表他们使用
的数据库软件。这是不正确的,它是引起混淆的根源。确切
地说,数据库软件应称为DBMS(数据库管理系统)。++数据库
是通过DBMS创建和操纵的容器++。数据库可以是保存在硬设备
上的文件,但也可以不是。在很大程度上说,数据库究竟是
文件还是别的什么东西并不重要,因为你并不直接访问数据
库;你使用的是DBMS,它替你访问数据库。

1.1.2 表和模式

在数据库领域中,这种文件称为表。表是一种结构化的文件,可用
来存储某种特定类型的数据。表可以保存顾客清单、产品目录,或者其
他信息清单。

表(table) 某种特定类型数据的结构化清单。

这里关键的一点在于,存储在表中的数据是一种类型的数据或一个
清单。决不应该将顾客的清单与订单的清单存储在同一个数据库表中。这
样做将使以后的检索和访问很困难。应该创建两个表,每个清单一个表。

表的名字是唯一的,表名的唯一性取决于多个因素,++如数据库名和表名等的
结合。这表示,虽然在相同数据库中不能两次使用++

  • 模式

描述表
的这组信息就是所谓的模式,

模式可以用来描述数据库中特定的表以及
整个数据库(和其中表的关系)。

模式(schema) 关于数据库和表的布局及特性的信息。

模式类似与现实中的各种标准,比如通信领域的3、4、5G的标准,那么通信就要遵循该标准。同样,如果数据库和表同样要遵循特定的标准,那么这个标准就是模式。

1.1.3 列和数据类型

表由列组成。列中存储着表中某部分的信息。

列(column) 表中的一个字段。所有表都是由一个或多个列组
成的。

  • 数据类型

数据库中每个列都有相应的数据类型。

数据类型(datatype) 所容许的数据的类型。每个表列都有相
应的数据类型,它限制(或容许)该列中存储的数据。

数据类型限制可存储在列中的数据种类(例如,防止在数值字段中
录入字符值)。数据类型还帮助正确地排序数据,并在优化磁盘使用方面
起重要的作用

1.1.4 行

表中的数据是按行存储的,所保存的每个记录存储在自己的行内。

如果将表想象为网格,网格中垂直的列为表列,水平行为表行。

例如,顾客表可以每行存储一个顾客。表中的行数为记录的总数

++行(row) 表中的一个记录。++

1.1.5 主键

主键(primary key)一 一列(或一组列),其值能够唯一区分表
中每个行。

表中的任何列都可以作为主键,只要它满足以下条件:

  • 任意两行都不具有相同的主键值;

  • 每个行都必须具有一个主键值(主键列不允许NULL值)。

1.1.6 总结

MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格"的概念。

1.png

稍微总结一些


**数据库**:是保存有组织的数据的容器,是一些关联表的集合

**表**:某种特定类型数据的结构化清单,关系数据库管理系统中数据库由若干张表组成。

**表头**:每一列的名称

模式:关于数据库和表的布局及特征的信息(特征、布局、表和数据库的关系)

**列**:表是由列组成,每个列都有相应的数据类型,具有相同数据类型的数据集合

**行**:表中数据是按行存储的,表示表中的一个记录。用来描述某条记录的具体信息。

**值**(value): 行的具体信息, 每个值必须与该列的数据类型相同;

**主键**:键的值在当前列中具有唯一性,用来区别每一行,,一个数据表只包含一个主键,可以用主键来查数据

1.2 什么是SQL

++SQL是一种专门用来与数据库通信的语言。++

SQL有如下的优点。

  • SQL不是某个特定数据库供应商专有的语言。几乎所有重要的
    DBMS都支持SQL,所以,学习此语言使你几乎能与所有数据库
    打交道。

  • SQL简单易学。它的语句全都是由描述性很强的英语单词组成,
    而且这些单词的数目不多。

  • 尽管看上去很简单,但它实际上是一种强有力的语言,灵活
    使用其语言元素,可以进行非常复杂和高级的数据库操作。

SQL不是一种专利语言,而且存在一个标
准委员会,他们试图定义可供所有DBMS使用的SQL语法,但
事实上任意两个DBMS实现的SQL都不完全相同。《MySQL必知必会》讲授的
SQL是专门针对MySQL的,虽然书中所讲授的多数语法也适
用于其他DBMS,但++不要认为这些SQL语法是完全可移植的++。


《mysql必知必会》pdf下载

《mysql必知必会》程序需要用到的数据表下载

发布了53 篇原创文章 · 获赞 4 · 访问量 1317

猜你喜欢

转载自blog.csdn.net/weixin_43351473/article/details/104449555