郭卫东 发表于 5 天前

数据库的基本概念

一、什么是关系型数据库

关系型数据库(Relational Database, 简称 RDB)是一种基于关系模型的数据存储体系。数据在数据库中以表格(Table)的形式组织,表格由行(Row)和列(Column)组成,此中每一行表现一条记录,每一列表现一个字段。它的核心概念是通过关系来管理和组织数据。
1.表(Table)
   

[*]数据的基本存储单位,雷同于二维表格。
[*]每个表由列(字段)和行(记录)组成。
[*]表与表之间可以通过主键和外键建立关系。
2.列(Column)
   

[*]表中的一个字段,用于定义数据的属性(如姓名、年龄、所在等)。
[*]每列有固定的数据类型(如 INT、VARCHAR、DATE)。
3.行(Row)
   

[*]表中的一条记录,表现某个具体对象的数据(如某个学生的姓名和学号)。
[*]每行的数据是唯一的,可以通过主键标识。
4.主键(Primary Key)
   

[*]表中用于唯一标识一条记录的字段。
[*]主键值不能重复,也不能为空。
5.外键(Foreign Key)
   

[*]表中用来建立表与表之间关系的字段。
[*]外键引用另一个表的主键,用于确保数据的完整性和同等性。
6.关系
   

[*]表与表之间通过主键和外键建立连接,从而形成数据之间的逻辑关联。
二、数据库的创建和删除

1.创建数据库
创建数据库是指在数据库体系中划分一块空间,用来存储相应的数据,这是进行表操纵的根本,也是进行数据库管理的根本。
在MySQL中创建数据库之前,可以利用SHOW语句来表现当前已经存在的数据库,具体SQL语句如下:
SHOW DATABASES;
实行效果如下:
https://i-blog.csdnimg.cn/direct/ec159e8f21934a4f8f3167b753f8cc66.png
基本语法:
CREATE DATABASE 数据库名 ;
   

[*]IF NOT EXISTS: 如果数据库不存在,则创建;如果已存在,避免报错。
[*]CHARACTER SET: 指定数据库的字符集(默认是 utf8mb4)。
[*]COLLATE: 指定数据库的排序规则(与字符集相干,默以为 utf8mb4_general_ci)。
示例:
创建一个名为 testdb 的数据库,利用默认字符集和排序规则:
CREATE DATABASE testdb;
创建一个名为 mydb 的数据库,指定字符集为 utf8mb4,排序规则为 utf8mb4_unicode_ci:
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
创建时避免重复报错:
CREATE DATABASE IF NOT EXISTS mydb;
实行效果如下:
https://i-blog.csdnimg.cn/direct/bcf5cdd9efa647359818841d75e6f857.png
2.选择数据库
告诉 MySQL 当前我们要操纵哪个数据库。一旦选择了数据库,后续的所有操纵(如创建表、插入数据、查询数据)都会默认针对该数据库进行。
选择数据库 testdb:
USE testdb;
验证当前选择的数据库:
SELECT DATABASE();
实行效果:
https://i-blog.csdnimg.cn/direct/6233503000604b0b8ba864ca492fd0cf.png
3.删除数据库
在删除数据库之前,起首需要确定所操纵的数据库对象已经存在。在MySQL中删除数据库可以通过SQL语句DROP DATABASE来实现。
基本语法:
DROP DATABASE 数据库名;
   

[*]IF EXISTS: 如果数据库存在,则删除;如果不存在,避免报错。
[*]注意: 删除数据库会移除数据库中的所有表和数据,操纵需审慎。
示例:
删除名为 testdb 的数据库:
DROP DATABASE testdb;
删除时避免报错:
DROP DATABASE IF EXISTS mydb;
https://i-blog.csdnimg.cn/direct/1e5672c1377145639d49570192dc258b.png
三、数据表的操纵

在MySQL数据中,表是一种很重要的数据库对象,是组成数据库的基本元素,由若干个字段组成,重要用来实现存储数据记录。表的操纵包罗创建表、查询表、修改表和删除表,这些操纵是数据库对象的表管理中最基本也是最重要的操纵。
先创建一个数据库:
create database school;
https://i-blog.csdnimg.cn/direct/afbc225a1c524ff692d2e5ec3bb91530.png
然后在此数据库中创建一个班级表:
CREATE TABLE class (
    ID INT AUTO_INCREMENT PRIMARY KEY,      -- 主键,自动递增
    名称 VARCHAR(100) NOT NULL,            -- 学校或班级名称,不允许为空
    班主任 VARCHAR(64) NOT NULL             -- 班主任姓名,不允许为空
);
https://i-blog.csdnimg.cn/direct/c8543111cb744eac90cf9d376930a001.png
向班级表中插入数据:
INSERT INTO class (ID, 名称, 班主任) VALUES (101, '五年级一班', '张老师');
INSERT INTO class (ID, 名称, 班主任) VALUES (102, '五年级二班', '李老师');
https://i-blog.csdnimg.cn/direct/1eb5d1bb0e3e407e94fc91641a43230c.png
查询表中的数据:
查询表class中的全部记录:
select * from class;
https://i-blog.csdnimg.cn/direct/d6349f1b182d4a02a6945a317d53152e.png
根据ID查询指定记录:
select * from class where ID = 101;
https://i-blog.csdnimg.cn/direct/07b6c60b35614028a7dc304981a0a106.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 数据库的基本概念