MySQL学习之数据库基本操作篇
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一:创建并使用一个数据库。
实验背景:
把MySQL安装在Ubuntu linux上之后,我们的老师和学生们仍然不能直接使用MySQL 登记或查看学生的信息。MySQL是关系数据库的一种,关系数据库的数据在逻辑上是以二维表的形式组织起来的。所以我们要先建立数据库和表。
实验目的:
掌握在MySQL中创建数据库,创建表。设置主键,设置字段默认值以及约束的方法。
实验分析:
1)使用MySQL的命令创建一个数据库。
2)使用这个新建的数据库。
3)在这个数据库中创建表并设置表中字段的属性。
注意:MySQL的命令通常由SQL语句组成,命令的结尾以分号结束。(有些例外不需要加分号,例如退出的命令exit)
说明:使用MySQL的连接命令连接到MySQL,即进入了MySQL的客户端。
客户端提示符:
●mysql>表示准备好接受一条新命令。
●->为等待多行命令的下一行。
●’>为等待下一行,收集以单引号开始的字符串。
●”>为等待下一行,收集以双引号开始的字符串。
●如果想取消之前输入命令的执行,打入\c取消命令的执行。
注:此手册中用到的SQL语句语法可参考《SQL学习手册》
实验步骤:
步骤一:新建数据库和表。
1)打开终端,使用root用户连接上MySQL。使用命令:mysql –u root –p
2)新建一个数据库,名为student_management。使用命令:create database
student_management;
3)查看现在MySQL中存在的数据库。使用命令:show databases;
4)使用新创建的student_management数据库。使用命令:use student_management;
5)查看student_management数据库中的表。使用命令:show tables;
6)新建一个记录学生信息的表(student_info)。包含的字段有:学号(stu_id)、姓名
(name)、性别(sex)、班级(class)。使用的命令:create table student_info(stu_id int,name varchar(8),sex varchar(4),class varchar(16));
7)查看student_info这个表的结构。使用命令:desc student_info;
步骤二:设置表的主键、默认值及约束。
我们之前创建的student_info表中,字段的属性并不完整。我们只是设定了字段的数据类型,字段还可以有更多的属性。比如:字段是否可以为空,是否唯一,是否为主键,默认值。
1)在student_management数据库中新建教师信息表(teacher_info)。包含的字段有:教
师号(tea_id)、姓名(name)、性别(sex)、入职时间(join_time)、民族(nationality)。
教师号为主键,具有非空和唯一的属性。性别只有男或女两种选择,所以使用check 约束。民族默认为汉族。使用命令:create table teacher_info(tea_id int primary key,name varchar(8),sex varchar(4) check(sex=’男’or sex=’女’),join_time date,nationality varchar(8) default ’汉族’)
2)查看教师信息表的结构。使用命令:desc tea_info;
扩展练习:
1)在数据库student_management中新建课程信息表(course_info)
要求包含以下字段:
课程编号(course_id)、课程名称(course_name)
其中课程编号为主键。
参考语句:
create table course_info(course_id int,course_name varchar(20),primary key course_id); 2)在数据库student_management中新建学生成绩表(student_score)
要求包含以下字段:
学号(stu_id)、课程编号(course_id)、成绩(score)
其中主键为学号和课程编号两个字段。
参考语句:
create table student_score(stu_id int,course_id int,score float,primary key(stu_id,couse_id)); 实验二:对数据库的数据操作
实验背景:
在MySQL中创建好了数据库及表。软件学院的辅导员就可以往学生信息表中插入本班学生的信息。辅导员在需要的时候也可以修改或删除学生信息表中的数据。
实验目的:
掌握向数据库中插入记录、更新记录、删除记录的方法。
实验步骤:
步骤一:向学生信息表(student_info)中插入学生的信息。
1)打开终端,使用assistant用户连接上数据库,并使用student_management数据库。
注:assistant用户为《MySQL学习手册之linux下安装配置篇》中创建的用户,是辅导员使用的用户。
2)向学生信息表中插入数据。使用命令:insert into student_info values(20080201,’
张帅’,’男’,’计算机软件’);
3)重复上一步操作,插入一部分学生信息的数据。
步骤二:修改学生信息表(student_info)中某学生的信息。
因为王青同学中途更换了专业,由计算机网络改为了计算机软件。在我们的数据库中也需要更改王青同学的信息。
使用命令:update student_info set class=’计算机软件’ where name=’王青’;
步骤三:删除某学生的信息。
张玲同学因为种种原因退学了,在我们的数据库中需要删除张玲同学的信息。
使用命令:delete from student_info where name=’张玲’;
扩展练习:
向实验一的扩展练习中所创建的两个表course_info和student_score内插入数据。
注意:插入数据的格式可参考如下。数据可以自己定,但是student_score表中的stu_id 和course_id两个字段中的数据必须要和student_info表和course_info表中的数据对应。