数据库实验报告Word文档格式.docx

上传人:b****3 文档编号:7839315 上传时间:2023-05-09 格式:DOCX 页数:18 大小:35.98KB
下载 相关 举报
数据库实验报告Word文档格式.docx_第1页
第1页 / 共18页
数据库实验报告Word文档格式.docx_第2页
第2页 / 共18页
数据库实验报告Word文档格式.docx_第3页
第3页 / 共18页
数据库实验报告Word文档格式.docx_第4页
第4页 / 共18页
数据库实验报告Word文档格式.docx_第5页
第5页 / 共18页
数据库实验报告Word文档格式.docx_第6页
第6页 / 共18页
数据库实验报告Word文档格式.docx_第7页
第7页 / 共18页
数据库实验报告Word文档格式.docx_第8页
第8页 / 共18页
数据库实验报告Word文档格式.docx_第9页
第9页 / 共18页
数据库实验报告Word文档格式.docx_第10页
第10页 / 共18页
数据库实验报告Word文档格式.docx_第11页
第11页 / 共18页
数据库实验报告Word文档格式.docx_第12页
第12页 / 共18页
数据库实验报告Word文档格式.docx_第13页
第13页 / 共18页
数据库实验报告Word文档格式.docx_第14页
第14页 / 共18页
数据库实验报告Word文档格式.docx_第15页
第15页 / 共18页
数据库实验报告Word文档格式.docx_第16页
第16页 / 共18页
数据库实验报告Word文档格式.docx_第17页
第17页 / 共18页
数据库实验报告Word文档格式.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库实验报告Word文档格式.docx

《数据库实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库实验报告Word文档格式.docx(18页珍藏版)》请在冰点文库上搜索。

数据库实验报告Word文档格式.docx

\7\/\7

202010

(-/\/\

学号<pi>

逻辑数据

•pi,fi2>

X

pi,fil>

Characters(10)ZX

课程名称

Characters

(20)

pi

(10)<

数师垢号

学时

(10)

学分

i更程城号

pi-

滦程

ft®

Identifier^!

pi>

授课

教师塢兮<

pi.fi2>

Characters(20)<

M谀程堀兮pi>

fil>

Identifierlpi

物理数据模型

选课

丁ftW

<

Characters(20)<

姓名Chancters(20)

性別Characters(10)

敦师编号5i>

课祝

课程名称char©

0)

课程编号char(10)<

pk>

教师编号char(20)<

fk>

学时char(10)

李分char(10)

char(10)<

pk,fkl>

char(10)<

pk,fk2>

character

教师編号char(20)<

课程編:

char(10)^pk,fk2>

pkchar(20)

char(20)char(4)

char(10)

师名别

char(20)<

char(10:

总结:

经过对这个实验的制作,信息比较多,做表格有点复杂,涉及的框架知识多,对关键字、空值、域完整性做的描述基本熟练。

对概念数据模型、物理数据模型、逻辑数据模型的基本掌握。

开始对数据库的设计有了一定的了解。

实验2建立表和完整性约束

建立数据库、架构、表和定义完整性约束实验内容:

参见2.1.7数据库的CREATEDATABASE命令首先建立数据库,然后参照图5-1和表5-8建立表并定义完整性约束,可以在此基础上根据自己学校的实际情况增加表、字段和约束等。

熟练掌握表的建立和数据完整性约束的定义方法,实践DBMS提供的数据完整性功能,加深对数据完整性的理解。

用CREATEDATABASE命令建立数据库,使用CREATESCHEMA命令建立架构,用CREATETABLE命令建立表并定义数据完整性约束,用ALTERTABLE命令修改表结构。

(1)用CREATEDATABASE命令建立数据库(自己命名数据库的名称)。

用CREATESCHEMA命令建立架构(自己命名架构名称)。

在定义的架构卜•参照图5-1所示的样本数据库和表5-8的具体要求使用CREATETABLE命令建立表并定义完整性约束。

用ALTERTABLE命令按如下要求修改表结构:

为学生表增加一个“平均成绩”字段,类型为短整数,默认是空值;

为课程表的“学时”字段重新定义约束:

取值为8的倍数,不允许为空值;

将院系表的名称字段的类型修改为vaichai-(30)o

为教师表增加一个工资字段,类型为5位整数、2位小数的数值型。

实验过程、源程序、运行结呆及简单分析:

建立数据库

createdatabase教务信息

on(name=juxx_dat,

filename=C'

PiogmmFilesMvIicrosoftSQLSenTer\90\Tools\Buin\VSShell\Coiniiion7\林碧娴;

size=10mb,

maxsize=50mb,

filegrowth=5mb)

logon

(name=juxx_log,

filename=,C:

\ProgramFiles\MicrosoftSQLSeiver\90\Tools,,Biiui\VSShell\Conmion7\lin\size=5mb,

niaxsize=25mb,

filegrox\lli=5mb)

建立架构

createschema教务信息

定义表及完整性约束

createtable教务信息.院系

(编号sniallintprimarykey,

名称char(20)notnull.

负资人char(10),

办公地点char(20))

createtable教务信息•学生

(学号chai(8)piiinarykey,

院系smallmtforeignkeyreferences教务信息•院系(编号),

姓名char(l0)notnull.

性别char

(2)check(性别=労or性别=女),

生源char(6),

状态char(4)check(状态=,正常5状态=,留级'

or状态休学5状态=泄学为

createtable教务信息.教师

(教师编号cliar(8)piiiiiarykey,

性别char

(2)check(性别=男or性别=女),

职称char(6)check(职称-教授kr职称=,副教授职称讲师Pr职称=,助教?

专业char(10))

createtable教务信息.课程

(课程编号cliai(8)piiiiiarykey,

课程名称char(20)notnull,

责任教师cliar(8)foieignkeyreferences教务信息.教师(教师编号),学时intnotnull.

课程性质char(10)check(课程性质=公共基础,or课程性质「专业基础,or课程性质=专业选修,or课程性质=,任意选修))

createtable教务信息.选课

(学号chai(8)piiinarykeyforeignkeyreferences教务信息•学生(学号),课程编'

4cliar(8)foieignkeyreferences教务信息.课程(课程编号),成绩intcheck(成绩>=0and成绩<=100)defaultnull)修改表结构altertable教务信息.学生

add平均成绩smallintdefaultnull

altertable教务信息.课程

addconstraintsbcheck(学时%8=0)

altertable教务信息.院系

altercolumn名称varchar(30)

altertable教务信息.教师

add工资numeric(7,2)

通过此次的实验,让我对使用CREATEDATABASE命令建立数据库有了更加熟练的认识,对CREATESCHEMA命令建立架构的基本掌握,学会了使用CREATETABLE命令建立表并定义数据完整性约束,也ALTERTABLE命令修改表架构。

学到了更多,懂得了更多。

实验3数据操作及完整性约束体验

数据操作及完整性约束体验

在实验2的基础上完成数据的插入操作,然后进行部分修改和删除操作,在这些操作中体会数据完整性约束的作用。

熟练掌握SQL的INSERT、UPDATE和DELETE命令,深刻理解数据完整性约束的作用以及约束时机。

在实验2的基础上首先用INSERT命令插入各个表的记录,然后使用UPDATE和DELETE命令对部分记录进行修改和删除操作。

(1)读者自行设计各个表的记录,记录院系表至少10条记录、学生表至少30条记录、课程表至少10条记录、教师表至少10条记录、选课表至少50条记录。

(2)使用INSERT命令完成记录的插入操作,要求分别设计若干违反实体完整性、参照完整性和用户完整性约束的插入操作,并分析原因。

(3)设计若干删除操作,体会执行删除操作时检查参照完整性规则的效果(要求涉及拒绝删除、空值删除、和级联删除等不同的处理方式)。

(4)设计若干更新操作,体会执行更新操作时检查实体完整性规则、参照完整性规则和定义完整性规则的效果。

(5)在实验报告中要给出具体的记录和设计的操作,并针对各种数据完整性检查给出具体的分析和讨论。

插入数据

insertinto教务信息.院系values('

0r;

J^学院JE1丁二教?

insertinto教务信息.院系values('

02,»

财经学院;

'

E2;

三教)insertmto教务信息.院系values('

03'

电气学院JE3;

四教)insertinto教务信息.院系values('

O4'

吐建学院JE4;

05\'

医学院JE5;

三教?

insertinto教务信息.院系values(;

06丁外语学院TE6J三教Jinsertinto教务信息.院系values('

O7;

管理学院三教)insertinto教务信息.院系valuesCOS;

^山学院TE8丁五教Jinsertinto教务信息.院系values(Q9J汽车学院JE9丁六教)insertinto教务信息.院系values('

10•:

生化学院;

上10丁三教?

insertinto教务信息.学生values('

201200T,'

01;

淋一丁女;

南宁丁正常丁801)insertinto教务信息.学生values('

2012002;

02丁雷一女丁崇左丁正常丁90*)insertinto教务信息.学生values(2012003,,01,,莫一丁女;

河池丁正常;

*80'

)insertinto教务信息.学生values(,2012004\,05,;

曹一丁女丁北海丁正常;

)insertinto教务信息.学生values('

2012005;

04;

董一女丁百色丁正常丁80)insertinto教务信息.学生values(,2012006,;

07'

W—女丁南宁丁正常;

)insertmto教务信息.教师values('

00r;

林二丁女丁教授;

统计学'

4000'

insertinto教务信息.教师values('

002,;

02,;

雷二;

•男,,副教授丁信计学丁3000)

insertinto教务信息.教师values('

OO3'

'

O3'

莫二;

女,讲师;

统计学\'

4000*)

004\'

05'

曹二;

•女;

助教丁数应学丁2000,)

iiiseninto教务信息.课程values('

101'

数学分析,,,001,;

40y公共基础?

insertinto教务信息.课程values('

102'

概率论'

002;

40'

专业基础'

103'

数据库丁003丁24丁专业选修'

104'

计量经济学,,'

004,,'

40,;

任意选修'

iiiseitmto教务信息.选课values('

2012001'

101'

/SO'

insertmto教务信息.选课values(,2012002\'

102,,,70'

2012003103'

2012004'

104'

*60'

insertmto教务信息.选课valuesC2012005T101J9(y)

2012006'

*103'

80'

设计若干操作违反完整性约束的操作

insertinto教务信息.院系values(X)片职教院JE11;

三教J

删除操作

delete教务信息.选课where学号=0012006'

更新操作

update教务信息.学生set学号=*2012002'

where学号='

2012007*

初次使用SQL软件的灵敏度的欠缺,也基本掌握了SQL的INSERT、UPDATE和DELETE命令,能理解数据完整性约束的作用以及约束时机。

各个表格的设计也偶尔出现了命令行出错,然后在进行解决。

实验4数据査询

使用SQLSELECT语句的数据查询操作。

在实验2和实验3的基础上完成规定的查询操作。

熟练掌握SQLSELECT的命令。

在实验2和实验3的基础上使用SQLSELECT命令完成实验要求中所规定的各种查询。

在实验2和实验3的基础上按要求设计查询,并用SQLSELECT命令查询。

1.一般简单查询

不带条件的查询指定字段。

查询某个表的全部信息。

使用单个条件的简单查询。

使用多个条件(AND关系)的简单查询。

使用多个条件(OR关系)大简单查询。

使用多个条件(AND和OR关系)的查询。

使用带NOT运算的查询。

使用EETWEEN...AND...的查询。

使用NOT...EETWEEN...AND...的查询。

使用LIKE运算符的字符串的匹配查询。

使用LIKE的模板匹配查询。

使用空值和非空值查询。

结果要求排序的查询。

查询结果按多列排序,并分别按升序和降序查询。

使用TOP显示前若干记录的查询。

使用TOP显示前若干记录的查询,如果有满足条件的记录一并列入。

连接查询

两个关系的简单查询。

带其他条件的两个关系的连接查询。

多个关系的连接查询。

两个关于的而广义笛卡儿积运算结果。

根据两个关系的广义笛卡儿枳运算结果得出两个关系自然连接结果。

查询教师-课程信息,结果包含教师姓名、职称、课程名称和课程性质等4个字段。

查询教师-课程信息,结果包含教师姓名、职称、课程名称和课程性质等4个字段,要求结果中列出所有教师信息。

查询教师-课程信息,查询结果中包含教师姓名、职称、课程名称和课程性质等4个字段,要求结果中能够反应目前没有确定责任教师的课程信息。

查询教师-课程信息,查询结果中包含教师姓名,职称,课程名称和课程性质的4个字段,要求结果中技既能反应目前不是责任教师的信息,有能反应目前没有确认责任教师的课程信息。

使用嵌套查询

使用IN运算符查询。

使用NOTIN运算符查询。

使用关系运算符查询。

使用ANY或SOME的简单嵌套查询。

使用ALL的嵌套查询。

查询院系名称为含“计算机”、职称为教授、所负责课程为必修课的教师姓名、职称、课程名称和课程学时等信息(分别用嵌套查询和连接查询完成,分析各自的效率)。

设计两个内外层互相关的嵌套查询。

使用EXISTS的嵌套查询。

使用NOTEXISTS的嵌套查询。

汇总和分组查询

使用COUNT统计数目的查询。

使用SUM计算合计的查询。

一次完成求和、计数、计算平均值大查询。

查询所有课程的成绩都大于60分的学生的平均成绩。

查询数据库的成绩大于70分的、所有课程平均分最高的学生信息。

查询每个学生的平均成绩。

查询每个学生的所有课程的最高成绩、最低成绩、平均成绩、和所考课

程的门数。

查询至少有10门必修课程考试成绩的每个学生的平均成绩。

设计2个使用COMPUTE..BY和COMPUTE的查询。

设计1个使用COMPUTE的查询。

设计一个使用COMPUT...BY的查询。

实验过程、源程序、运行结果及简单分析:

一般简单查询

select姓名,性别

from教务信息.学生

-查询学生的姓名,性别

select*fiom教务信息.选课

-查询选课表的信息

select姓名,院系

from教务信息.教师

where工资!

今000

-③使用单个条件的简单查询

select*fiom教务信息.教师

where匸资between2000and3000

使用多个条件(AND关系)的简单查询

where工资=2000or工资=3000

-⑤使用多个条件(OR关系)人简单查询

where工资between2000and3000or工资=4000

使用多个条件(AND和OR关系)的查询

wherenot工资=2000or工资=3000

-⑦使用带NOT运算的查询

select*fiom教务信息.教师wherenot匸资between2000and3000

-使用NOT...BETWEEN...AND...的查询

select*fiom教务信息.院系where办公地点like,%三教%,-使用NOT...BETWEEN...AND...的查询

select*fiom教务信息.院系where编号isnotnull

-使用空值和非空值查询

select*fiom教务信息.教师orderby匸资

-结果要求排序的查询

selecttop(3)*fiom教务信息.教师orderby工资

-使用TOP显示前若干记录的查询

selecttop(3)withties*from教务信息.教师orderby匚资

-使用TOP显示前若干记录的查询,如果有满足条件的记录一并列入

(2)连接查询

select姓名,专业,课程名称from教务信息.教师join教务信息.课程

on教师编号=贵任教师

where工资>2000

select姓名,专业,课程名称,院系.名称fiom教务信息.教师join教务信息.课程on教师编号=贵任教师

join教务信息.院系on教师.院系=院系.编号

select*fiom教务信息.教师crossjom教务信息.院系

select姓名,职称,课程.课程名称,课程性质

from教务信息.教师join教务信息.课程

on教师编号=责任教师select姓名,职称,课程.课程名称,课程性质from教务信息.教师leftjom教务信息.课程on教师编号=资任教师

select姓名,职称,课程.课程名称,课程性质from教务信息.教师rightjoin教务信息.课程on教师编号=资任教师

from教务信息.教师fiilljoin教务信息.课程on教师编号=资任教师

嵌套查询

select院系.编from教务信息.院系where编号in(select院系仕om教务信息.学生where平均成绩=80)

select院系.编号from教务信息.院系where编号notin(select院系仕om教务信息.学生where平均成绩=80)select姓名fkom教务信息.学生where平均成绩=(

select平均成绩仕om教务信息.学生where姓名=,林一・)

selectdistinct姓名fkom教务信息.学生where平均成绩>=any(

select平均成绩仕om教务信息.学生where院系=1)

selectdistinct姓名fkom教务信息.学生where平均成绩=&

11(

select课程名称,学时,课程性质from教务信息.课程outa

where学时=(selectniax(学时)fkom教务信息.课程where贵任教师ni(select教师编号fem教务信息.教师where教师编号=贵任教师))

select*fiom教务信息.院系wherenotexists(select*fiom教务信息.学生where院系=编号)

selectsum(匸资),count(*),avg(匸资),max(匸资),min(匚资)from教务信息.教师

selectavg(平均成绩)fiom教务信息.学生

selectdistinctE资from教务信息.教师computecount(工资)

select*fiom教务信息.教师orderby教师编号

computeavg(工资),sum(匸资)by教师编号

computeavg(匸资),sum(匚资)

通过实验,学会使用SQLSELECT的数据查询操作,对左连接、右连接、内连接全连接的掌握,对简单嵌套查询、条件查询等等各种查询的练习的基本熟悉,同时也对SQLSELECT查询命令的基本框架的熟悉与理解。

让自己的能力有了更好的提升。

实验5视图的应用

视图的建立和应用

在实验2和实验3的基础上定义视图,并在视图上查询以及插入、删除、和更新和操作。

掌握视图定义和应用方法,体会视图和基本表的异同。

在实验2和实验3的基础上用CREATEVIEW命令定义视图,然后使用SELECT命令完成查询,使用INSERT.UPDATE和DELETE命令分别完成插入、更新和删除操作。

实验要求:

在实验2建立的基本表的基础上,按如下要求设计和建立视图:

基于单个表按投影操作定义视图。

基于单个表按选择操作定义视图。

基于单个表按选择和投影操作定义视图。

基于多个表根据连接操作定义视图。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2