《数据库应用实践》实验一:数据库管理系统及其应用开发环境的创建使用
- 格式:doc
- 大小:388.50 KB
- 文档页数:10
学号:姓名:学院:专业:
《数据库应用实践》实验一:数据库管理系统及其应用开发环境的创建使用
实验目的:了解数据库应用开发环境的建立与使用;掌握 SQL 语言的使用;通过实践理解关系数据模型的相关概念;掌握数据库应用开发环境的使
用;掌握创建、删除数据库的方法;掌握创建基本表、查看表属性、
修改属性的方法;掌握向表中添加、删除以及修改数据的方法;掌握
查询分析器的使用方法;掌握 SELECT 语句在单表查询中的应用;掌
握复杂查询、多表查询的方法;掌握视图的使用方法;巩固数据库的
基础知识。
实验环境:
操作系统: Windows7旗舰版
数据库管理系统: Microsoft SQL Server 2005
实验内容:
1. 应用背景:组织管理学生选课系统,一门课程可以由多个老师教授,但一个老师只能教一门课程。
2.设计的数据库名:ST
3. 所设计的各张表结构说明,各表之间关系图说明
创建5张表,student表存储学生信息,teacher表存储教师及教师授课信息,course表存储课程信息,score表存储学生选课信息及选课成绩。具体结构与表直接关系见下面SQL语句及关系图。
4.依据前面实验一实验内容(2),(3)的要求,写出实现相应操作的 SQL 语句并给出运行结果的截图。
(2)数据库建库、建表及其修改更新
以下内容使用 SQL 语句完成:
1、设计一个应用场景,创建符合该应用需求的应用数据库。
语句:create database ST
截图:
2、在该数据库中创建若干有关联关系的表,至少 4 个,并创建主键外键约束,创建自定义完整性约束(非空、唯一、默认值、check)。
1)student表
create table student
(sno char(9)primary key,
sname char(20)unique,
ssex char(2),
sdept char(20),
);
2)course表
create table course
(cno char(4)primary key,
cname char(40),
ccredit smallint,
);
3)teacher表
create table teacher
(tno char(9)primary key,
tname char(20)unique,
tsex char(2),
tdept char(20),
cno char(4),
foreign key(cno)references course(cno)
);
4)score表
create table score
(sno char(9),
tno char(9),
cno char(4),
score smallint,
primary key(sno,tno,cno),
foreign key(sno)references student(sno), foreign key(tno)references teacher(tno), foreign key(cno)references course(cno), );
结果显示:
该数据库的数据表关系如下:
3、在某属性上创建索引。
create unique index stusna on student(sname);
4、修改表的结构。
1)在student表中增加年龄列.
alter table student add sage smallint;
修改前为:
修改后为:
2)把表中的年龄的数据类型由字符型改为整数: alter table student alter column sage int;修改前:
修改后:
5、向表中录入若干数据,修改表中某些数据项。
录入数据:
1)student表:
insert
into student(sno,sname,ssex,sdept,sage) values('200215121','李勇','男','CS','20'); insert
into student(sno,sname,ssex,sdept,sage)
values('200215122','刘晨','女','CS','19'); insert
into student(sno,sname,ssex,sdept,sage) values('200215123','王敏','女','MA','18'); insert
into student(sno,sname,ssex,sdept,sage) values('200215125','张立','男','IS','19');
2) course表
insert
into course(cno,cname,ccredit)
values('1','数据库','4');
insert
into course(cno,cname,ccredit)
values('2','数学','2');
insert
into course(cno,cname,ccredit)
values('3','信息系统','4');
insert
into course(cno,cname,ccredit)
values('4','操作系统','3');
3) teacher表
insert
into teacher(tno,tname,tsex,tdept,cno) values('031102201','伍绍','男','IS','2'); insert
into teacher(tno,tname,tsex,tdept,cno) values('031102202','林凤','女','CS','1');