SQL——数据库基本概念

yumo6661个月前 (04-04)技术文章16

本文以MySQL数据库、以数据库管理工具DBeaver为例介绍数据库基本概念。

数据库:数据库是一系列表的集合,表之间存在主外键关系。数据库通常指关系型数据库。

表:表是由多个字段组成的用于存储数据的集合。

字段:表中一列叫做一个字段。字段用于存储某一类型数据,一个字段必须指定一个数据类型。常用数据类型有:整数、浮点数、字符串、布尔、日期。


记录:表中一行叫做一条记录。



主键:用于唯一标识表中一行记录的字段,叫做主键。主键通常设置为自动增长的整数类型。主键也可以由多个字段组成。

辅键:除主键外也能唯一标识表中一行记录的一个字段或多个字段,叫做辅键。



外键:用于建立表与表之间关联关系的字段称为外键。外键字段的赋值只能是其关联表的主键值。



索引:索引常用于提高数据检查效率。通常需要为经常用于查询数据的字段建立索引。数据库会自动为主键、辅键、外键创建索引。

唯一值索引:索引除用于提高数据检查效率外,还可以对字段赋值进行约束,要求某一个字段的值或某几个字段值的组合唯一,这样的索引叫做唯一值索引。

内置函数:函数分为字符串函数(如:char_length(str), concat(str, str, …))、数值函数(如:round(X), abs(X))、日期函数(如:now(), date(expr))、流程控制函数(如:case,if(expr1, expr2, expr3))、聚集(group by)函数(如:count(), sum(), avg(), min(), max())等。

操作符:操作符分为数值运算符(如:+-*/%)、逻辑运算符(如:and或&&,or或||,not或!)等等。

存储过程:存储在数据库中的一系列SQL的集合,用于完成某项特定功能。存储过程不能有返回值。

存储函数:存储函数用于封装一段SQL代码,完成一种特定的功能,返回结果。

存储函数与存储过程的区别:

1)存储函数有且只有一个返回值,而存储过程不能有返回值。

2)存储函数只能有输入参数,而且不能带in, 而存储过程可以有多个in,out,inout参数。

3)存储过程中的语句功能更强大,存储过程可以实现很复杂的业务逻辑,而存储函数有很多限制,如不能在函数中使用insert,update,delete,create等语句;存储函数只能完成查询的工作,可接受输入参数并返回一个结果。

4)存储过程可以调用存储函数,但存储函数不能调用存储过程。

5)存储过程一般是作为一个独立的部分来执行(用call调用)。而存储函数可以作为查询语句的一个部分来调用。

相关文章

mariadb数据库设计基础概念

1.数据库设计数据库设计是构建高效、可维护数据库的关键步骤,而范式是数据库设计中的规范化理论,用于减少数据冗余和提高数据一致性。数据库设计通常包括以下步骤:需求分析:了解业务需求,确定数据存储和访问需...

1.数据库相关概念及系统结构

一、数据库相关概念1、视图:是一个虚拟表,其内容由查询定义(仅保存在SQL查询语句)同真实的表一样,视图也有一系列的行列数据,但是视图并没有真正存储这些数据,而是通过查询原始表,动态生成所需要的数据。...

数据库设计规范

1 编写目的本文的目的是提出针对Oracle数据库的设计规范,使利用Oracle数据库进行设计开发的系统严格遵守本规范的相关约定,建立统一规范、稳定、优化的数据模型。参照以下原则进行数据库设计:1)...

数据库模型怎么画?5个步骤完成数据库模型图

数据库模型是数据库的抽象,也是数据库的核心以及基础。数据库模型描述的内容包括有数据结构,数据操作和数据的约束条件。数据结构用来描述数据的类型,内容,性质,以及数据之间的关系;数据操作主要是描述在数据结...

干掉 powerdesigner,设计数据库表用它就够了

最近有个新项目刚过完需求,正式进入数据库表结构设计阶段,公司规定统一用数据建模工具 PowerDesigner。但我并不是太爱用这个工具,因为它的功能实在是太多了,显得很臃肿,而平时设计表用的也就那么...

项目经验[类目]:数据库设计基础(一)

数据库架构研发是一个非常庞大的基础性工作,我主要是根据项目研发过程当中设计数据库的项目经验与大家做一下分享,分享议题主要由几个方面组成,数据库设计基础经验(一)、数据库设计原则设计经验(二)、数据库测...