文档库 最新最全的文档下载
当前位置:文档库 › 数据库实验报告 (2)

数据库实验报告 (2)

数据库实验报告 (2)
数据库实验报告 (2)

一实验题目

1.数据的更新操作。

2.数据的查询操作。

二实验目的

1.掌握修改表结构的基本操作。

2.掌握数据插入、更新和删除的基本操作。

3.熟练使用SQL查询语句。

三实验内容

1.修改表结构

(1)在S中增加新的字段,专业名称(Smajor),可为空

(2)在S中增加新的字段,班级名称(Sclass),可为空

(3)在S中删除班级字段

(4)修改S中Sname字段长度为25

(5)修改S中Sbirthday数据类型为smalldatetime

(6)给S中Sname 增加唯一性约束

(7)删除S中Sname 增加唯一性约束

(8)给SC表中的grade增加约束范围为0~100

(9)修改SC表中的grade字段名称为Sgrade

(10)修改C表中的Ccredit字段的约束条件,不允许为空

2.数据的更新操作

(1)使用insert命令向以上3个表中插入数据。(注意日期型数据的插入)

(2)使用“导入”的方式向数据表中导入Excel格式的数据

(3)修改“计算机学院”的“李咏”同学的名字为“李勇”

(4)修改“数据结构”课程的学分为5分

(5)将选修了10001课程的学生的分数设置为60分

(6)将选修了“大学英语”课程的学生的分数增加5分

(7)将“计算机学院”的学生的“高等数学”课程的成绩设置为NULL

(8)删除系别为空的学生信息

(9)删除计算机学院年龄大于25岁的男生

(10)删除选修了“音乐鉴赏”课程的所有选课信息

3.数据的查询操作

(1)查询所有学生信息,要求按学院升序,按出生日期降序

(2)查询选修了课程的学生人数

(3)统计各学院男生和女生的人数

(4)查询选修了3门课以上的学生学号

(5)显示各课程及格的人数

(6)显示两门课(包括)以上不及格的学生学号

(7)查询每个学生的选课信息(分别用自然连接和内连接)

(8)查询每一门的间接先修课的信息(自身连接)

(9)查询所有学生的选课情况(左外连接)

(10)查询所有课程的被选情况(右外连接)

(11)查询所有学生的选课情况和所有课程的被选情况(全连接)

(12)查询与“王丹”同岁的“计算机学院”的学生信息

(13)找出每个学生超过他的选修课程平均成绩的课程号

(14)查询至少选修了“王丹”选修的课程的学生信息

(15)查询所有选修了“10001”课程的学生信息

(16)查询选修了两门及两门以上的课程的学生信息

(17)查询只被一个学生选修了的课程信息

(18)查询没有选课的学生信息

四实验要求

1.掌握表结构的修改、数据更新的基本操作。

2.灵活掌握各种查询语句。

3.报告中由同学写明具体的操作意图(文字描述)、操作命令(SQL语句)、和执行结果(文字描述+适当截图)。

4.对于重要的运行界面和结果窗口,可以用Alt+PrintScreen来截取当前窗口,并粘贴到实验报告中。

五实验步骤

1.修改表结构

已建好的基本表,用ALTER TABLE语句修改基本表,其一般格式如下:

ALTER TABLE <表名>

{ [ADD<新列名><数据类型>[完整性约束] ]

[DROP] [完整性约束]

[ALTER COLUMN <列名><数据类型>];}

(1)在S中增加新的字段,专业名称(Smajor),可为空

运行前:

运行代码:

alter table S add Smajor char;

运行结果:Array

运行后,企业管理器查看,增加Smajor属性,如图蓝色区域

(2)在S 中增加新的字段,班级名称(Sclass ),可为空 执行前,如上图; 代码如下:

alter table S add Sclass char(10); 运行结果:

运行后,企业管理器查看,增加Sclass 属性,如图蓝色区域

(3)在S 中删除班级字段

执行前,表格状态如上图所示: 代码如下;

alter table S drop Sclass char(10); 结果如下:

语句语法错误! 正确代码如下;

alter table S drop column Sclass ; 运行结果:

表格中Sclass 行删除

(4)修改S 中Sname 字段长度为25 如上图所示S 表中字段长度为20 代码如下;

alter table S alter column Sname char(25); 运行结果如下:

修改后的结果。由企业管理器查看,如红色标记所示:

(5)修改S 中Sbirthday 数据类型为smalldatetime 运行前Sbirthday 属性如上图为datetime 代码如下:

alter table S alter column Sbirthday smalldatetime(8); 运行结果如下:

Smalldatetime 不能指定宽度 修改后代码如下:

alter table S alter column Sbirthday smalldatetime; 运行结果:

修改属性后,由企业管理器查看,修改后结果如红色标记所示:

(6)给S 中Sname 增加唯一性约束 代码如下:

alter table S ADD CONSTRAINT Un_SName UNIQUE(SName);

运行结果:

(7)删除S中Sname 增加唯一性约束

代码如下:

alter table S drop constraint Un_SName;

运行结果:

(8)给SC表中的grade增加约束范围为0~100

代码:

alter table S constraint GRADE check(grade between 1 and 100);

运行结果:

语法格式错误,少ADD。修改后代码如下:

alter table SC add constraint C_grade check(grade between 0 and 100); 运行结果如下:

(9)修改SC 表中的Grade 字段名称为Sgrade 运行代码前,SC 基本属性如图

代码:exec sp_rename 'SC.Grade','Sgrade','column' 运行结果:

因有约束条件,必须先删除约束条件,在修改名称 代码:

alter table SC drop constraint C_grade ; sp_rename 'SC.Grade ','Sgrade','column' 运行结果:

显示如图:

(11) 修改C 表中的Ccredit 字段的约束条件,不允许为空 运行代码前,C 表属性如图:

代码:

alter table C column Ccredit not null; 运行结果:

格式错误,少添加int 。修改后代码如下:

alter table C alter column Ccredit int not null;

结果如图,红色标记为已设置不为空:

2. 数据的更新操作 插入数据格式:

Insert

Into <表名>[(<属性列>[属性列]….)] Value(<常量1>[<常量2>]…);

修改数据格式:

Update<表名> Set<列名>=<表达式>…[where<条件>]

删除数据 格式:

Delete from <表名>[where<条件>]

(12) 使用insert 命令向以上3个表中插入数据。(注意日期型数据的插入) 【1】向C 表插入数据 代码:

insert into C(Cno,Cname,Cpno,Ccredit) value('0005','数据库','1005','3'); 运行结果:

Value 拼写错误,正确代码:

insert into C(Cno,Cname,Cpno,Ccredit)

values('0005','数据库','1005','3'); 运行结果;

如图红色标记所示为C 表所添加数据

【2】向S 添加数据 代码如下:

insert into S(Sno,SID,Sname,Ssex,Sbirthday,Sdept,Saddress,Smajor) values('0004','66446654','孙膑','男','1992-6-7','历史系','湖南长沙','') 运行结果如下:

如图红色标记所示为S

表所添加数据

【3】向SC 添加数据 代码如下:

insert into SC(Sno,Cno,Grade) values('0003','0001','65'); 运行结果如下:

如图红色标记所示为SC 表所添加数据

(13) 使用“导入”的方式向数据表中导入Excel 格式的数据 步骤:

(14)修改“计算机系”的“赵六”同学的名字为“赵勇”运行前S表属性如上图:

代码如下:

update S set Sname=赵勇where Sname=赵六;

运行结果:

格式错误,名字应用‘’。正确代码如下:

update S set Sname='赵勇' where Sname='赵六';

由企业管理器,如图红色标记所示为S表所修改的名字

(15)修改“数据库”课程的学分为5分

C表原数据库课程的学分为3分

代码如下:

update C set Ccredit='5' where Cname='数据库'; 运行结果如下:

由企业管理器,如图红色标记所示为

C 表所修改的学分

(16) 将选修了0001课程的学生的分数设置为60分 SC 表中原数据

代码如下:

update SC set Grade='60' where Cno='0001'; 运行结果:

由企业管理器,如图红色标记所示为SC 表所修改的分数

(17) 将选修了“大学英语”课程的学生的分数增加5分 SC 分数增加前,成绩如上图所示 代码如下:

update SC set Grade=Grade+5 where Cno='0001'; 运行结果:

由企业管理器,如图红色标记所示为SC 表所修改的分数

(18) 将“计算机系”的学生的“高等数学”课程的成绩设置为NULL 运行前SC 表如下:红色标记为计算机系学生的学号,课程号

代码如下:

update SC set Grade=null where Cno='0006' 运行结果:

结果显示如下:红色标记为修改为空的课程成绩

(19) 删除系别为空的学生信息 运行前S 表如下图:

代码:delete from S where Sdept is null; 注意is 不能为= 运行结果:

(20) 删除计算机系年龄大于24岁的男生 运行前S 表如图所示:

代码:delete from S where Sdept ='计算机系'and ((year(getdate())-year(Sbirthday))>24); 运行结果:

由企业管理器,如图红色标记所示为S 表所删除后的结果

(21) 删除选修了“音乐鉴赏”课程的所有选课信息 修改前表信息;

代码:

delete from SC where Cno='0007' ; 结果:

3. 数据的查询操作

(19) 查询所有学生信息,要求按学院升序,按出生日期降序 执行代码前,S 表基本信息如下:

代码:select * from S order by Sdept asc,Sbirthday desc;

由企业管理器,如图红色标记所示为S 表所删除后的结果

(20) 查询选修了课程的学生人数 选课信息sc 基本信息如下表:

代码:select count(*) from SC;

(21) 统计各学院男生和女生的人数

代码:select count(*),Sdept,Ssex from S group by Sdept,Ssex 运行结果:

显示结果:

(22) 查询选修了3门课以上的学生学号 选课信息如(20)题图

代码:select Sno from SC group by Sno having count(*)>=3; 结果:

显示:

(23) 显示各课程及格的人数

代码:select Cno,count(Cno) from SC where Grade>= 60 group by Cno 结果:

显示:

(24) 显示两门课(包括)以上不及格的学生学号

代码:SELECT Sno FROM SC WHERE Grade < 60 GROUP BY Sno HA VING COUNT(Cno)>= 2

在SC 表中没有满足两门课以上不及格的学生 显示:

(25) 查询每个学生的选课信息(分别用自然连接和内连接) 内连接:Select * from SC inner join S on S.Sno=SC.Sno 运行结果:

(26) 查询每一门的间接先修课的信息(自身连接) C 表基本情况如图所示;

代码:

select https://www.wendangku.net/doc/731618516.html,o,SECOND.Cpno from C FIRST,C SECOND

WHERE FIRST.Cpno=https://www.wendangku.net/doc/731618516.html,o 结果:

(27) 查询所有学生的选课情况(左外连接)| SC 表基本情况如下:

代码:

SELECT S.Sno AS 学号,S.Sname AS 姓名,https://www.wendangku.net/doc/731618516.html,o AS 所选的课程 FROM S LEFT OUTER JOIN SC ON S.Sno = SC.Sno

显示

(28) 查询所有课程的被选情况(右外连接)

代码:select Sno,Cno from SC right out join C on (https://www.wendangku.net/doc/731618516.html,o=https://www.wendangku.net/doc/731618516.html,o) 运行结果:

拼写错误。Out 改成outer,SnoCno 指点表 修改后代码如下:

select https://www.wendangku.net/doc/731618516.html,o,SC.Sno from SC right outer join C on (https://www.wendangku.net/doc/731618516.html,o=https://www.wendangku.net/doc/731618516.html,o) 结果显示如下图“

(29) 查询所有学生的选课情况和所有课程的被选情况(全连接) 代码:select * from SC full outer join C on (https://www.wendangku.net/doc/731618516.html,o=https://www.wendangku.net/doc/731618516.html,o) 显示结果如下:

(30)查询与“王丹”同岁的“计算机学院”的学生信息

代码:select * from S where Sdept='计算机系'and

Sage=any(select Sage from S where Sname='王丹')

显示结果:

(31) 找出每个学生超过他的选修课程平均成绩的课程号

SC表基本情况如图所示

代码:

SELECT Cno, Sno FROM SC

WHERE Grade > (SELECT AVG(Grade) FROM SC ) 运行结果

(32)查询至少选修了“孙膑”选修的课程的学生信息

孙膑学号为0004

代码:

select * from SC SCX where

not exists (select * from SC SCY where SCY .Sno='0004' AND

not exists(select * from SC SCZ where SCZ.Sno=SCX.Sno and https://www.wendangku.net/doc/731618516.html,o=https://www.wendangku.net/doc/731618516.html,o ) ) 结果:

(33) 查询所有选修了“0001”课程的学生信息 代码:SELECT S.SNO,Sname,Sdept,https://www.wendangku.net/doc/731618516.html,o,Grade

FROM S FULL OUTER JOIN SC ON S.Sno=SC.Sno where Cno='0001';

(34) 查询选修了两门及两门以上的课程的学生信息 select S.Sno,S.Sname from S,SC where S.Sno in(select Sno from SC

group by https://www.wendangku.net/doc/731618516.html,o having sum(SC.Sno)>=2 )

代码:select Sno from SC group by Sno having count(*)>=2

(35) 查询只被一个学生选修了的课程信息

代码:select Cno from SC group by Cno having count(*)=1 显示结果:

(36) 查询没有选课的学生信息

select S.Sno, https://www.wendangku.net/doc/731618516.html,O

from S left join SC on S.Sno = SC.Sno

数据库实验2实验报告 2

数据库第二次试验报告 PB10011020 刘思轶实验内容 本实验有两个可选题目,旅游出行和药品免疫库。本程序即为旅游出行的一个实现。 实验原题摘要如下 数据关系模式: 航班FLIGHTS( String flightNum, int price, int numSeats, int numAvail, String FromCity, StringArivCity); 宾馆房间HOTELS( String location, int price, int numRooms, int numAvail);出租车CARS( String location, int price, int numCars, int numAvail);客户CUSTOMERS( String custName); 预订情况RESERVATIONS( String resvKey, String custName, int resvType) 系统基本功能: 1.航班,出租车,宾馆房间和客户基础数据的入库,更新(表中的属性也可以根据你的需要添加)。 2.预定航班,出租车,宾馆房间。 3.查询航班,出租车,宾馆房间,客户和预订信息。 4.查询某个客户的旅行线路。 5.检查预定线路的完整性。 6.其他任意你愿意加上的功能。 程序功能 本系统由旅行服务提供商运营,发布在支持PHP + MySQL 的服务器上。 系统默认有三个角色,游客、用户和管理员。它们的权限如下 1、游客 查询当前航班、旅馆和出租车的预订情况; 2、注册用户 游客的所用权限; 查询当前预订; 预订航班、旅馆和出租车; 退订航班、旅馆和出租车。 打印旅行路线 检查预定路线的完整性。 检查航班的完备性 3、管理员 注册用户的所用权限

西北工业大学数据库实验报告

1.利用图形用户界面创建,备份,删除和还原数据库和数据表(50分,每小题5分) ●数据库和表的要求(第五版教材第二章习题 6 要求的数据库) 数据库名:SPJ,其中包含四张表:S表, P表, J表, SPJ表 ●完成以下具体操作: (1)创建SPJ数据库,初始大小为 10MB,最大为50MB,数据库自动增长,增长方 式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名和物理文件名均采用默认值。 (2)在SPJ数据库中创建如图2.1-图2.4的四张表(只输入一部分数据示意即可)。 S表: P表: J表: SPJ表:

(3)备份数据库SPJ(第一种方法):备份成一个扩展名为bak的文件。(提示: 最好先删除系统默认的备份文件名,然后添加自己指定的备份文件名) (4)备份数据库SPJ(第二种方法):将SPJ数据库定义时使用的文件(扩展名为 mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份。 原位置: 新的位置: (5)删除已经创建的工程项目表(J表)。 (6)删除SPJ数据库。(可以在系统默认的数据存储文件夹下查看此时SPJ数据 库对应的mdf,ldf文件是否存在) 删除过后文件不存在 (7)利用备份过的bak备份文件还原刚才删除的SPJ数据库。(还原数据库)

(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库。(附加) (9)将SPJ数据库的文件大小修改为100MB。 (10)修改S表,增加一个联系电话的字段sPhoneNo,数据类型为字符串类 型。 2.利用SQL语言创建和删除数据库和数据表(50分,每小题5分) ●数据库和表的要求 数据库名:Student,其中包含三个表:S:学生基本信息表;C:课程基本信息表;SC:学生选课信息表。 ●完成以下具体操作: (1)用SQL语句创建如图2.5-图2.7要求的数据库Student,初始大小为20MB, 最大为100MB,数据库自动增长,增长方式是按10M兆字节增长;日志文件初

数据库原理实验报告-实验三-数据完整性与安全性控制

一、实验内容、步骤以及结果 1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。 (18分,每小题3分) (1)非空约束:为出生日期添加非空约束。 非空约束:取消表S中sbirth的勾。可能需要重建表。 (2)主键约束:将学号(sno)设置为主键,主键名为pk_sno。 设主键:单击数据库Student-->单击表-->单击S-->右击sno-->选择‘修改’命 令-->对话框中右击sno-->选择‘设置主键’-->修改主键名为‘pk_sno’ -->保 存 (3)唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname。 唯一约束:单击数据库Student-->单击表-->单击S-->右击sname-->选择‘修改’命令→右击sname-->选择‘索引和键’命令-->打开‘索引和键’框图-->添加--> 是否唯一改为‘是’-->名称改为‘us_sname’ -->关闭。

(4)缺省约束:为性别(ssex)添加默认值,其值为“男”。 设默认约束:单击数据库Student→单击表→单击S→右击sno→选择‘修改’命令→单击cno-->在默认值栏输入‘男’→保存

(5)CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为ck_grade,其检查 条件为:成绩应该在0-100之间。

(6)外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表 和C表,外键名称分别为fk_sno,fk_cno。 2.在图形用户界面中删除以上小题中已经创建的各种约束,用SQL语言分别重新创建第1题中的(2)-(6)小题.(15分,每小题3分,提示:alter table add constraint) 删除约束:单击数据库Student-->表-->单击S-->展开键、约束。一一删除即可。

数据库实验报告完整

华北电力大学 实验报告 | | 实验名称数据库实验 课程名称数据库 | | 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:2015/7/9

《数据库原理课程设计》课程设计 任务书 一、目的与要求 1.本实验是为计算机各专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力 而设置的实践环节。通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。 为后继课程和毕业设计打下良好基础。 2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。 3.通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界 面设计和软件调试等各方面的能力。是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、主要内容 针对一个具有实际应用场景的中小型系统(见题目附录)进行数据库设计,重点分析系统涉及的实体、实体之间的联系,实现增加、删除、更新、查询数据记录等基本操作。大致分为如下步骤: 1. 理解系统的数据库需求,分析实体及实体间联系,画出E-R图: 1)分析确定实体的属性和码,完成对该实体的实体完整性、用户自定义完整性的定义。 2)设计实体之间的联系,包括联系类型和联系的属性。最后画出完整的E-R图。 2.根据设计好的E-R图及关系数据库理论知识设计数据库模式: 1)把E-R图转换为逻辑模式; 2)规范化设计。使用关系范式理论证明所设计的关系至少属于3NF并写出证明过程;如果不属于3NF则进行模式分解,直到该关系满足3NF为止,要求写出分解过程。 3)设计关系模式间的参照完整性,要求实现级联删除和级联更新。 4)用SQL语言完成数据库内模式的设计。 3.数据库权限的设计: 1)根据系统分析,完成授权操作; 2)了解学习收回权限的操作。 4.完成用户界面的设计,对重要数据进行加密。

数据库实验报告2

理工大学信息工程与自动化学院学生实验报告 (2011 —2012 学年第 1 学期) 课程名称:数据库系统教程开课实验室:信自楼445 2011 年11月 27日 一、上机目的及容 1.上机容: SQL的数据查询,查询、插入、删除、修改 2.上机目的: 掌握数据查询语句,并能熟练应用 二、实验原理及基本技术路线图(方框原理图或程序流程图) 在SQL server 2008软件中的查询中,输入SQL代码 三、所用仪器、材料(设备名称、型号、规格等或使用软件) 1台PC及SQL server 2008软件 四、实验方法、步骤(或:程序代码或操作过程) 1)select查询 单表查询:查询全体学生的学号及: SELECT SNO,SNAME FROM S;

查询全体学生的全部信息: SELECT*FROM S; 2)查询经过计算值 (SELECT子句的<目标列表达式>为表达式,表达式可以是:算术表达式、字符串常量、函数、列别名等) 查全体学生的学号、及其出生年份: SELECT SNO,SNAME,2012-AGE FROM S;

查询全体学生的、出生年份和所属系: SELECT SNO,SNAME,2012-AGE,SDEPT FROM S; 查询选修了课程的学生学号: SELECT SNO FROM SC,C WHERE https://www.wendangku.net/doc/731618516.html,O=https://www.wendangku.net/doc/731618516.html,O; 为了避免这种不合题意的情况,我们用distinct用了去除重复的元组。所以上例中的执行语句为: SELECT DISTINCT SNO FROM SC;

SELECT DISTINCT SNO FROM SC,C WHERE https://www.wendangku.net/doc/731618516.html,O=https://www.wendangku.net/doc/731618516.html,O; 查询选修课程的各种成绩: SELECT CNO,GRADE FROM SC; SELECT DISTINCT CNO,DISTINCT GRADE FROM SC; SELECT CNO,DISTINCT GRADE FROM SC; SELECT DISTINCT CNO,GRADE FROM SC;

数据库实验报告

课程设计报告题目:数据库实验上机实验报告 专业班级:计算机科学与技术1210班 学号: U9 姓名:候宝峰 指导教师: 报告日期: 2015-06-04 计算机科学与技术学院

目录 一、基本SQL操作(部分选做)............. 错误!未定义书签。 1)数据定义........................... 错误!未定义书签。 2)数据更新........................... 错误!未定义书签。 3)用SQL语句完成下述查询需求:....... 错误!未定义书签。 二、DBMS综合运用(部分选做)............. 错误!未定义书签。 1)学习sqlserver的两种完全备份方式:数据和日志文件的脱机备份、系统的备份功能(选做)。......... 错误!未定义书签。 2)学习系统的身份、权限配置操作....... 错误!未定义书签。 3)了解SQLSERVER的存储过程、触发器、函数实现过程错误!未定义书签。 三、实验总结............................. 错误!未定义书签。 1)实验问题及解决..................... 错误!未定义书签。 2)实验心得........................... 错误!未定义书签。

一、基本SQL操作(部分选做) 1)数据定义 参照下面的内容建立自己实验所需的关系数据 创建三个关系: 商品表【商品名称、商品类型】 GOODS【GNAME char(20),GTYPE char(10)】 主关键字为(商品名称)。商品类型为(电器、文具、服装。。。) 商场【商场名称,所在地区】 PLAZA【PNAME char(20),PAREA char(20)】 主关键字为商场名称。所在地区为(洪山、汉口、汉阳、武昌。。。) 销售价格表【商品名称、商场名称、当前销售价格、目前举办活动类型】 SALE【GNAME char(20),PNAME char(20),PRICE FLOAT,ATYPE char(10)】主关键字为(商品名称、商场名称)。举办活动类型为(送券、打折),也可为空值,表示当前未举办任何活动。表中记录如(‘哈森皮靴’,‘亚贸广场’,200,‘打折’),同一商场针对不同的商品可能采取不同的促销活动。 create table goods(gname char(20) primary key,gtype char(10)); create table plaza(pname char(20) primary key,parea char(20)); create table sale (gname char(20), pname char(20), price FLOAT, atype char(10)check (atype in('送券','打折','')), primary key(gname,pname), foreign key(gname)references goods(gname), foreign key(pname)references plaza(pname)); 图1 goods表 图2 plaza表 图3 sale表 2)数据更新 (1)向上述表格中用sql语句完成增、删、个、改的操作;

数据库原理实验报告

南京晓庄学院 《数据库原理与应用》 课程实验报告 实验一SQL Server 2005常用服务与实用工具实验 所在院(系):数学与信息技术学院 班级:14软工5班 学号:14551204 14551206 姓名:花元凯罗文波 1.实验目的 (1)了解Microsoft 关系数据库管理系统SQL Server的发展历史及其特性。 (2)了解SQL Server 2005的主要组件、常用服务和系统配置。 (3)掌握Microsoft SQL Server Management Studio 图形环境的基本操作方法。了解使用“SQL Server 2005 联机从书”获取帮助信息的方法;了解“查询编辑器”的使用方法;了解模板的使用方法。 2.实验要求 (1)收集整理Microsoft关系数据库管理系统SQL Server的相关资料,总结其发展历史及SQL Server 2005主要版本类别和主要功能特性。 (2)使用SQL Server配置管理器查看和管理SQL Server 2005服务。 (3)使用Microsoft SQL Server Management Studio连接数据库;使用SQL Server帮助系统获得 所感兴趣的相关产品主题/技术文档。

(4)使用Microsoft SQL Server Management Studio“查询编辑器”编辑并执行Transact-SQL查 询语句。 (5)查看Microsoft SQL Server 2005模板,了解模板的使用方法。 (6)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 (1) 简要总结SQL Server系统发展历史及SQL Server 2005主要版本类别与主要功能特性。 SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能(BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能。SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。目前最新版本是SQL SERVER 2014。 1,SQL Server 2005学习版当保护和管理应用系统内外部的信息变得至关重要时,通过提供一套免费、易于使用和健壮的数据库,学习版帮助开发人员建立强健的和可靠的应用系统。

数据库应用及开发实验报告

课程名:数据库应用与开发时间:2014.9.11 实验一安装SQL Server 2008和Visual Studio2010 一、实验目的 学习和掌握SQL Server 2008 命名实例的安装,启动和连接服务器。 二、实验器材 486及以上微机,Windows xp/7/vista操作系统,安装了SQL SERVER。 三、实验容和步骤 1、SQL Server 2008的安装 (1)将安装盘放入光驱,光盘会自动运行。在开始界面中选择“服务器组件、工具,联机丛 书和示例命令,执行安装程序” (2)接受许可条款和条件,安装必备组件;使用Sql server 安装向导;进行“系统配置检查”; 输入相关注册信息;选择需要升级或安装的组件,如图1.1 (3)单击下一步按钮,在出现的实例的命令方式为命名示例,并输入实例名称,单击下一步 按钮继续进行安装。 (4)根据向导完成SQLServer2008 的安装。 图附1.1“安装中心”对话框

图附1.2“支持规则”对话框 图附1.3“服务器配置”对话框 (5)参考教材安装Microsoft Visual Studio 2010 2、visual studio2010的安装 步骤抄书(课本P22) 四、实验结果 能够按要求安装SQL Server 2008数据库管理系统软件和visual studio2010 软件,并认识和体验SQL Server 2008软件的功能。 五、实验心得 课程名:数据库应用与开发时间:2014.9.18 实验二创建数据库和修改数据库 一、实验目的与要求 1、熟悉数据库的创建命令的使用 2、学会查看和修改数据库 3、学会删除数据库 二、实验器材 微机+windows操作系统+SQL SERVER2008+SSMS 三、实验容 1.在D盘根目录下创建一个数据库db_temp,该数据库中有两个数据文件,其中主数据文件db_temp.mdf为10MB,最大大小为100MB,按10MB方式增长,一个数据文件db_temp1.ndf,,初始大小为10MB,最大大小为不限制,按10%增长,db_temp_log1,db_temp_log两个日志

数据库原理实验报告二.pdf

LIAOCHENG UNIVERSITY 计算机学院实验报告 【2015 ~2016 学年第 2 学期】 【一、基本信息】 【实验课程】数据库原理与应用 【设课形式】独立□非独立【课程学分】 【实验项目】实验二、SQL数据操作及查询 【项目类型】基础综合□设计□研究创新□其它[ ]【项目学时】4【学生姓名】傅雪晨【学号】59 【系别专业】电子商务 【实验班组】 【同组学生】 【实验室名】综合实验楼 【实验日期】【报告日期】 【二、实验教师对报告的最终评价及处理意见】 实验成绩:(涂改无效) 指导教师签名:年月日注:要将实验项目、实验课程的成绩评定及课程考核办法明确告知学生,并报实验管理中心备案

【三、实验预习】 实验条件(实验设备、软件、材料等): 实验2 SQL数据操作及查询 实验目的: 1. 向实验1建立的表中添加数据(元组), 掌握INSERT语句的用法; 2. 修改基本表中的数据, 掌握UPDATE语句的用法; 3. 删除基本表中的数据,掌握DELETE语句的用法; 4. 体会数据完整性约束的作用, 加深对数据完整性及其约束的理解。 5. 熟练掌握SELECT语句,能够运用该语句完成各种查询。 实验内容: 1.使用INSERT语句将教材P82表中的数据添加到数据库STUDENTDB中. 2. Insert into student59 select'1','李勇','男','20','CS','',''union select'2','刘晨','女','19','CS','',''union select'3','王敏','女','18','MA','',''union select'5','张立','男','19','IS','','' select*from student59 select*from course59 select*from sc59 alter table course59NOCHECK Constraint fk_cpno Insert into course59 select'1','数据库','5','4'union select'2','数学','','2'union select'3','信息系统','1','4'union select'4','操作系统','6','3'union select'5','数据结构','7','4'union select'6','数据处理','','2'union select'7','PASCAL语言','6','4' alter table course59CHECK Constraint FK_course59_course59 Insert into sc59 select'1','1',92 union select'1','2',85 union select'1','3',88 union select'2','2',90 union select'2','3',80 alter table sc59CHECK Constraint fk_S_c alter table sc59NOCHECKConstraint fk_S_c

数据库实验报告二

《数据库原理》实验报告 实验三: 数据库完整性与安全性控 制 实验四: 视图与索引 学号姓名 班级日期 2013302534 杨添文10011303 2015.10.1 7 实验三:数据完整性与安全性控制 一、实验内容 1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。 (18分,每小题3分) (1)非空约束:为出生日期添加非空约束。 (2)主键约束:将学号(sno)设置为主键,主键名为pk_sno。 (3)唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname。 (4)缺省约束:为性别(ssex)添加默认值,其值为“男”。 (5)CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为ck_grade,其检查 条件为:成绩应该在0-100之间。

(6)外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表为分别是S 表和C表,外键名称分别为fk_sno,fk_cno。 2.在图形用户界面中删除上小题中已经创建的各种约束,用SQL语言分别重新创建第1小题中的(2)-(6)小题。(15分,每小题3分,提示:alter table add constraint)(2)alter table s add constraint pk_sno primary key(sno) (3)alter table s add constraint uk_sname unique(sname) (4)alter table s add constraint a default('男')for ssex (5) alter table sc add constraint ck_grade check(grade between 0 and 100) (6) alter table sc add constraint fk_sno foreign key(sno)references s(sno) alter table sc add constraint fk_cno foreign key(cno)references c(cno)

数据库实验报告2

数据库原理实验报告 姓名:学号:班级: 实验日期:03/30/2017 实验名称:数据库创建与管理 实验二数据库创建与管理 一、实验目的 1.熟练掌握界面方式创建和管理数据库。 2.熟练掌握查询编辑器T-SQL语句创建和管理数据库。 3.熟练掌握备份和还原数据库。 二、实验器材 1、接入Internet的计算机主机; 三、实验内容 1、界面方式创建和管理数据库 (1)创建数据库 (2)修改数据库

(3)删除数据库(使用右键) 2、利用企业管理器备份和还原数据库(1)备份数据库 (2)还原数据库(操作->右键)

(1)创建SPJ数据库:“新建查询”,输入以下语句并运行 CREATE DATABASE SPJ ON (NAME=’SPJ_Data’,FELENAME='C:\Program Files\Microsoft SQL Server\MSSQL\data\SPJ_Data.MDF' , SIZE = 3, MAXSIZE = 10, FILEGROWTH = 10%) LOG ON (NAME = 'SPJ_Log', FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL\data\SPJ_Log.LDF' ,

SIZE = 1, FILEGROWTH = 10%) (2)修改SPJ数据库:在查询分析器中输入以下语句并运行 ALTER DATABASE SPJ MODIFY FILE (NAME='SPJ_Data', SIZE=4, MAXSIZE=UNLIMITED) ALTER DATABASE SPJ ADD FILE (NAME='SPJ_Data_2', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SPJ_Date_2.ndf',SIZE=1, MAXSIZE=10, FILEGROWTH=10%) (3)删除SPJ数据库:DROP DA TABASE SPJ

数据库原理实验报告(3)实验三数据表的创建与管理实验

数据库原理实验报告(3)实验三数据表的创建与 管理实验 南京晓庄学院 《数据库原理与应用》 课程实验报告 实验三数据表的创建与管理实验 所在院(系): 数学与信息技术学院班级: 学号: 姓名: 1.实验目的 (1) 理解SQL Server 20xx常用数据类型和表结构的设计方法。理解主键、外键含义,掌握 建立各表相关属性间参照关系的方法。 (2) 熟练掌握使用SQL Server Management Studio图形工具创建表,删除表,修改表结构,插入及更新数据的方法。 (3) 熟练掌握使用Transact-SQL语句创建表,删除表,修改表结构,插入及更新数据的方 法。 2.实验要求 基本实验:

(1) 在实验二所创建的“TM”数据库中合理设计以下各表逻辑结构: 学生信息(学号,姓名,性别,籍贯,出生日期,民族,学院/系别号,班级号) 课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时) 学习信息(学号,课程号,考试成绩,平时成绩) 院系信息(院系号,院系名称) 要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。 (2) 依据你所设计的表结构,使用SQL Server Management Studio图形工具在“TM”数据 库中创建学生信息表和课程信息表,并试验在图形界面中修改表结构,删除数据表,输入并更新数据的方法。 (3) 依据你所设计表结构,使用Transact-SQL语句创建学习信息表和院系信息表,并试验 使用T-SQL语句修改表结构,删除数据表,插入和更新数据的方法。 (4) 找出已创建各表之间相关属性的参照关系,并在相关表中增加引用完整性约束。 (5) 按要求完成实验报告。 扩展实验: (1) 在“TM”数据库中补充设计以下各表结构:

数据库原理实验报告分析

2013级数据库原理实验报告 专业:_______计算机___ 班级:________________ 学号:______________ 姓名:_______________ 2015年5月

实验一 SQL Server 2005基本操作 一、实验目的 了解SQL Server 2005组件; 了解SQL Server数据库组成; 掌握SQL Server 2005界面基本操作。 二、实验内容 (1)开始->程序->Microsoft SQL Server 2005-> SQL Server Management Studio,打开后进入到SQL Server 2005主体界面 (2)点击?数据库?前面的?+?,可以展开查看数据库,并且可以继续展开下级目录,查看数据库中的表、视图等。 (3)了解SQL Server 2005菜单栏的一些主要工具的使用。 (4)学生动手操作SQL Server 2005,打开数据库,打开表,打开查询界面;查看数据库的属性、表的属性等。 三、实验总结 进行这次实验有遇到什么问题?怎么解决的? 答:此次实验我们一步一步按照实验内容操作的,基本上没有遇到问题。

实验二数据定义 一、实验目的 掌握SQL Server 2005的数据库创建; 掌握SQL Server数据定义语言; 掌握SQL Server 2005数据定义的SQL语言定义与管理器定义两种方式。 二、实验内容 (1)创建、修改、删除数据库。 创建要求:数据库Employee中包含一个数据库文件Empdat1.mdf和一个日志文件Emplog.ldf。其中,数据文件大小为10MB,最大为50MB,以5MB速度增长;日志文件大小为5MB,最大为25MB,以5%速度增长。 修改要求:增加第二个数据库文件Empdat2.ndf,其中,数据文件大小为5MB,最 大为25MB,以2MB速度增长。 (2)利用SQL创建人员表person、月薪表salary及部门表dept。 见上页图 要求:按表2-1、表2-2及表2-3中的字段说明创建。

数据库原理实验报告(5)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验五嵌套子查询设计实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)掌握多表查询和子查询的方法。 (2)熟练使用IN、比较符、ANY或ALL和EXISTS操作符进行嵌套查询操作。 (3)理解不相关子查询和相关子查询的实现方法和过程。 2.实验要求 (1)针对“TM”数据库,在SQL Server查询分析器中,用T-SQL语句实现以下查询操作: a)查询选修了数据结构与算法的学生学号和姓名。 b)查询07294002课程的成绩低于孙云禄的学生学号和成绩。 c)查询和孙云禄同年出生的学生的姓名和出生年份。 d)查询其他系中年龄小于数学与信息技术学院年龄最大者的学生。 e)查询其他系中比数学与信息技术学院学生年龄都小的学生。 f)查询同孙云禄数据库原理与应用课程分数相同的学生的学号和姓名。 g)查询选修了07294002课程的学生姓名。 h)查询没有选07294002课程的学生姓名。 i)查询同时选修了07295006和07295007课程的学生的学号。 j)查询所有未授课的教师的工号、姓名和院系,结果按院系升序排列。 扩展实验: a)查询和10060101选修的全部课程相同的学生的学号、课程号、期末考试 成绩。 b)查询至少选了10060101选修的全部课程的学生的学号。 c)查询年龄比所在院系平均年龄小的学生的学号、姓名、年龄、院系,按 院系和年龄升序排列。 d)查询每门课都在80分以上的学生的学号和姓名。 (2)在SQL Server Management Studio中新建查询,尽可能用多种形式表示实验中的查询语 句,并进行比较。 (3)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 将调试成功的T-SQL语句写在下方(标明题号)。

数据库实验报告(实验一)

沈阳工程学院 学生实验报告 (课程名称:数据库原理及应用) 实验题目:数据库模式设计 班级软件本111学号2011417104姓名吴月芬 日期2012.10.16 地点F座606 指导教师孙宪丽祝世东

一、实验目的 熟练掌握采用SQL命令建立数据库表、索引和视图的方法。 二、实验环境 Oracle10g数据库系统。 三、实验内容与要求 (一)实验内容 1.建立学生数据库模式 学生表:student (sno学号,sname姓名,ssex性别,sage年龄,sdept所在系) 其中: sno 长度为4的字符串,为主码; sname 长度为8的字符串; ssex 长度为2的字符串,其值只取男、女; sage 短整数,其值在0-150之间; sdept 长度为10的字符串。 2.建立课程数据库模式 课程表:course ( cno课程号,cname课程名,ccredit学分) 其中: cno 长度为4的字符串,为主码 cname 长度为10的字符串,不能为空,且不能有重复课程名; ccredit 短整数。 3.建立选课数据库模式。 选课表:sc (sno学号,cno课程号,grade成绩) 其中: sno 长度为4的字符串,和student表sno外键关联,且级联删除 cno 长度为4的字符串,course表cno外键关联,

grade 短整数,值或空或为0—100之间, (sno,cno) 联合作主码。 (二)实验要求 在Oracle10g的iSQLPlus中完成下列操作: (1)创建上述三个表。 (2)向Student 表增加"入学时间"列(列名为Scome,日期型)。 (3)将年龄的数据类型改为半字长整数。 (4)为Student中sname添加列级完整性约束,不能为空。 (5)删除Student中sname列级完整性约束。 (6)为SC建立按学号升序和课程号降序建立唯一索引. (7)在表student的sname字段建立一个升序索引。 (8)删除在表student的sname字段建立的索引。 (9)给student表增加一个地址(address)属性。 (10)给student表删除地址(address)属性。 (11)建立视图view1,要求有sno,sname,cname,grade四个字段。 (12)建立视图view2,要求有sno,ssex,sage三个字段。 四、实验过程及结果分析 (1)1)创建学生数据库模式,代码如下: create table student ( sno char(11) primary key, sname char(8), ssex char(2) check ssex in (‘男’,’女’), sage number check between 0 and 150, sdept char(10) );

数据库实验报告实验二

湘潭大学 数据库实验报告 实验名称SQL操作 班级软件工程一班 指导老师郭云飞(老师)学生姓名汤能武 系(院)信息工程学院实验时间2011年12月

SQL操作 一、实验目的 1.了解和掌握MS SQL Server 工具的使用; 2.熟悉掌握SQL' 3.训练学生设计与编写过程,函数与触发器的能力; 二、实验环境 1. 硬件:数据库服务器,客户机,局域网; 2.软件:MS SQL Server 2008 ,建模软件; 三、实验内容 根据给定的问题建立数据库模型,在MS SQL Management Studio 中建立该数据库,并利用SQL语句建立表格与视图,录入数据,进行查询,插入,删除,修改等操作,编写过程,函数,触发器等; 给定问题如下: 1.一个学校有若干教学楼和若干班; 2.一个教室有若干教室和若干管理人员; 3.一间教室只有一个管理人员,但一个管理人员可以管理若干个教室; 4.每周7天,每周上午,下午,晚上都可以安排上课,每周的课表都不变; 5.一间教室或班在一段时间内只能安排一堂课,但可以是合班上课;

四、实验准备 1.理论知识预习及要求 ①使用SQL语句建立数据库; ②使用SQL语句进行查询,修改等操作; ③使用SQL语句建立过程,函数,触发器等; ④使用SQL创建数据表; 2.实验指导书预习及要求 上机前先预习数据库原理指导书的实验,理解和掌握SQL语言的常用操作。 五、实验原理或操作要点简介 注意服务器要先启动,才能与服务器建立连接。 使用SQL命令,完成预定功能。 六、实验步骤 1. 分析给定问题,设计E-R 模型;

2.根据E-R图设计出该问题的关系数据模型,分析数据模型并规范之;关系模型

数据库实验报告(一)

滨江学院 题目数据库实验报告(一) 学生姓名 学号 系部电子工程系 专业通信工程 指导教师林美华 二O一三年十二月十八日

实验一数据库的定义实验 本实验需要2学时。 一、实验目的 要求学生熟练掌握和使用SQL、SQL Server企业管理器创建数据库、表、索引和修改表结构,并学会使用SQL Server 查询分析器接收语句和进行结果分析。 二、实验内容 1 创建数据库和查看数据库属性。 2 创建表、确定表的主码和约束条件。为主码建索引。 3 查看和修改表结构。 4 熟悉SQL Server企业管理器和查询分析器工具的使用方法。 三、实验步骤 1 基本操作实验 (1) 使用企业管理器按教材中的内容建立图书读者数据库。 (2)在企业管理器中查看图书读者数据库的属性,并进行修改,使之符合要求。 (3)通过企业管理器,在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为; 图书(书号,类别,,作者,书名,定价,作者). 读者(编号,,单位,性别,). 借阅(书号,读者编号,借阅日期) 要求为属性选择合适的数据类型,定义每个表的主码.是否允许空值和默认值等列级数据约束。 (4)在企业管理器中建立图书、读者和借阅3个表的表级约束.每个表的主码约束.借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式.再通过操作予以实现.实现借阅表的书号和读者编号的惟一性约束:实现读者性别只能是“男”或“女”的Check(检查)约束。 2 提高操作实验 (一) 将教材中用SQL描述的建立学生--课程操作.在SQL Server企业管理器中实现。库中表结构为: 学生(学号,,年龄,性别,所在系). 课程(课程号,课程名,先行课). 选课(学号,课程号,成绩) 要求: 1)建库、建表和建立表间联系。, 2)选择合适的数据类型。 3)定义必要的索引、列级约束和表级约束. 四、实验方法 l创建数据库 (1)使用企业管理器创建数据库的步骤 1)从“开始”菜单中选择;“程序”“Microsoft SQL2000”“企业管理器”.

SQL数据库实验报告 实验二

实验2 SQL Server数据库的管理 1.实验目的 (1)了解SQL Server 数据库的逻辑结构和物理结构的特点。 (2)掌握使用SQL Server管理平台对数据库进行管理的方法。 (3)掌握使用Transact-SQL语句对数据库进行管理的方法。 2.实验内容及步骤 (1)在SQL Server管理平台中创建数据库。 ①运行SQL Server管理平台,在管理平台的对象资源管理器中展开服务器。 ②右击“数据库”项,在快捷菜单中选择“新建数据库”菜单项。在新建数据库对话框的数据库名称文本框中输入学生管理数据库名studentsdb,单击“确定”按钮。 (2)选择studentsdb数据库,在其快捷菜单中选择“属性”菜单项,查看“常规”、“文件”、“文件组”、“选项”、“权限”和“扩展属性”等页面。 (3)打开studentsdb数据库的“属性”对话框,在“文件”选项卡中的数据库文件列表中修改studentsdb数据文件的“分配的空间”大小为2MB。指定“最大文件大小”为5MB。修改studentsdb数据库的日志文件的大小在每次填满时自动递增5%。 (4)单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL 语句CREATE DA TABASE创建studb数据库。然后通过系统存储过程sp_helpdb查看系统中的数据库信息。 (5)在查询设计器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。 (6)在查询设计器中为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。 (7)使用SQL Server管理平台将studb数据库的名称更改为student_db。 (8)使用Transact-SQL语句DROP DATABASE删除student_db数据库。 3.实验思考 (1)数据库中的日志文件是否属于某个文件组? (2)数据库中的主数据文件一定属于主文件组吗? (3)数据文件和日志文件可以在同一个文件组吗?为什么? (4)删除了数据库,其数据文件和日志文件是否已经删除?是否任何人都可以删除数据库? (5)能够删除系统数据库吗?

数据库实验报告2.

实验报告 ( 2015 / 2016 学年第 2 学期)题目:数据库系统原理 专业:物联网工程 学生: 班级学号: 指导教师: 指导单位:物联网学院 日期: 2016-5-12

实验名称:约束、视图、索引与存储过程 一、 实验容和要求 1、用create database 命令创建电影数据库(以自己的学号命名)。 2、在电影数据库中用create table 命令创建如下5个关系模式。 3、用alter table 命令修改movies 关系模式,增加引用完整性约束cproducerc ,要求movies 表中的producerC 必须是在MovieExec 表中已有的导演。若违反了此约束,则拒绝更新操作。 4、用alter table 命令修改StarsIn 关系模式,增加引用完整性约束cmovies ,要求StarsIn 表中的电影名称和年份必须是在movies 表中已有的电影名称和年份。若违反了此约束,则拒绝更新操作。 5、用alter table 命令修改movies 关系模式,增加完整性约束cyear ,要求电影年份不能是1915年以前的。 6、用alter table 命令修改movies 关系模式,增加完整性约束clength ,要求电影长度不能小于60也不能多于250。 7、设计数据对3~6的容进行验证。 8、用create view 命令创建如下视图。 a)视图RichExec 给出了所有资产在10000000以上的导演的、地址、证书号和资产; b)视图StudioPress 给出了既是电影公司经理又是导演的那些人的名字、地址和证书号; c)视图ExecutiveStar 给出了既是演员又是导演的那些人的名字、地址、性别、生日、证书号和资产总值。 9、用create index 命令在StarsIn 的StarName 属性上创建索引aindex 。 10、编写存储过程(函数) ① 求产品数据库Laptop 存容量的平均值和总和。 然后调用该存储过程(函数)。 二、 实验环境 PostGreSQL9.3 三、 实验设计 CREATE TABLE Movies ( title char(20), year int, length int, genre char(10), studioName char (30), producerC int, PRIMARY KEY (title, year ));CREATE TABLE MovieStar ( name char(12), address char(30), gender char(2), birthdate date, PRIMARY KEY (name ));CREATE TABLE StarsIn ( movieTitle char(20), movieYear int, starName char(12), PRIMARY KEY (movieTitle , movieYear , starName ));CREATE TABLE MovieExec ( name char(12), address char(30), cert int, netWorth int, PRIMARY KEY (cert ));CREATE TABLE Studio ( name char(30), address char(30), presC int, PRIMARY KEY (name )); 说明: Movies 关系中,title 为电影名称、year 为发行年份、length 为电影长度(分钟)、genre 为电影流派、studioName 为电影公司名称、producerC 为导演证书号;MovieStar 关系中,name 为影星的姓名、address 为影星住址、gender 为性别、birthdate 为出生日期;StarsIn 关系中,movieTitle 为电影名称、movieYear 为发行年份、starName 为参演影星姓名;MovieExec 关系中,name 导演姓名、address 为住址、cert 为导演证书号、netWorth 为导演净资产值;Studio 关系中,name 为电影公司名称、address 为电影公司地址、presC 为电影公司老总证书号。

相关文档