暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

一如老师手把手教你MySQL:数据库表操作全攻略

一如老师 2024-09-30
92

MySQL实战:一如老师带你轻松掌握数据库表操作

大家好,我是一如老师!今天为大家带来一套MySQL表操作的练习题集,涵盖创建表、主键与外键约束、修改表结构、删除表等操作。通过这些题目,你将全面掌握MySQL中最常用的表操作语句。每个问题都会配有详细的参考代码和解析,让你在实战中不断提升。


4.1 创建表及约束设置

4.1.1 创建表的语法形式

题目要求:创建一个学生表,包含student_id
(自增主键),student_name
(不可为空),age
(默认值为18)。

SQL参考代码

CREATE TABLE students (
    student_id INT PRIMARY KEY AUTO_INCREMENT,
    student_name VARCHAR(50NOT NULL,
    age INT DEFAULT 18
);

解析:此题考查基础建表语法。AUTO_INCREMENT
设置主键自增,NOT NULL
DEFAULT
设置字段约束。

4.1.2 使用主键约束

题目要求:在创建的教师表中,使用teacher_id
作为主键。

SQL参考代码

CREATE TABLE teachers (
    teacher_id INT PRIMARY KEY,
    teacher_name VARCHAR(50)
);

解析PRIMARY KEY
关键字用于声明该字段为主键。

4.1.3 使用外键约束

题目要求:将学生表中的teacher_id
与教师表的teacher_id
关联。

SQL参考代码

ALTER TABLE students ADD CONSTRAINT fk_teacher FOREIGN KEY (teacher_id) REFERENCES teachers(teacher_id);

解析:外键约束FOREIGN KEY
用于建立表与表之间的关系,确保数据的完整性。


4.2 查看表结构

4.2.1 查看表基本结构语句DESCRIBE

题目要求:查看students
表的结构。

SQL参考代码

DESCRIBE students;

解析DESCRIBE
语句用于显示表的字段、数据类型及相关约束。

4.2.2 查看表详细结构语句SHOW CREATE TABLE

题目要求:查看teachers
表的创建语句。

SQL参考代码

SHOW CREATE TABLE teachers;

解析SHOW CREATE TABLE
用于查看完整的建表语句,包括主键、外键等约束。


4.3 修改表结构

4.3.1 修改表名

题目要求:将students
表改名为student_info

SQL参考代码

ALTER TABLE students RENAME TO student_info;

解析RENAME
用于修改表名。

4.3.2 修改字段的数据类型

题目要求:将student_info
表中的age
字段的数据类型改为TINYINT

SQL参考代码

ALTER TABLE student_info MODIFY age TINYINT;

解析MODIFY
用于更改字段的数据类型。

4.3.3 修改字段名

题目要求:将student_info
表中的student_name
字段改为full_name

SQL参考代码

ALTER TABLE student_info CHANGE student_name full_name VARCHAR(100);

解析CHANGE
不仅可以修改字段名,还可以同时修改数据类型。

4.3.4 添加字段

题目要求:在student_info
表中添加email
字段,放在full_name
字段之后。

SQL参考代码

ALTER TABLE student_info ADD email VARCHAR(100AFTER full_name;

解析ADD
用于添加新字段,AFTER
用于指定新字段的排列位置。

4.3.5 删除字段

题目要求:删除student_info
表中的email
字段。

SQL参考代码

ALTER TABLE student_info DROP COLUMN email;

解析DROP COLUMN
用于删除表中的字段。

4.3.6 修改字段的排列位置

题目要求:将student_info
表中的age
字段移到student_id
之后。

SQL参考代码

ALTER TABLE student_info MODIFY age INT AFTER student_id;

解析AFTER
用于调整字段的顺序。

4.3.7 更改表的存储引擎

题目要求:将student_info
表的存储引擎改为InnoDB

SQL参考代码

ALTER TABLE student_info ENGINE = InnoDB;

解析:更改表的存储引擎有助于优化性能,特别是需要事务支持时。

4.3.8 删除表的外键约束

题目要求:删除student_info
表中与teachers
表的外键约束。

SQL参考代码

ALTER TABLE student_info DROP FOREIGN KEY fk_teacher;

解析:删除外键之前需要知道外键的名称,可以通过SHOW CREATE TABLE
命令查询。


4.4 删除数据表

4.4.1 删除没有被关联的表

题目要求:删除没有被其他表关联的teachers
表。

SQL参考代码

DROP TABLE teachers;

解析DROP TABLE
将永久删除表及其数据。

4.4.2 删除被其他表关联的主表

题目要求:删除与学生表有关联的teachers
表,先删除外键再删除表。

SQL参考代码

-- 步骤1:先删除外键约束
ALTER TABLE student_info DROP FOREIGN KEY fk_teacher;

-- 步骤2:删除表
DROP TABLE teachers;

解析:删除外键后,才能安全删除主表。


总结:MySQL表操作全攻略

通过这套题目和解析,你将全面掌握MySQL中表的创建、修改、约束设置、以及删除等操作。每个操作都有详细的SQL示例和解析,帮助你在实战中轻松应对数据库管理的挑战。

关注我,一如老师,带你快速入门MySQL,让你的数据库操作得心应手!

掌握MySQL删除技巧:未关联表与关联表的删除方法

2024-09-18

数据库管理进阶:一如老师带你玩转MySQL表结构修改

2024-09-18

新学期班会计划难?这里有全主题PPT资源免费送!

2024-09-18

数据库管理进阶:一如老师带你玩转MySQL表结构修改

2024-09-17

快速了解数据库表结构:DESCRIBE和SHOW CREATE TABLE命令详解

2024-09-16

文章转载自一如老师,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论