数据库实验一 数据表的创建与修改管理

数据库实验一、数据表的创建与修改管理实验

    • 一、实验目的
    • 二、设计性实验
    • 三、观察与思考

一、实验目的

(1) 掌握表的基础知识。
(2) 掌握使用SQL语句创建表的方法。
(3) 掌握表的修改、查看、删除等基本操作方法。
(4) 掌握表中完整性约束的定义。
(5) 掌握完整性约束的作用

二、设计性实验

(一)在StudentInfo数据库中创建student表和grade表,表结构要求如下:
Student表的内容
字段名 字段描述 数据类型 主键 外键 非空 唯一 自增
num 学号 INT(10) 是 否 是 是 否
name 姓名 VARCHAR(20) 否 否 是 否 否
sex 性别 VARCHAR(4) 否 否 是 否 否
birthday 出生日期 DATE 否 否 否 否 否
address 家庭住址 VARCHAR(50) 否 否 否 否 否
Grade表的内容
字段名 字段描述 数据类型 主键 外键 非空 唯一 自增
id 编号 INT(10) 是 否 是 是 否
Course 课程名 VARCHAR(10) 否 否 是 否 否
S_num 学号 INT(10) 否 是 是 否 否
grade 成绩 VARCHAR(4) 否 否 否 否 否
表创建成功后,查看两个表的结构。然后按照下列要求进行表操作,写成相关的命令行:

1.将grade表的course字段的数据类型改为VARCHAR(20)
ALTER TABLE grade MODIFY course VARCHAR(20) NOT NULL;
数据库实验一 数据表的创建与修改管理_第1张图片

2.将grade字段改名为score。
ALTER TABLE grade CHANGE grade score varchar(4) NOT NULL;
数据库实验一 数据表的创建与修改管理_第2张图片

3.删除grade表的外键约束。
ALTER TABLE grade DROP FOREIGN KEY grade_fk;
数据库实验一 数据表的创建与修改管理_第3张图片

4.将student表的address字段删除。
ALTER TABLE student DROP address;
数据库实验一 数据表的创建与修改管理_第4张图片

5.在student表中增加名为phone的字段。
ALTER TABLE student ADD phone FLOAT;
数据库实验一 数据表的创建与修改管理_第5张图片

6.删除student表。
Drop table student;
数据库实验一 数据表的创建与修改管理_第6张图片

三、观察与思考

1、关于NOT NULL
(1) 在定义基本表语句时,NOT NULL参数的作用是什么?
not null 为数据库约束中的非空约束。其作用为限制表中该列数据不可为空。
(2) 主码列修改成允许NULL能否操作?为什么?
不能,主键是唯一标识且不能重复,如果为空,就无法识别
2、关于外码
(1) 根据下面设计的表结构,Employee表的外键能否设置成功?思考外码设 置需要注意哪些问题?
数据库实验一 数据表的创建与修改管理_第7张图片

(2) 如果主表无数据,从表的数据能输入吗?
不可以
(3) 先创建从表,再创建主表是否可以
MySQL能先创从表后创主表
3、关于主码和唯一约束
(1) 唯一约束列是否允许NULL值?
可以
(2) 一张表可以设置几个主码,可以设置几个唯一约束?
主键只有一个,但是可以设置为多个字段为主键,也即联合主键。外键就是自己设置了也即可以有多个,可以设置除主键以外的其他字段全部是外键的。

你可能感兴趣的:(数据库,数据库,oracle)