DB作业与实验 2019

发布 2022-07-01 01:00:28 阅读 3330

《数据库技术应用》作业和实验。

一、说明。数据库技术应用》,3.5学分。

教材采用《数据库技术基础及应用(第2版)》,电子工业出版社出版。教辅书是《数据库技术基础及应用实验指导与习题解答》[教辅书只有第1版]。平时成绩占总评成绩30%,考试成绩占总评成绩70%。

平时成绩包括作业和实验。二、基本概念和基础知识的训练。

教材每章均配有习题,修课学生可参考教辅书自行完成练习。三、作业和实验题目。

给出作业和实验题目,其目的是进行一些基本的练习,使同学们能更好地掌握数据库技术的基本技能。要求上交作业,据此评定每人的平时成绩。考试之前交齐作业。

e1用vb程序实现有关算法。(习题5-19[2.39],习题5-20[2.40])[红色标记是第1版的题号,下同]

1)通过本题的练习,对vb的基本使用以及算法5.1、算法5.2有一定的感性认识。

(2)要求截取程序运行结果的界面(含本人的学院、学号、姓名),打印上交。(3)考试时要求手工完成算法5.1和算法5.

2。e2简单的er图及关系模型。

1)习题1-10[1.10],习题1-11[1.11],学会画er图。(2)习题3-6[2.6],把er图转换成关系模型数据结构。

3)考试时要求能按要求画出er图并把er图转换成关系模型。e3关系代数基础。(习题4-2[2.12],习题4-5[2.15])

1)关系演算不列入考试范围。

2)考试时要求根据题意写出关系代数的表达式和运行结果。

e4模式分解,判断是否具有无损连接和保持函数依赖两个特性。掌握把模式分解成各种。

nf模式集的方法。(习题5-11[2.31],习题5-16[2.36])

1)考试时要求判断“某个模式分解是否具有无损连接和保持函数依赖两个特性”。(2)考试时要求掌握各种范式的定义及其运用。

e5在习题6-6~6-10[第1版缺]中,每题自选3小题(共15小题)验证,给出验证结果。e6习题6-4[3.4]及7-4[3.

8],建立表和视图,显示视图中的所有记录。e7sql查询语句运用。(习题8-2[3.

12],习题8-3[3.13],习题9-7[3.19])

sql查询语句是重点,考试时分数比重较高。有少量的更新语句。e8自行完成附录b中的实验6—数据转换(习题11-2[4.17])。

e9自行完成附录b中的实验7—用ado控件和ado对象模型访问数据库(习题12-4[4.10],习题12-9[4.15])。

e10自行完成附录b中的实验8—用web页面、asp页面访问数据库(习题13-2[4.18])[注:e8,e9,e10三题仅要求自行完成,不要求上交作业。]

附:有关算法方面的习题参***。

2.39*用vb程序实现算法2.1——“求属性集合x关于函数依赖集f的闭包x+”。

要求:输入属性子集x和函数依赖集f。

把所有输入的属性转换为大写字母,一个字母代表一个属性。把所有函数依赖转换为右部是单属性的形式。

界面设计:窗体有两个按钮,按钮1表示‘开始’,按钮2表示‘结束’。④在窗体输出:x,f以及x关于f的闭包x+。程序**如下:

private sub command1_click()

dim f0(20), f(20), xo, x, xf as string, i, j, k, l as integerx0 =

x = ucase(inputbox("请输入属性集x:")xf = xprint " x=";xprinti = 1j = 1

do while true

f0(i) =ucase(inputbox("请输入第" &str(i) &

条函数依赖[形如a->b],函数依赖集f输入完毕用'#'结束"))if f0(i) =#" thenf(j) =#"exit doend if

print " f(";trim(str(if0(i)l = len(f0(i)) instr(f0(i), 1for k = 1 to l

f(j) =left(f0(i), len(f0(i)) l) &mid(f0(i), len(f0(i)) l + k, 1)j = j + 1next ki = i + 1loop

do while x0 <>xx0 = x

for k = 1 to j - 1l = 1

for i = 1 to len(f(k)) 3

if instr(x, mid(f(k), i, 1)) 0 thenl = 0i = len(f(k))end ifnext i

if l and instr(x, right(f(k), 1)) 0 then

x = x &right(f(k), 1)end ifnext kloopprint

print " xfxprintprintend sub

private sub command2_click()endendsub

习题2.39的图示求属性集合x关于函数依赖集f的闭包x+

2.40*用vb程序实现算法2.2——“测试一个分解ρ是否为无损联接分解”

要求:输入关系模式r的全部属性,逐一输入r的分解ρ=中每个ri的属性,输入函数依赖集f。

把所有输入的属性转换为大写字母,一个字母代表一个属性。把所有函数依赖转换为右部是单属性的形式。

界面设计:窗体有两个按钮,按钮1表示‘开始’,按钮2表示‘结束’。

在窗体输出:r的属性;ρ中每个ri的属性;函数依赖集f;rρ表。并判断ρ相对于f是否为无损联接分解。

程序**如下:

private sub command3_click()

dim f0(20), f(20), r0(20), r, s, sp, t, g() as stringdim i, j, k, l, m, n, p, q, wy, w(),x, flag as integerr = ucase(inputbox("请输入关系r的全部属性:")print " r=";ri = 1

do while true

r0(i) =ucase(inputbox("请输入分解后的第" &str(i) &

个关系r(" str(i) &的属性,所有的关系输入完毕用‘#’结束"))

if r0(i) =#" then exit do

print " r(" trim(str(ir0(i)i = i + 1loop

k = i - 1: n = len(r)redimg(k, n)for p = 1 to kfor q = 1 to n

g(p, q) =b" &trim(str(p)) trim(str(q))next qnext pprinti = 1j = 1

do while true

f0(i) =ucase(inputbox("请输入第" &str(i) &

条函数依赖[形如a->b],函数依赖集f输入完毕用‘#’结束"))if f0(i) =#" thenf(j) =#"exit doend if

print " f(";trim(str(if0(i)l = len(f0(i)) instr(f0(i), 1for p = 1 to l

f(j) =left(f0(i), len(f0(i)) l) &mid(f0(i), len(f0(i)) l + p, 1)j = j + 1next pi = i + 1loopfor p = 1 to kfor q = 1 to n

if instr(r0(p), mid(r, q, 1)) 0 theng(p, q) =a" &trim(str(q))end ifnext qnext p'

redimw(n)flag = 1

do while flag = 1flag = 0for p = 1 to j - 1

t = left(f(p), len(f(p)) 3)wy = instr(r, right(f(p), 1))

for m = 1 to nw(m) =0next m

for m = 1 to len(t)l = instr(r, mid(t, m, 1))if l > 0 then w(l) =1next m

for q = 1 to k - 1s = for m = 1 to n

if w(m) =1 then s = s & g(q, m)next m

for x = q + 1 to ksp = for m = 1 to n

if w(m) =1 then sp = sp & g(x, m)next m

if (s = sp) and (g(x, wy)

g(x, wy) =g(q, wy)end ifflag = 1end ifnext xnext qnext ploopprintprint " for p = 1 to n

print tab(p * 6); mid(r, p, 1);next pprint

s = 该分解不是无损连解分解!"for p = 1 to kprint r0(p);x = 0

for q = 1 to n

if left(g(p, q), 1) =a" then x = x + 1print tab(q * 6); g(p, q);next q

if x = n then s = 该分解是无损连解分解,见第" &trim(str(p)) 行"

printnext pprintprint sprintend sub

private sub command4_click()endend sub

习题2.40的图示测试一个分解ρ是否为无损联接分解。

实验4 DB实验指导

数据库应用实验。一 实验目的。1.熟悉数据存储到数据库中的过程 2.了解数据库管理系统 dbms 的作用 3.掌握基本的建表和输入数据的操作 4.了解数据库的日常维护和数据库应用程序的创建过程。二 实验内容与步骤 数据库环境为sql server2008 1 建表和输入记录。1 students 学...

dB概念与工程应用

db decibel,分贝 是一个纯计数单位,本意是表示两个量的比值大小,没有单位。在工程应用中经常看到貌似不同的定义方式 仅仅是看上去不同 对于功率,db 10 lg a b 对于电压或电流,db 20 lg a b 此处a,b代表参与比较的功率值或者电流 电压值。db的意义其实再简单不过了,就是...

数学建模与实验作业

请各位同学注意 5月24 25日交实验报告 纸质 交到老校部543房间 数学实验室 以下任选一题 1.收集 整理自1977年我国恢复高考后,每一年全国的报考人数以及录取人数,进行相应的统计分析。2.自2001年起,我国高考开始试行各省市自主命题。收集 整理有关数据,对你所认为有意义的问题进行必要的统...