什么是MySQL中的模式

700 阅读3分钟

MySQL中的数据是以表的形式在数据库中管理的,表又由行和列组成。什么是模式? 模式与数据库不同,因为它没有数据库拥有的所有权限,它只有表、行和列的权限,定义了数据库的结构。

在这篇文章中,我们将解释什么是模式,它是如何工作的,以及模式和数据库之间有什么区别。

什么是模式

数据库模式是数据库的一个架构,它拥有关于数据如何被放置在表中的信息,但应该清楚的是,模式与数据本身没有任何关系,它只是告诉了数据在数据库中的可能放置方式。我们可以把模式定义为任何数据库的结构,它告诉我们关于表的表示方法,它还定义了表的行数、列数、与表相关的主键和外键,还定义了要插入表的数据类型。

通常在公司里,数据库管理员负责为任何数据库提供一个适当的模式,数据库开发人员根据这个模式来开发数据库。

数据库和模式之间的比较

数据库模式
在表中存储数据在表的基础上提供数据库的逻辑表示。
DML(数据修改语言)用于管理数据库中的数据DDL(数据定义语言)用于管理表的表示方法
数据可以在任何时候被编辑不支持修改
它包括表、模式和数据库的所有其他约束条件它只包括表的结构和与表有关的权限
它占用服务器上的内存不占用内存

模式的类型有哪些

模式可以根据其功能分为两种类型,如下图所示。

物理模式。这是一种可以被用户查看的模式,它涉及到数据的存储方法以及它们在数据库中的表现方式。

**逻辑模式。**这是一种模式,它告诉我们创建数据库背后的概念,它解释了表的形成,数据库中表之间的关系,以及表中使用的键,可以是主键和外键。假设上面的例子是 "school_record_of_students",现在它定义了表的行数和列数,并且它还在主键和外键的帮助下,将它与其他表联系起来,比方说 "record_of_grade_2_students"。

模式如何在MySQL中工作

我们将尝试创建名为 "company_abc "的数据库和名为 "school_abc "的模式,我们将创建表并尝试在两个表中插入数据并观察结果,但在创建表之前,我们将创建一个数据库为

CREATE DATABASE company_abc;

使用这个数据库来创建表。

USE company_abc;

创建一个表,并将其命名为 "employees_data"。

CREATE TABLE employees_data (employee_id INT, employee_name VARCHAR(50), employee_age INT);

在表中插入数据。

INSERT INTO student_data VALUE (1, “Steward”, 25);

要显示该表。

SELECT * FROM employees_data;

同样地,我们将创建一个模式 "school_abc"。

CREATE SCHEMA school_abc;

使用新创建的模式。

USE school_abc;

在schema school_abc中创建一个表。

CREATE TABLE student_data (student_id INT, student_name VARCHAR(50), student_age INT);

现在在表中插入数据。

INSERT INTO student_data VALUE (1, “John”, 16);

要显示该表。

SELECT * FROM student_data;

要显示数据库。

SHOW databases;

我们可以观察到,在MySQL中,不仅模式的创建和显示与数据库的创建方式相同,而且表也在模式和数据库中都被创建。

总结

模式是一种结构,可以帮助开发人员按照一个单一的模式创建许多数据库。在这篇文章中,我们已经了解到模式是数据库的逻辑表示,它与数据库不同,因为它不占用任何空间,而数据库在服务器上占用一些空间,但在例子的帮助下,我们已经推断出结果,在MySQL中,模式只是数据库的同义词,可以执行与数据库相同的功能。