SQL基础之——数据库和SQL基本概念

1. 相关概念

将大量数据保存起来通过计算机加工而成的可进行高效访问的数据集合称为数据库(Database) ,管理数据库的计算机系统称为数据库管理系统(DBMS),关系型数据库通过关系数据库管理系统(RDBMS)进行管理。

2. 为什么需要DBMS

2.1 无法多人共享数据

如果有用户在线阅读或编辑文件,其他用户不可编辑。若为网上商城,则体现为一人购买商品时不允许其他用户同时购买。

2.2 无法提供操作大量数据所需的格式

想要从大量数据中获取想要的数据需要将数据保存为适当的格式,但文本文件与Excel工作表无法提供相应格式。

2.3 实现读写自动化需要编程能力

通过编写计算机程序可以实现数据自动读取和编辑自动化,但必须以了解数据结构为前提,还需具备一定编程能力。

2.4 无法应对突发事故

文件被误删或硬盘故障导致数据无法读取可能会造成重要数据丢失,同时数据可能被他人轻易使用。

DBMS可以克服这些不足,实现多用户同时简单安全的操作大量数据且无需高超的编程技术。

3. RDBMS的常见系统结构

使用RDBMS时最常见的系统结构就是客户端/服务器类型结构(C/S类型)

图1-1 使用RDBMS时的系统结构

服务器指的是用来接收其他程序发出的请求并对该请求进行相应处理的程序(软件),或是安装了此类程序的计算机。

RDBMS也是一种服务器,能从保存在磁盘上的数据库中读取数据并返回,还可以进行更改。由于除了需要同时接收多个客户端的请求外还需要操作存储大量数据的数据库,因此通常被安装在比客户端性能更优越的计算机上。

向服务器发送请求的程序(软件)或是安装了此类程序的设备(计算机)称为客户端。

4. 表的结构

用来管理数据的二维表在关系型数据库中简称为表,一个数据库中可以储存多个表。

根据SQL语句返回的数据同样需要是二维表的形式,否则该SQL无法执行。

4.1 列(字段)

表的列(垂直方向)称为字段,代表保存在表中的数据项目。列的约束比Excel更加严格,定义为数字的列只能输入数字类型,定义为日期类型只能输入日期

图1-2 列的类型定义
图1-2 列的类型定义

在这里插入图片描述
图1-3 列的类型定义对应的输入内容

4.2 行(记录)

表的行(水平方向)称为记录,相当于一条数据,关系型数据库必须以行为单位进行数据读写。
图1-4 一行数据
图1-4 一行数据(图中共五行)

4.3 单元格

行与列交汇的方格称为单元格,一个单元格中只能输入一个数据。

单元格
图1-5 单元格

注:为了防止重要数据被窃读或篡改,RDBMS只允许注册用户接触数据库,该注册用户不同于Windows等操作系统的注册用户,是只能用于RDBMS的用户。注册时除了用户名外还需设置密码,密码虽然不是必需的,但为了防止重要信息泄露,建议设置密码。

5. SQL概要

5.1 标准SQL

SQL原本是为了查询效率而开发的语言,但如今数据的插入删除操作也可以通过SQL完成。

5.2 SQL语句和种类

SQL用关键字,表名,列名等组合而成的一条语句(SQL语句)来描述需要操作的内容,SQL有三类,分别是DDL、DML、DCL。

5.2.1 DDL(Data Definition Language,数据定义语言)

用来创建或删除存储数据用的数据库以及数据库中的表等对象。

CREATE:创建数据库和表等对象
DROP :删除数据库和表等对象
ALTER :修改数据库和表等对象的结构

5.2.2 DML(Data Manipulation Language,数据操纵语言)

用来查询或者变更表中的记录

SELECT:查询表中的数据
INSERT :向表中插入新数据
UPDATE:更新表中的数据
DELETE:删除表中的数据

5.2.3 DCL(Data Control Language,数据控制语言)

用来确认或取消对数据库中数据的变更,还可以对用户权限进行设定。

COMMIT :确认对数据库中的数据进行的变更
ROLLBACK:取消对数据库中的数据进行的变更
GRANT :赋予用户操作权限
REMOVE :取消用户的操作权限

注:实际使用的SQL有90%为DML。

6. SQL的基本书写规则

6.1 SQL语句要以分号( ;)结尾

一条语句可以描述一个数据库操作,在RDBMS中,SQL语句也是逐条执行的。

6.2 SQL语句不区分大小写

SELECT与select一样,按照个人习惯编写,表名列名也是如此。(个人喜欢关键字大写)

但是,插入到表中的数据是区分大小写的,单元格中数据computer,Computer和COMPUTER是不一样的。

6.3 常数的书写方式是固定的

SQL语句中常常需要直接书写字符串、日期或数字,这些数据称为常数。
在语句中含有字符串的时候,需要用单引号将字符串括起来。例如 ‘abc’,用来表示这是一个字符串。
SQL语句中含有日期时,同样需要使用单引号括起来,例如’2023/12/09’,'2023-12-09’等。
书写数字时直接输入即可,不需要单引号。

6.4 单引号,反引号的区别

单引号用来标识字符串和日期等常数
反引号用来标识保留字,例如将要查询的表中有名为select的字段,如果不用反引号(~)加以修饰,语句将会将其认为是SELECT关键字,从而导致语句报错。

6.5 单词需要用空格和换行来分隔,未加分隔的语句会报错

CREATE TABLE Product 正确
CREATETABLE Product 错误
CREATE TABLEProduct 错误

7. 注释的书写

注释是SQL语句中用来标识说明或注意事项的部分。

注释的书写方法有如下两种:

7.1 第一种:单行注释

书写在"-- "之后,只能写在同一行
"–"之后需加上半角空格,否则不会被认为是注释。
例如:

-- 本语句的功能是查询表中全部内容

7.2 第二种:多行注释

书写在 " /* " 和 " */" 之间,可以跨多行。

/*本语句的功能是:
查询表中全部内容*/
  • 18
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值