MySQL数据库操作实践:创建与插入数据

需积分: 5 1 下载量 196 浏览量 更新于2024-08-05 收藏 25KB DOCX 举报
"MySQL随堂练习提供了创建数据库、切换数据库、创建学生表并插入数据以及创建分数表并插入数据的相关示例。练习旨在帮助教师备课和学生复习数据库基本操作,涉及的关键知识点包括:数据库创建、数据库切换、数据表结构定义、数据插入以及表间关联。" 在MySQL中,数据库是存储数据的逻辑单位,可以创建和管理多个数据库。在这个练习中,首先创建了一个名为`my_db`的数据库,使用的SQL语句是`CREATE DATABASE my_db;`这将创建一个新的数据库,如果尚未存在的话。 接着,我们需要切换到创建的数据库`my_db`作为当前工作环境,以便在此数据库中创建表和插入数据。使用`USE my_db;`语句可以实现这一目标,它使得所有后续的数据库操作都在`my_db`上下文中进行。 在数据库中,表是用来组织和存储数据的结构。练习中创建了两个表,一个是`student`表,另一个是`score`表。`student`表的定义如下: ```sql CREATE TABLE student ( stu_id INT(10) PRIMARY KEY, stu_name VARCHAR(20) NOT NULL, sex VARCHAR(2), birth YEAR, department VARCHAR(20), addr VARCHAR(50) ); ``` 这个表有六个字段,`stu_id`为主键,确保每个学生的学号都是唯一的且不可为空;`stu_name`记录学生的姓名,不允许为空;`sex`为性别,`birth`为出生年份,`department`为院系,`addr`为出生地址,这三个字段允许为空。 在`student`表中插入数据,使用`INSERT INTO`语句,如下所示: ```sql INSERT INTO student VALUES (901,'张飞','男',1997,'计算机系','河北省涿州市'), (902,'关羽','男',1999,'中文系','山西省运城市'), (903,'貂蝉','女',1999,'中文系','山西省忻州县'), (904,'刘备','男',2001,'英语系','河北省涿州市'), (905,'小乔','女',2001,'英语系','安徽省潜山市'), (906,'赵云','男',1998,'计算机系','河北省正定市'); ``` 同样,创建`score`表并插入数据: ```sql CREATE TABLE score ( score_id INT(10) PRIMARY KEY AUTO_INCREMENT, stu_id INT(10) NOT NULL, c_name VARCHAR(20), grade DECIMAL(5,2) ); ``` `score`表有四个字段,`score_id`为主键并自动递增,`stu_id`为外键,与`student`表中的`stu_id`关联,`c_name`记录课程名,`grade`记录成绩,均为非空。 接着,向`score`表中插入数据,但练习中这部分没有给出完整的SQL语句。通常会涉及到多条`INSERT INTO`语句,每条对应一个学生的一门课程的成绩。 这个练习不仅涵盖了基本的数据库操作,还涉及到了表间关系的概念,即通过`stu_id`字段在`student`和`score`表之间建立了关联。这使得我们可以根据学生的学号查询他们的分数,或者根据分数查询学生的信息,这是数据库设计中的重要概念,称为参照完整性。 这个MySQL练习涵盖了数据库创建、切换、表的创建和数据插入,以及表间关联的基本操作,是学习和理解数据库管理系统操作的绝佳实践材料。对于教师来说,这些练习可以帮助他们准备课程,而对于学生而言,它们提供了复习和巩固MySQL知识的机会。