2数据库实验文档格式.docx
- 文档编号:18216082
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:23
- 大小:401.17KB
2数据库实验文档格式.docx
《2数据库实验文档格式.docx》由会员分享,可在线阅读,更多相关《2数据库实验文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
81
5
0103
90
0106
80
01040105
85
72
88
01040102
56
01040106
48
78
66
02040101
0201
01040103
0202
76
0203
93
84
02040201
57
89
50
02040108
0107
99
2
0108
图5.3
*注意:
以上三表最好按图中信息输入,保存在E:
\CJGL中以备后用。
用APPEND命令或“显示”菜单下的“追加方式”命令分别给以上三个表追加5条记录。
用BROWSE命令浏览表的内容,用“显示”菜单下的“浏览”命令和“编辑”命令浏览,并观察二者的区别。
实验二 表的基本操作
2.1实验目的
(1)掌握修改表结构的方法
(2)掌握记录的修改、删除、定位、排序等操作
(3)掌握表的计算功能
2.2实验内容
setdefaulttoe:
\cjgl&
&
在命令窗口中设置,默认路径为E:
\CJGL
usexs.dbf &
打开已经建好的学生信息表
1、用菜单的方式修改表的结构,单击查看菜单中的表设计器命令,在表设计器中为学生信息表中增加新字段,民族,字符型,宽度为6。
用liststructure和displaystructure命令查看修改后的表结构。
2、用命令的方式修改表的结构,在命令窗口中输入modifystructure命令,在表设计器中为学生信息表中增加新字段,政治面貌,字符型,宽度为4。
●用自己熟悉的方式,在学生信息表中增加联系方式字段,之后再把这个字段删除。
练习在表设计器中调整字段的排列顺序。
3、用菜单的方式浏览表,单击查看菜单中的浏览命令,显示表(如图5.1):
查看之后用ctrl+w或直接单击关闭按钮,将表关掉。
用命令方式,在命令窗口中输入browse命令也可将该表显示出来,此时可以看到菜单栏中多了“表”菜单,用其中的命令可以实现对记录的追加、修改、替换、定位、删除等操作。
4、命令:
browse field学号,姓名,专业 for性别=”女”&
用表格浏览所有女生的学号,姓名和专业
●练习用表格浏览所有计算机科学与技术专业学生的姓名,性别和出生时间。
5、命令:
list/displayall&
显示所有学生的基本信息(只在屏幕显示)
listfor专业=”计算机科学与技术”&
显示所有计算机科学与技术的学生
●练习显示所有男生的基本信息。
●练习显示1985年以后出生的学生名单。
6、替换字段:
browse&
显示现有的所有记录
appendblank &
追加一条空记录
list&
显示记录,表的末尾有条空记录
gobottom&
将记录指针指向最后一条记录
replace学号with“01040107”,姓名with“吴有祥”
最后空记录已添加内容
用菜单方式,单击表―>追加新记录,直接输入数据。
7、备注型字段中追加内容:
replaceall备注with"
体育班长"
for姓名="
刘中"
&
命令方式
用菜单方式,单击表->替换字段…,打开如下图6.1对话框:
单击替换就可以了,注意运算符和字符定界符在英文状态下。
图图6.1
8、转到记录:
usexs.dbf&
在工作区中打开学生信息表
?
recno()&
显示当前记录号的函数,当前记录号为1
skip
?
当前记录号为2
gobottom
当前记录号为10
eof()&
显示.T.,因为记录指针指向表的最后一条记录的下一个
go5
当前记录号为5
用菜单方式,单击表->转到记录->第一个,最后一个,上一个,下一个,记录号等,同时当前记录号在状态栏中显示出来。
9、定位记录:
usexs.dbf
locatefor专业=”电子信息工程”
display&
显示记录号为7的记录
continue
display &
显示记录号为8的记录
continue &
状态栏提示已到定位范围末尾
因为没找到,所以无显示。
用菜单方式,单击表->转到记录->定位…打开如下图6.2对话框:
图6.2
单击定位会定位在找到的第一个记录上,没有continue的功能。
10、删除记录:
setdeleteoff&
设置删除标记的记录显示
deletefor学号=”01040107”&
给该记录加上删除标记
刚删除的记录旁边有*删除标记
browse&
表格中刚删除的记录旁边有黑块删除标记
setdeleteon&
设置删除标记的记录不显示
只显示没有删除标记的记录(browse也一样)
recount()&
显示表中记录的总个数11
recallfor学号=”01040107”&
取消对该记录的删除或说取消删除标记
显示全部记录
deletefor学号=”01040107”
pack&
对加了删除标记的记录彻底删除
显示表中记录的总个数10
用菜单方式,单击表->删除记录…可打开如下图6.3对话框:
图6.3
单击删除就会为该记录加上删除标记。
再单击表->彻底删除就可以将该记录从表中彻底删除。
11、表的连接:
select1
usexs&
在工作区1中打开xs表
select2
usexskc &
在工作区2中打开表xskc
joinwithxsto成绩fields学号,xs.姓名,课程号,成绩,学分for学号=xs.学号&
为学生成绩表中加入姓名字段,保存在成绩表中
select3
use成绩&
用browse命令显示在学生成绩库中加入了姓名字段
12、表的计算(利用学生成绩表):
usexs
countton&
把表中记录的个数赋值给内存变量n
”学生数=”,n
usexskc.dbf
sum成绩for学号=”01040101”tozf&
统计01040101号学生的总分
?
”01040101号学生的总分是”,zf
average成绩 for课程号=”0101”tojf&
统计0101号课程的均分
”0101号课程的均分是”,jf
calculateavg(成绩),min(成绩),max(成绩),std(成绩)for课程号=”0101” &
统计计算0101号课程的均分,最低分,最高分和标准偏差。
实验三 内存变量和常用函数
3.1实验目的
掌握内存变量和常用函数的使用
3.2实验内容
1.内存变量的使用
在命令窗口中输入下列命令,观察主窗口中显示的信息,写出显示的内容。
R=10
S=3.14159*r*r
Store“面积”tos1,s2
?
r,s,s1,s2&
主窗口中显示
ndate={^2005-6-30}+1
姓名_1=”金中华”
姓名_2=”赵红”
姓名_3=”鞠春松”
displaymemory&
显示所有内存变量
savetomymem
file(“mymem.mem”)&
显示为
releaseallexcept姓名*&
清除除了以“姓名”开头的其他内存变量
显示所有内存变量
姓名_3=”林时”
?
姓名_3 &
显示为
restorefrommymem&
将内存变量从保存的文件中恢复了
姓名=”林时”
姓名 &
显示内存变量为
usexs.dbf
姓名&
显示字段变量为
M->
姓名 &
2.常用函数的使用
Xh=”01040102”
Xm=”赵 红”
len(xh),len(xm)&
left(xm,2)&
right(xm,2) &
substr(“01040102”,3,2)&
专业=”计算机”
zxf=40
xm+left(xh,2)+”院”+str(zxf)+”分”&
”红”$xm&
empty(“”)&
temp=xh+xm-trim(专业)
at(“计算机”,temp,1)&
int(680.34)&
sqrt(9)&
max(2,4.5,-100)&
mod(26,10),mod(23,-5)&
setdecimalsto4&
设置小数位数为4位
round(1536.2854,2)&
n=int(val(xh)/100)
n&
chr(65)+str(n)&
asc(“12345”)&
date(),time()&
setdatetoymd
setmarkto“.”
Setcenton
datetime()&
d=date()
t=datetmie()
d+1,t+1&
year(d),month(d),day(d),dow(d)&
t={^2005-6-3010:
30a}
dtoc(t),ttoc(t)&
出生时间={^1985.12.8}
date()-出生时间+1&
left(xh,2)!
=”02”&
zxf>
=36&
(date()-出生时间+1)<
30&
婚否=.T.
.not.婚否&
cvar=”fox”
”Visual&
cvar.Pro6.0”&
实验四:
数据库和数据库表的创建
4.1实验目的
(1)掌握数据库和数据库表的创建。
(2)掌握查询设计器创建查询和应用。
4.2实验内容
1、创建名为xscj的人员信息数据库(两种方法,二者选一即可)
SETDEFAULTTOE:
/CJGL&
用命令创建数据库
CREATEDATABASExscj&
可生成数据库名为xscj的数据库
CLOSEDATABASE
交互建立数据库,
选择“文件”“新建”“数据库”“新建文件”,系统显示“创建”对话框,在此对话框中选择路径为“E:
\cjgl”,数据库名为“xscj”,单击“保存”按钮。
数据库建立后形成三个文件,它们是基本文件xscj.DBC、相关的数据库备份文件xscj.DCT、相关的索引文件xscj.DCX。
2、将4个自由表加入数据库中(两种方法,二者选一即可)
/cjgl &
使用命令添加数据库表
OPENDATABASExscj
MODIFYDATABASE&
数据库设计器-xscj
ADDTABLExs
ADDTABLEkc
ADDTABLExskc
ADDTABLE成绩
交互添加数据库表,打开xscj数据库,选择“数据库”“添加表”,在“打开”对话框中选择需要加入的表后点击“确定”按钮。
3、数据库表的字段特征属性
⑴xscj数据库各表字段的属性设置要求
①xs表(选中表,单击显示―>表设计器或单击鼠标右键选择“修改”菜单项,打开表设计器如下设置)
●学号不能为空、只能是数字组合;
●出生时间年龄在16~24之间;
●专业不能为空。
②kc表
●课程号不能为空、只能是数字组合;
●课程名不能为空;
●学时1~150之间,默认值为0;
●学分1~8之间,默认值为0。
③xskc表
●成绩0~100之间,默认值为0。
(如图8.1)
图8.1成绩(xskc)数据表字段属性
成绩中将学号和课程号均设置索引
⑵验证xscj数据库各表字段的属性
\cjgl
USExs
APPENDBLANK &
本命令执行出错,学号和专业字段不能为空,设默认值则可执行
GO2
EDIT&
出生时间改为2000.02.01系统出错,它不符合年龄范围
USE
●kc表和xskc表自己打开,设置不符合字段条件的情况,观察出错信息。
4、数据库表的记录属性
⑴xscj数据库各表记录的属性设置要求
①xs表
●学号前两位的代号与专业字段一一对应。
●有课程号才有学时;
●有学时才有学分。
③xskc表(成绩表的设置一样)
●有学号和课程号才有成绩;
●有成绩才有学分;
●学号必须在xs表中存在;
●课程号必须在kc表中存在;
●表的逻辑名为成绩。
⑵设置xscj数据库各表记录的属性
/cjgl
USExs &
kc表、xskc表和成绩表的设置类似
MODISTRU
5、使用查询设计器生成查询
图8.2查询结果
按照以下步骤操作,得到如图8.2所示查询结果。
(1)打开查询设计器:
文件新建查询
(2)数据环境中,单击鼠标右健选择“添加表”,系统打开“添加表或视图”对话框。
选择数据库的xs、kc和成绩表后,数据环境如图8.3所示。
这3个表之间的永久关系被带入数据环境中,表之间有连线显示。
(3)在查询设计器中,选择“字段”选项卡,在“可用字段”框中选择所需的数据库表的字段。
如图8.4所示。
(4)设置查询联接条件,两表之间的联接条件也可以通过查询设计器的“联接”选项卡来设置和修改,如图8.5所示。
(5)设置查询筛选条件,指定选取记录的条件可以使用查询设计器的“筛选”选项卡,如图8.6所示。
图8.3查询数据环境
图8.4选择查询输出字段
图8.5查询设计器的“连接”
图8.6查询设计器的“筛选”
(6)设置查询排序依据,使查询结果按“课程号”从小到大排序,课程号相同时再按成绩从大到小排。
如图8.7所示。
图8.7查询设计器的“排序依据”
(7)在查询设计器中还有一个“分组依据”选项卡,所谓分组就是将一组类似的记录汇总成一个结果记录,以便完成对这一组记录的计算。
(8)杂项,在“查询设计器”的“杂项”选项卡中,可以设置一些特殊的查询条件,在将“无重复记录”复选框选中。
(9)选择查询结果的输出去向,在“查询设计器”单击“查询去向”按钮,打开“查询去向”对话框,系统默认值为查询结果显示在浏览窗口中。
(10)生成SQL语句,可以通过选择“查询”菜单(或者快捷菜单)中的“查看SQL”项或单击查询设计器的工具栏上的“SQL”按钮,即可看到所生成的SELECT--SQL语句。
(11)生成查询文件,查询创建完成后,单击常用工具栏上的“保存”按钮或“文件”菜单中的“保存”命令,输入文件名(例如xskc1),系统自动为该文件加上扩展名“.QPR”,即生成了查询文件xskc1.QPR。
该文件中保存的就是SQL语句。
(12)运行查询
●单击“查询”主菜单选择“运行查询”菜单项;
●单击鼠标右健在快捷菜单中选择“运行查询”菜单项;
●在命令窗口运行查询:
DOxskc1.QPR &&查询结果如图8.2所示。
实验五 程序设计
5.1实验目的:
掌握顺序、分支、循环程序的设计过程和方法
5.2实验内容:
1、顺序程序的设计:
(1).编写一程序,计算并显示圆的周长(L)和面积(S),其中半径(R)由INPUT语句读入。
(2).编写一程序,首先由用户输入一个专业,如:
“计算机科学与技术”,“工商管理”等,然后显示学生信息表中所有该专业的学生记录。
SETTALKOFF
USE学生信息表
ACCEPT‘专业:
’TOZW
LISTFOR专业=ZW
RETURN
2、分支程序的设计:
(1).编写一程序,输入一个英文字母,若为大写,则显示它的小写字母,若为小写则显示它的大写字母。
settalkoff
accept'
输入一个字符:
'
toch
ifupper(ch)=ch
lower(ch)
else
upper(ch)
endif
return
(2).编写程序,计算分段函数:
的值。
(X,Y的值从键盘输入)
(3).编写一程序,输入某人的收入额,计算其个人所得税。
个人所得税的计算方法为:
不超过500元的税率为5%,500元到2000元部分的税率为10%,超过2000元部分的税率为15%。
input'
x='
tox
ifx<
=500
t=x*0.05
=2000
t=500*0.05+(x-500)*0.1
t=500*0.05+1500*0.1+(x-2000)*0.15
税金为:
str(t,6,2)
return
(4).用DOCASE语句编写第2、3题的程序,并重复上面的计算。
3、循环程序的设计:
(1).编写一程序,计算S=1/2+1/2^2+1/2^3+…+1/2^N,其中N由用户输入。
(保留小数点后5位)
利用程序分别计算N=5,10和20时,S的值。
s=0.00000
i=1
n='
ton
dowhilei<
=n
s=s+1/2^i
i=i+1
enddo
s='
s
return
(2).编写一个二重循环程序,显示如下的乘法口诀表。
=9
j=1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验