第一课:MySQL 基础概念解析

一、数据库技术的基础概念

1、数据库(DB)

长期存储在计算机内的、有组织的、可共享的数据集合。

2、数据库管理系统

数据库管理系统(DBMS),是数据库系统的核心。DBMS的主要功能包括数据定义(DDL)、数据操纵(DML)、数据库建立和维护、数据库运行管理。

3、数据库系统(DBS)

指引入数据库技术的计算机系统。

4、数据库系统的特点

    数据结构化

    数据冗余度小

    数据共享性好

    数据独立性好

    数据库保护,主要包括:数据的安全性、完整性、并发控制和故障恢复

5、数据库系统的结构

    客户/服务器结构(C/S)

    浏览器/服务器结构(B/S)

6、数据模型:概念模型、逻辑模型、物理模型

  ?概念模型,主要的概念模型的实体联系(E-R)模型。

        E-R图表示信息世界中的方法,主要有实体(矩形表示)、属性(椭圆形表示)、联系(菱形表示)

        实体集之间的联系有1:1(一对一联系)、1:N(一对多联系)、M:N(多对多联系)。

    ?逻辑模型,是具体的DBMS所支持的数据模型。逻辑数据模型有:层次模型、网状模型、关系模型、面向对象模型

    ?物理模型,描述数据在存储介质上的组织结构。

7、关系的数据结构就是二维表

8、关系数据库

    ?表:也称为关系,由表名、构成表的各个列及若干行数据组成。

    ?列:称作字段或者属性。在一个数据库中,表名唯一;在表中,字段名唯一,不同表中可以出现相同的字段名。

    ?行:表中数据按行存储,也叫做元组或记录。

    ?关键字:主键或码(Key),表中能够唯一确定一个元组的属性或属性组。

    ?候选键:一个表中具有多个能够唯一标识一个元组的属性称为候选键,候选键中任选一个可作为主键。

    ?外部关键字:也叫外键,如果表的一个字段不是本表的主键或候选键,而是另一个表的主键或候选键,则该字段称为外键。

    ?域:属性的取值范围。

    ?数据类型:限制(容许)该列中存储的数据。

9、数据库的基本性质

    ?关系必须满足最基本的要求:每一列都必须是不可再分的数据项

    ?表的任意两个元组不能完全相同

    ?表中每一列都是同一数据类型,且列的值来自相同的域。

    ?不同列的值可以出自同一个域,但列名不能相同。

    ?表中的列的顺序可以任意交换,行的顺序也可以任意交换。

10、数据库设计步骤

    需求分析:整个设计工作的基础。

    概念结构设计:如,E-R图

    逻辑结构设计:如,将E-R图描述的概念模型转换为关系数据模型

    物理结构设计:关系数据库中的物理结构设计主要指设计存储结构和存取方式。

    数据库实施

    数据库运行和维护

11、关系数据库设计方法

    概念结构设计:整个数据库设计的关键,通常使用E-R图。

    逻辑结构设计:将E-R图转换为关系模型,实际就是将实体、属性和联系转换为某种关系模式。

12、MySQL系统特性

    ?MySQL系统源代码具有可移植性。

    ?支持多种操作系统平台。

    ?为多种编程语言提供应用程序编程接口,便于应用程序的开发。

    ?支持多线程服务,可充分利用CPU资源。

    ?提供多种连接数据库的途径。

    ?数据类型丰富。

    ?支持多种存储引擎。

二、MySQL编程语言

1、SQL

    SQL是结构化查询语言。

2、MySQL语言组成

① 数据定义语言(DDL

创建、删除、修改数据库及数据库中的各种对象。数据库对象主要有表、默认约束、规则、视图、触发器、存储过程等。

Create:创建数据库及数据库对象;

Alter:修改数据库及数据库对象;

Drop:删除数据库及数据库对象。

② 数据操纵语言(DML

操纵数据库中各种对象,特别是检索和修改数据。

Select:从表或视图中检索数据

Insert:将数据插入到表或视图中;

Update修改表或视图中的数据;

Delete:从表或视图中删除数据,可根据条件删除指定数据。

③ 数据控制语言(DCL

数据控制语言主要用于安全管理

Grant:授予权限;

Revoke:收回权限。

3、MySQL扩展增加的语言要素

  ■常量:程序运行过程之不变的值,也叫作字面值或标量值。

        字符串常量:单引号或双引号括起来的字符序列,分为ASCII字符串常量和Unicode字符串常量。

        数值常量:整数常量(不带小数点的十进制数)和浮点数常量(使用小数点的数值常量)。

        十六进制常量

        日期时间常量:单引号将表示日期时间的字符串括起来。

        位字段值:使用b'value'符号写位字段值,value是一个用0和1写成的二进制值。位字段符号可以方便指定分配给BIT列的值。

        布尔值:只包含两种可能的值,分别是:TRUE(1)、FALSE(0)

        NULL值:表示没有值或无数据等意义与数字类型的“0”或字符串类型的空字符完全不同

 ■变量:随着程序的运行而变化。变量有变量名和数据类型两种属性。在MySQL中,变量分为用户变量和系统变量。用户变量前常添加一个符号“@”,用于将其与列名区分开;大多数系统变量应用在其他SQL语句中时,必须在系统变量名称前添加两个“@”符号

 ■运算符

     算术运算符:+(加)、-(减)、*(乘)、/(除)、%(求模);

     位运算符:&(位与)、|(位或)、^(位异或)、~(位取反)、>>(位右移)、<<(位左移);

     比较运算符:=(等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)、<>(不等于)、!=(不等于)、<=>(相等或都等于空);

     逻辑运算符:NOT或!(逻辑非)、AND或&&(逻辑与)、OR或||(逻辑或)、XOR(逻辑异或)。

 ■表达式根据表达式的值的数据类型,表达式可以分为字符型表达式、数值型表达式、日期表达式。

 ■内置函数:系统提供的内置函数。MySQL中包含100多个函数,大致分为:数学函数、聚合函数、字符串函数、日期时间函数、加密函数、控制流程函数、格式化函数、类型转换函数、系统信息函数。

4、MySQL几种常用函数

A. 聚合函数

a. CONUT()函数:返回表中所有记录总数

b. SUM()函数:返回表中某个字段取值的总和

c. AVG()函数:返回表中某个字段取值的平均值

d. MAX()函数:返回表中某个字段取值的最大值

e. MIN()函数:返回表中某个字段取值的最小值

B. 数学函数

a. ABS()函数:返回表中某个字段取值的绝对值

b. FLOOR(x)函数:返回小于或等于参数X的最大整数

c. RAND()函数:返回0~1之间的随机数

d. TRUNCATE(x,y)函数:返回x保留到小数点后y位的值

e. SQRT(x)函数:返回参数x的平方根

C. 字符串函数(字符串要加单引号)

a. UPPER(s)和UCASE(s)函数:均可用于将字符串s中所有字母变成大写字母

b. LEFT(s,n)函数:返回字符串s的前n个字符

c. SUBSTRING(s,n,len)函数:返回从字符串s的第n位开始获取长度为len的字符串

D. 日期和时间函数

a. CURDATE()和CURRENT_DATE()函数:返回当前日期

b. CURTIME()和CURRENT_TIME()函数:返回当前时间

c. NOW()函数:返回当前日期和时间。CURRENT_TIMESTAMP()、LOCALTIME()、SYSDATE()、LOCALTIMESTAMP()函数同样返回当前日期和时间。

E. 其他函数

a. IF(expr,v1,v2)函数:一种判断函数,如果表达式expr成立,则执行v1,否则执行v2

b. IFNULL(v1,v2)函数:一种判断函数,如果表达式v1不为空,则显示v1的值,否则显示v2的值

c. VERSION()函数:一种系统信息函数,获取数据库的版本号

陈双义博客

打赏 支付宝打赏 微信打赏
本文标题:第一课:MySQL 基础概念解析
本文链接:https://www.chenshuangyi.com/post/501.html
作者授权:除特别说明外,本文由 陈双义 原创编译并授权 陈双义博客 刊载发布。
版权声明:本文使用「署名-非商业性使用-相同方式共享」创作共享协议,转载或使用请遵守署名协议。协议见页脚-知识共享许可协议。

为您推荐

干货 | 软件性能测试基本测试概念

干货 | 软件性能测试基本测试概念

一、性能测试的目的1、 评估当前系统2、 寻找瓶颈3、 预测未来性能二、性能测试的前提:接...

  第十二课:MySQL 数据库的应用编程

第十二课:MySQL 数据库的应用编程

一、使用PHP进行MySQL数据库应用编程1、建立与MySQL数据库服务器的连接1.1、使用函数mysql_connec...

2019-03-21 标签:MySQL数据库软件测试
第十一课:MySQL 数据库备份与恢复

第十一课:MySQL 数据库备份与恢复

一、MySQL数据库备份与恢复1、使用SQL语句备份和恢复表数据1.1、select into...outfile语句导...

2019-03-21 标签:MySQL数据库软件测试
第十课:MySQL 访问控制与安全管理

第十课:MySQL 访问控制与安全管理

一、用户账户管理1、创建账户基本语法结构:create user user_specification[,us...

2019-03-20 标签:MySQL数据库软件测试
第九课:MySQL 存储过程和存储函数

第九课:MySQL 存储过程和存储函数

一、存储过程存储过程是一组为了完成某特定功能的SQL语句集。一个存储过程是一个可编程的函数,同时可以看做是在数据库编程中...

2019-03-18 标签:MySQL数据库软件测试
第八课:MySQL 事件

第八课:MySQL 事件

一、事件事件和触发器相似,都是在某些事情发生的时候启动,事件也叫作临时触发器事件基于特定时间周期触发来执行某些任务,而触...

2019-03-05 标签:MySQL数据库软件测试
第七课:MySQL 触发器

第七课:MySQL 触发器

一、触发器触发器是一个被指定关联到一个表的数据库对象。触发器用于保障数据库中数据的完整性,以及多个表之间数的一致性。触发...

2019-03-05 标签:MySQL数据库软件测试
第六课:MySQL 视图

第六课:MySQL 视图

一、视图视图是从一个或多个表或者视图中导出的表,也包含一系列带有名称的数据列和若干条数据行视图不同于数据库真实存在的表:...

2019-03-05 标签:MySQL数据库软件测试

发表评论

百度一下
百度搜索
百度广告
站点信息
  • 文章总数:659
  • 页面总数:10
  • 分类总数:12
  • 标签总数:1049
  • 评论总数:147
  • 浏览总数:285781

当前非电脑浏览器正常宽度,请使用移动设备访问本站!