当前位置:文档之家› 数据库实验报告1 (3500字)

数据库实验报告1 (3500字)

河北科技大学实验报告级专业班学号年月日姓名同组人指导教师实验名称数据定义/数据操纵语言成绩实验类型批阅教师一、实验目的熟悉sql server 上机环境以及sql server 客户端的配置;熟练掌握和使用ddl 语言,建立、修改和删除数据库表、主键、外键约束关系和索引;熟练掌握和使用dml 语言,对数据进行增加、修改和删除操作。

二、实验内容sql 数据定义语句,sql 数据操纵语句。

三、实验要求1.熟悉sql server 上机环境;2.建立数据库表,修改数据库表结构,建立、删除索引。

教学管理数据库各表的数据结构和数据如下:cs:计算机系ma:数学系is:信息系学生情况表student主关键字:sno 非空字段:sname,sdept,sclass课程名称表course主关键字:cno(1)sql 数据定义语句:1-1:(建立数据库表) 建立教学数据库的四个数据库表,其中student 表中不包含ssex(c,2) 字段,sname字段为sname(c,8)且可为空。

--创建表create table student (sno char(5) not null, sname varchar(8) not null, sdept char(2) not null, sclass char(2) not null, sage numeric(2,0), primary key (sno) )create table course (cno char(3) not null, cname varchar(16), ctime numeric(3,0), primary key (cno) )create table teach (tname varchar(8) not null, tsex char(2),cno char(3) not null,tdate datetime default(getdate()), tdept char(2) not null, primary key (tname, cno, tdept),foreign key (cno) references course(cno) )create table score (sno char(5) not null, cno char(3) not null, score numeric(5,2), primary key (sno, cno),foreign key (sno) references student(sno), foreign key (cno) references course(cno), );创建表之后的结果,如图一:(图一)1-2:(修改数据库表) 在student 表中增加ssex(c,2) 字段。

alter table studentadd ssex char(2);结果如图二:(图二)1-3:(建立索引) 为score 表按学号升序和课程号降序分别建立索引,索引名分别为sc_ndxsno 和sc_ndxcno。

为score 表按分数降序建立索引,索引名为grade_ndx。

create index sc_ndx_snoon score (sno);create index sc_ndx_cnoon score (cno desc);create index grade_ndxon score (score desc);结果如图三:(图三)1-4:(删除索引) 删除索引sc_ndx_sno。

drop index score.sc_ndx_sno;结果如图四:(图四)(2)sql 数据操纵语句:2-1:(插入数据) 按前面各表中的数据分别插入到教学数据库的四个数据库表中。

--插入studentinsert into student (sno, sname, sdept, sclass, ssex, sage) values (96001, 马小燕, cs, 01, 女,21);insert into student (sno, sname, sdept, sclass, ssex, sage) values (96002, 黎明, cs, 01, 男,18);insert into student (sno, sname, sdept, sclass, ssex, sage) values (96003, 刘东明, ma, 01, 男,18);insert into student (sno, sname, sdept, sclass, ssex, sage) values (96004, 赵志勇, is, 02, 男,20);insert into student (sno, sname, sdept, sclass, ssex, sage) values (97001, 马蓉, ma, 02, 女,19);insert into student (sno, sname, sdept, sclass, ssex, sage) values (97002, 李成功, cs, 01, 男,20);insert into student (sno, sname, sdept, sclass, ssex, sage) values (97003, 黎明, is, 03, 女,19);insert into student (sno, sname, sdept, sclass, ssex, sage) values (97004, 李丽, cs, 02, 女,19);insert into student (sno, sname, sdept, sclass, ssex, sage) values (97005, 司马志明, cs, 02, 男,18);--插入courseinsert into course values (001, 数学分析, 144); insert into course values (002, 普通物理, 144); insert into course values (003, 微机原理, 80); insert into course values (004, 数据结构, 72); insert into course values (005, 操作系统, 80); insert into course values (006, 数据库原理, 80); insert into course values (007, 编译原理, 60); insert into course values (008, 程序设计, 40);--插入teachinsert into teach values (王成刚, 男, 004, 1999.9.5, cs); insert into teach values (李正科, 男, 003, 1999.9.5, cs); insert into teach values (严敏, 女, 001, 1999.9.5, ma); insert into teach values (赵高, 男, 004, 1999.9.5, is); insert into teach values (李正科, 男, 003, 2000.2.23, ma); insert into teach values (刘玉兰, 女, 006, 2000.2.23, cs); insert into teach values (王成刚, 男, 004, 2000.2.23, is); insert into teach values (马悦, 女, 008, 2000.9.6, cs);--插入scoreinsert into score (sno, cno, score) values (96001, 001, 77.5); insert into score (sno, cno, score) values (96001, 003, 89); insert into score (sno, cno, score) values (96001, 004, 86); insert into score (sno, cno, score) values (96001, 005, 82); insert into score (sno, cno, score) values (96002, 001, 88); insert into score (sno, cno, score) values (96002, 003, 92.5); insert into score (sno, cno, score) values (96002, 006, 90); insert into score (sno, cno, score) values (96005, 004, 92); insert into score (sno, cno, score) values (96005, 005, 90); insert into score (sno, cno, score) values (96005, 006, 89); insert into score (sno, cno, score) values (96005, 007, 76); insert into score (sno, cno, score) values (96003, 001, 69);insert into score (sno, cno, score) values (97001, 001, 96);insert into score (sno, cno, score) values (97001, 008, 95);insert into score (sno, cno, score) values (96004, 001, 87);insert into score (sno, cno, score) values (96003, 003, 91);insert into score (sno, cno, score) values (97002, 003, 91);insert into score (sno, cno) values (97002, 004);insert into score (sno, cno, score) values (97002, 006, 92);insert into score (sno, cno, score) values (97004, 005, 90);insert into score (sno, cno, score) values (97004, 006, 85);2-2:(多行插入) 将表student 中在计算机系(‘cs’)的学生数据插入到表s1 中。

相关主题