如何使用MySQL管理两张表(mysql两表)

如何使用MySQL管理两张表?

MySQL 是一个非常流行的关系型数据库管理系统,拥有广泛的应用,给程序员们带来了极大的便利。在 MySQL 中,我们可以使用多种方式来管理表,包括创建表、修改表结构、向表中加入数据等等。在日常的开发中,我们经常需要对多张表进行管理,本文将介绍如何使用 MySQL 来管理两张表。

第一步:创建两张表

我们需要在 MySQL 中创建两张表,作为本次操作的目标。假设我们要创建的两张表分别是 student 和 score 。我们可以使用以下 MySQL 命令来创建表:

CREATE TABLE student (

id INT UNSIGNED AUTO_INCREMENT,

name VARCHAR(50) NOT NULL,

age INT UNSIGNED,

PRIMARY KEY (id)

);

CREATE TABLE score (

id INT UNSIGNED AUTO_INCREMENT,

student_id INT UNSIGNED NOT NULL,

subject VARCHAR(50) NOT NULL,

score INT UNSIGNED NOT NULL,

PRIMARY KEY (id),

FOREIGN KEY (student_id) REFERENCES student(id)

);

以上命令将在 MySQL 中创建两张表,分别为 student 和 score 。其中,student 表包含了学生的ID、名字和年龄信息,score 表包含了成绩信息,每条记录还记录了对应学生的 ID。

第二步:插入数据

当两张表创建完成后,我们需要插入一些数据来进行管理。我们可以按照以下命令来插入数据:

INSERT INTO student (name, age) VALUES

(‘张三’, 20),

(‘李四’, 21),

(‘王五’, 22),

(‘赵六’, 23);

INSERT INTO score (student_id, subject, score) VALUES

(1, ‘数学’, 90),

(1, ‘英语’, 80),

(2, ‘数学’, 85),

(2, ‘英语’, 70),

(3, ‘数学’, 92),

(3, ‘英语’, 88),

(4, ‘数学’, 98),

(4, ‘英语’, 92);

以上代码将向 student 表中插入四条学生记录,向 score 表中插入八条记录,分别为四个学生的数学和英语科目成绩。

第三步:查询数据

在插入完成后,我们可以使用以下查询语句来查看数据:

SELECT student.name, score.subject, score.score

FROM student

INNER JOIN score

ON student.id = score.student_id;

以上命令将返回如下结果:

+——-+———+——-+

| name | subject | score |

+——-+———+——-+

| 张三 | 数学 | 90 |

| 张三 | 英语 | 80 |

| 李四 | 数学 | 85 |

| 李四 | 英语 | 70 |

| 王五 | 数学 | 92 |

| 王五 | 英语 | 88 |

| 赵六 | 数学 | 98 |

| 赵六 | 英语 | 92 |

+——-+———+——-+

以上结果将会返回两张表 student 和 score 中的所有数据。由于两张表存在 Student_id 关联,我们使用了 inner join 语句连接两张表中的数据,连接条件为 student_id=id 。

第四步:修改表结构

时常我们在开发过程中需要对表结构,例如修改列名或者增加列等操作进行修改。以下命令可以示范列名的修改。

ALTER TABLE student

CHANGE COLUMN age student_age INT UNSIGNED;

以上命令将会把 student 表中的 age 这个列的名字改变为 student_age 。

第五步:删除数据

如果我们不再需要某些数据,可以使用以下命令来删除数据:

DELETE FROM student WHERE id = 1;

以上命令将删除 student 表中 id=1 的记录。

总结

以上就是如何使用 MySQL 管理两张表的操作流程,包括创建表、插入数据、查询数据、修改表结构和删除数据等操作。作为一名程序员,我们需要深入学习 MySQL 相关知识,掌握这些技能,这将增强我们的开发能力,也将更好的维护数据,让 APP 更快的跑起来。


数据运维技术 » 如何使用MySQL管理两张表(mysql两表)