MySQL数据库实验:任务一 创建数据库和表
目录
任务一 创建数据库和表
@
班级 | 姓名 |
---|---|
软件工程16-9班 | 洪燕妮 |
【实训目的与要求】
1、安装mysql系统,了解mysql环境;
2、利用mysql命令行窗口创建数据库及表;
3、利用界面工具创建数据库及表;
4、完整性约束设计。
【实训原理】
dbms环境的使用
【实训步骤】
一、熟悉mysql环境
1.检查软硬件配置是否达到mysql的安装要求。
(1)硬件
(2)软件
2.安装数据库管理系统mysql服务器。
3.练习用不同的方法启动mysql服务。
(1).通过windows服务管理器启动mysql服务
(2).通过dos命令启动mysql服务
4.登录mysql服务器。
5.认识mysql界面工具:navicat for mysql客户端工具
6.利用mysql客户端访问数据库
(1)使用show语句查看系统中已有的数据库:
命令:show databases;
(2)使用use语句选择mysql数据库为当前数据库:
命令:use mysql;
(3)使用show tables语句查看当前数据库中的表:
命令:show databases;
二、利用mysql命令行窗口创建数据库及表
1.使用命令行方式创建数据库sm
以管理身份登录mysql客户端,使用create语句创建sm数据库。
命令:
2.建表结构并设计完整性
sm数据库中包含3个数据表:学生表(student)、课程表(course)、学生选课表(sc)。 各表的结构分别如下:
- student表结构:
字段名称 | 数据类型 | 是否允许空值 | 约束 | 说明 |
---|---|---|---|---|
sno | char(8) | × | 主键 | 学号 |
sname | varchar(8) | × | 唯一值 | 姓名 |
ssex | char(2) | × | 检查约束 | 性别(男或女) |
sbir | datetime | √ | 出生日期 | |
scredits | int | √ | 总学分 |
- course表结构:
字段名称 | 数据类型 | 是否允许空值 | 约束 | 说明 |
---|---|---|---|---|
cno | char(5) | × | 主键 | 课程编号 |
cname | varchar(30) | × | 唯一值 | 课程名称 |
cpno | char(5) | √ | 外码 | 先修课程 |
ctime | decimal(3,0) | √ | 总学时 | |
ccredits | int | √ | 默认值4 | 学分 |
cterm | char(1) | × | 学期 |
- sc表结构:
字段名称 | 数据类型 | 是否允许空值 | 约束 | 说明 |
---|---|---|---|---|
sno | char(8) | × | 外码 | 学号 |
cno | char(5) | × | 外码 | 课程编号 |
score | decimal(3,1) | √ | 0~100 | 成绩 |
(1)创建student表
利用navicat for mysql客户端工具创建数据库sm1,并根据上面给出的表结构在sm1中创建各表。
2.建表
(2)创建course表
命令:
mysql> create table student
-> (
-> sno char(8) not null primary key,
-> sname varchar(8) not null unique,
-> ssex char(2) not null check(ssex in('男','女')),
-> sbir datetime,
-> scredits int
-> );
截图:
(2)创建course表
命令:
mysql> create table course
-> (
-> cno char(5) not null primary key,
-> cname varchar(30) not null unique,
-> cpno char(5),
-> ctime decimal(3,0),
-> ccredits int default 4,
-> cterm char(1),
-> foreign key (cpno) references course(cno)
-> );
截图:
(3)创建sc表
命令:
mysql> create table sc
-> (
-> sno char(8) not null,
-> cno char(5) not null,
-> score decimal(3,1) check(score>=0 and score<=100),
-> primary key(sno,cno),
-> foreign key(sno) references student(sno),
-> foreign key(cno) references course(cno)
-> );
截图:
三、利用界面工具创建数据库及表
1.建库sm1
截图:
(1)创建student表
截图:
截图:
(3)创建sc表
截图:
【实训总结】
1.初期时在安装老师给的mysql5.5时出现问题,安装成功但不能通过dos命令行启动,然后通过同学的帮忙,安装了mysql5.0并成功启动。
2.在创建表时,对表的完整性约束条件表达不够清楚,通过查阅书籍逐渐尝试而建表成功。
主码primary key
唯一值unique
不为空not null
外码foreign key
默认值default
取值范围check(score>=0 and score<=100)
3.使用navicat时不够熟练,要多加练习,遇到问题要及时解决,并从中吸取经验。