江西财经大学数据库SQL实验答案
数据库原理中SQL语句实验指导书及答案

实验四:管理SQL Server表数据一、实验目的熟悉数据表结构及使用特点;熟悉使用Management Stuio界面方式管理数据表数据;熟悉使用T-SQL语句管理数据表数据。
二、实验环境已安装SQL Server 2005 企业版的计算机(13台);具有局域网环境,有固定IP;三、实验学时2学时四、实验要求了解SQL Server数据表数据的管理方法;了解SQL Server数据类型;完成实验报告(部分题只需给出关键语句)。
五、实验内容及步骤以课本指定的数据库为例,并依据数据表的结构创建相对应的数据表(student、course、sc),请分别使用Management Stuio界面方式及T-SQL 语句实现进行以下操作:向各个数据表中插入如下记录:学生信息表(student)课程信息表(course)选课信息表(sc)insert into student.dbo.sc values('20051501','1',75)insert into student.dbo.course values('1','数据库','5',4)insert into student.dbo.student values('201015001','赵菁菁','女',23,'CS') 2.修改CS系姓名为“李勇”的学生姓名为“李咏”;update studentset Sname='李咏'where Sname='李勇'3.修改课程“数据处理”的学分为3学分;3.update courseset Ccredit=3where Cname ='数据处理'4.将选修课程“1”的同学成绩加5分;4.update scset Grade =Grade+5where Cno='1'5.将选修课程“大学英语”的同学成绩加5分;update scset Grade=Grade+5from course,scwhere o=o and ame='大学英语'6.将学号为“200515010”的学生信息重新设置为“王丹丹、女、20、MA”;update studentset Sname='王丹丹',Ssex='女',Sage=20,Sdept='MA'where Sno='200515010'7.修改借书证号为2005001的学生记录重新设置:名字为王婧婧、专业为信息管理、借书量增加5本;(因为无些相关的数据表帮无法实现)8.删除数据表student中无专业的学生记录;deletefrom studentwhere Sdept is null9.删除数据表student中计算机系年龄大于25的男同学的记录;deletefrom studentwhere Ssex='男' and Sage>25 and Sdept='CS'10.删除数据表course中学分低于1学分的课程信息;deletefrom coursewhere Ccredit<1实验五:数据库单表查询一、实验目的1.掌握SELECT语句的基本语法和查询条件表示方法;2.掌握查询条件表达式和使用方法;3.掌握GROUP BY 子句的作用和使用方法;4.掌握HAVING子句的作用和使用方法;5.掌握ORDER BY子句的作用和使用方法。
数据库技术与应用SQL习题答案

实验2 SQL Server 数据库的管理4.启动查询分析器,在查询分析器中使用Transact-SQL语句CREATE DATABASE创建studb数据库。
然后通过系统存储过程sp_helpdb查看系统中的数据库信息CREATE DATABASE studbsp_helpdb5.在查询分析器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小文1MB。
ALTER DATABASE studbMODIFY FILE(NAME=studb,SIZE=5MB,MAXSIZE=20MB,FILEGROWTH=1MB)7.使用企业管理器将studb数据库的名称更改为student_db。
ALTER DATABASE studbMODIFY NAME=student_db8.使用Transact-SQL语句DROP DATABASE删除student_db数据库。
DROP DATABASE student_db实验3 SQL Server 数据表的管理5.使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade 表。
CREATE TABLE grade(学号 char(4),课程编号 char(4),分数 decimal(5))8.使用Transact_SQL语句INSERT INTO...VALUES向studentsdb数据库的grade表插入以下数据:学号课程编号分数0004 0001 80USE studentsdbGOINSERT INTO gradeVALUES('0004','0001','80')9.使用Transact_SQL语句ALTER TABLE修改curriculum表的“课程编号”列,使之为非空。
江西财经大学数据库习题八答案

江西财经大学数据库习题八答案习题八第一题:(1)Public Sub 求z值()Dim x, y, z As Doublex = Val(InputBox("请输入x的值"))y = Val(InputBox("请输入y的值"))m = x - ySelect Case mCase Is < 0z = x + yCase Is = 0z = x * y * Sgn(y)Case Is > 0z = x / yEnd SelectDebug.Print "x=", xDebug.Print "y=", yDebug.Print "z=", zEnd Sub(2)Public Sub 求z的值()Dim x, y, z As Doublex = Val(InputBox("请输入x的值"))y = Val(InputBox("请输入y的值"))If x < y Thenz = x + yEnd IfIf x = y Thenz = x * y * Sgn(y)End IfIf x > y And y <> 0 Thenz = x / yEnd IfDebug.Print "x=", xDebug.Print "y=", yDebug.Print "z=", zEnd Sub(3)Public Sub 求z的值()Dim x, y, z As Doublex = Val(InputBox("请输入x的值")) y = Val(InputBox("请输入y的值")) If x < y Thenz = x + yElseIf x = y Thenz = x * y * Sgn(y)ElseIf x > y & y = 0 Thenz = x / yEnd IfDebug.Print "x=", xDebug.Print "y=", yDebug.Print "z=", zEnd Sub第二题:Public Sub 求一元二次方程()Dim A, B, C As DoubleA = Val(InputBox("请输入A的值"))B = Val(InputBox("请输入B的值"))C = Val(InputBox("请输入C的值"))D = B ^ 2 - 4 * A * CIf D = 0 Thenx1 = (-B + Sqr(B ^ 2 - 4 * A * C)) / 2 * A x2 = (-B + Sqr(B ^ 2 - 4 * A * C)) / 2 * A End IfIf D > 0 Thenx1 = (-B + Sqr(B ^ 2 - 4 * A * C)) / 2 * A x2 = (-B - Sqr(B ^ 2 - 4 * A * C)) / 2 * A End IfIf D < 0 ThenDebug.Print "此方程无实解"End IfDebug.Print "A=", ADebug.Print "B=", BDebug.Print "C", CDebug.Print "x1=", x1Debug.Print "x2=", x2End Sub第三题:Public Sub 今天的日期()Dim d As Integerd = InputBox("请输入今天的日期")If d = "0" ThenMsgBox ("今天是周日")End IfIf d = "1" ThenMsgBox ("今天是周一")End IfIf d = "2" ThenMsgBox ("今天是周二")End IfIf d = "3" ThenMsgBox ("今天是周三")End IfIf d = "4" ThenMsgBox ("今天是周四")End IfIf d = "5" ThenMsgBox ("今天是周五")End IfIf d = "6" ThenMsgBox ("今天是周六")End IfIf d < 0 Or d > 6 ThenDebug.Print "输入数据错误"End IfDebug.Print "d="; dEnd Sub第四题:Public Sub 计算行李费用()Dim A, w, s, p As DoubleA = Val(InputBox("请输入a的值"))w = Val(InputBox("请输入w的值"))s = Val(InputBox("请输入s的值"))If (A > 18 And w < 20) Or (A < 18 And w < 10) Then p = 0 End IfIf (A >= 18 And w > 20) And (s Mod 100 <> 0) Thenp = 0.2 * (w - 20) * (Int((s / 100)) + 1)End IfIf (A >= 18 And w > 20) And (s Mod 100 = 0) Thenp = 0.2 * (w - 20) * (s / 100)End IfIf (0 < A < 18 And w > 10) And (s Mod 100 <> 0) Then p = 0.2 * (w - 10) * (Int((s / 100)) + 1)End IfIf (0 < A < 18 And w > 10) And (s Mod 100 = 0) Then p = 0.2 * (w - 10) * (s / 100)End IfDebug.Print "a=", ADebug.Print "w=", wDebug.Print "s=", sDebug.Print "p=", pEnd Sub第五题:(1)求1+(1+2)+......(1+2+3 (10)Public Sub sum_example()Dim i, s As Integers = 0i = 1Do While i < 11s = s + (i * (i + 1)) / 2i = i + 1LoopDebug.Print "s=", sEnd Sub(2)求1!+2!+ (10)Public Sub sum_example()Dim i, s, t As Doubles = 0i = 1t = 1Do While i < 11s = s + ti = i + 1t = i * tLoopDebug.Print "s=", sEnd Sub第六题:Public Sub 找数()Dim s, n As StringDim i As Integern = 0For i = 100 To 200If (i Mod 3 = 0) And (i Mod 5 = 0) Then n = n + 1s = s & Str(i)End IfNext iDebug.Print "n=", nDebug.Print "s", sEnd Sub第七题:(1)Public Sub 三角状星型输出()Dim i, j As IntegerFor i = 1 To 10Debug.PrintNextFor i = 1 To 4Debug.Print Tab(20); "*";For j = 1 To 2 * i - 2Debug.Print "*";Next jDebug.PrintNext iEnd Sub(2)Public Sub 三角状星型输出3()Dim i, j As IntegerFor i = 1 To 10Debug.PrintNextFor i = 1 To 4Debug.Print Tab(20 - 2 * i); "*"; For j = 1 To 2 * i - 2 Debug.Print "*";Next jDebug.PrintNext iEnd Sub(3)Public Sub 三角状星型输出4()Dim i, j As IntegerFor i = 1 To 10Debug.PrintNextFor i = 1 To 5Debug.Print Tab(20 - i); "*";For j = 1 To 5Debug.Print "*";Next jDebug.PrintNext iEnd Sub第八题:Public Sub 评委得分()Dim a(1 To 10), s As DoubleDim i As Integers = 0For i = 1 To 10a(i) = Val(InputBox("请输入" & "a(" & i & ")")) Debug.Print "a(i)="; a(i)max = a(1)If a(i) > max Thenmax = a(i)End Ifmin = a(1)If a(i) < min Thenmin = a(i)End IfNextFor i = 1 To 10s = s + a(i)Nexts = s - max - minDebug.Print "s", sDebug.Print "s/8="; s / 8End Sub第九题:Public Sub 素数()Dim i, x, s As Integers = 0For x = 2 To 100For i = 2 To 50If x / i = Int(x / i) Then Exit For End IfNext iNext xIf Thens = s + xDebug.Print "s="; sEnd IfEnd SubPublic Sub 素数()Dim flag As BooleanDim i, x, s As Integers = 0For x = 2 To 100flag = tureFor i = 2 To Int(x / 2)If x / i = Int(x / i) Thenflag = FalseExit ForNext iIf flag Thens = s + xEnd IfNext xDebug.Print "s="; sEnd Sub第十题:Public Sub 水仙花数()Dim a, b, c, i As IntegerFor i = 0 To 999a = i \ 100 '百位上的数b = (i - a * 100) \ 10 '十位上的数c = i Mod 10 '个位上的数If a ^ 3 + b ^ 3 + c ^ 3 = i Then Debug.Print i End IfNext iEnd Sub第十一题:Public Sub sum_example()Dim s As DoubleDim a, b, t, i As Integer s = 0i = 1a = 2b = 1Do While i <= 20s = s + (a / b)t = aa = a + bb = ti = i + 1LoopDebug.Print "s=", sEnd Sub。
数据库实践教程答案sql

数据库实践教程答案sql在数据库实践教程中,学生需要通过编写SQL语句来操作数据库。
SQL(Structured Query Language)是一种用于管理关系数据库系统的语言,学习和掌握SQL语言非常重要。
首先,我们需要了解常用的SQL操作语句,如SELECT、INSERT、UPDATE和DELETE。
SELECT语句用于查询数据库中的数据,INSERT语句用于向数据库中插入新的数据,UPDATE语句用于更新数据库中的数据,DELETE语句用于删除数据库中的数据。
这些操作语句是数据库操作的基础。
在编写SQL语句时,我们需要考虑表的结构和关系。
在数据库中,数据是以表的形式存储的,每个表由多个列组成,每一列代表一个字段。
表之间可以通过外键来建立关联关系,这样可以更好地组织和管理数据。
在编写SQL语句时,我们需要根据表之间的关系来进行数据查询、插入、更新和删除操作。
此外,在编写SQL语句时,我们还需要注意SQL的语法规则。
SQL语句一般由关键字、函数、运算符和标点符号组成,关键字用来表示操作的类型,函数用来对数据进行计算和处理,运算符用来进行条件判断和逻辑运算。
正确地使用这些语法元素可以确保SQL语句的执行正确和高效。
在实践教程中,学生需要运用所学知识来编写SQL语句,实现对数据库中数据的查询、插入、更新和删除操作。
编写SQL语句需要综合运用SQL的基本操作语句、表的结构和关系以及SQL的语法规则。
总之,数据库实践教程是学生掌握SQL语言的重要阶段。
通过编写SQL语句来操作数据库,学生可以更好地理解数据库的工作原理和应用场景,提升对数据库的数据管理和处理能力。
编写SQL语句需要对SQL的基本操作语句、表的结构和关系以及SQL的语法规则进行综合运用,只有掌握了这些要点,才能编写出高效、准确的SQL语句。
江西财经大学数据库书上习题八答案

江西财经⼤学数据库书上习题⼋答案习题8解答2. 求程序运⾏结果题1)试写出下列程序运⾏结果Public Sub Fig1()Dim i As IntegerDebug.Print Tab(10); "*"For i = 1 To 5Debug.Print Tab(10 - i); "*"; Spc(i - 1); "*"; Spc(i - 1); "*" Next iFor i = 4 To 1 Step -1Debug.Print Tab(10 - i); "*"; Spc(i - 1); "*"; Spc(i - 1); "*" Next iDebug.Print Tab(10); "*"End Sub解答:***** * ** * ** * ** * ** * ** * ** * *****2)求下列程序运⾏结果Public Sub 作业2()Dim x, y, i As Doublex = 0: y = 0For i = 1 To 8If i Mod 2 <> 0 Thenx = x - iElsey = y + iEnd IfNextDebug.Print "i="; iDebug.Print "x="; xDebug.Print "y="; yEnd Sub解答:i= 9x=-16y= 203)求下列程序的运⾏结果Public Sub 作业3()Dim m, s, k As Doublem = 28s = 0k = 1Do While k <= Int(m / 2)If Int(m / k) = m / k ThenDebug.Print ks = s + kEnd Ifk = k + 1LoopDebug.Print "s="; sEnd Sub解答:124714s= 284)当n=10时,求下列程序运⾏结果Public Sub 作业4()Dim n, a1, a2, a3, i As Doublen = Val(InputBox("请输⼊n,要求n>=3")) If n <= 2 ThenExit SubEnd Ifa1 = 1a2 = 1Debug.Print a1; a2For i = 2 To n - 1a3 = a1 + a2a1 = a2a2 = a3Debug.Print a3 Next End Sub解答:1 123 5 8 13 21 34 55 3. 改错题1)程序改错,下⾯的每个程序均有两个错误,试调试修改正确。
数据库原理中SQL语句实验指导书及答案

实验四:管理SQL Server表数据一、实验目的熟悉数据表结构及使用特点;熟悉使用Management Stuio界面方式管理数据表数据;熟悉使用T-SQL语句管理数据表数据。
二、实验环境已安装SQL Server 2005 企业版的计算机(13台);具有局域网环境,有固定IP;三、实验学时2学时四、实验要求了解SQL Server数据表数据的管理方法;了解SQL Server数据类型;完成实验报告(部分题只需给出关键语句)。
五、实验内容及步骤以课本指定的数据库为例,并依据数据表的结构创建相对应的数据表(student、course、sc),请分别使用Management Stuio界面方式及T-SQL 语句实现进行以下操作:向各个数据表中插入如下记录:学生信息表(student)课程信息表(course)选课信息表(sc)insert into student.dbo.sc values('20051501','1',75)insert into student.dbo.course values('1','数据库','5',4)insert into student.dbo.student values('201015001','赵菁菁','女',23,'CS') 2.修改CS系姓名为“李勇”的学生姓名为“李咏”;update studentset Sname='李咏'where Sname='李勇'3.修改课程“数据处理”的学分为3学分;3.update courseset Ccredit=3where Cname ='数据处理'4.将选修课程“1”的同学成绩加5分;4.update scset Grade =Grade+5where Cno='1'5.将选修课程“大学英语”的同学成绩加5分;update scset Grade=Grade+5from course,scwhere o=o and ame='大学英语'6.将学号为“200515010”的学生信息重新设置为“王丹丹、女、20、MA”;update studentset Sname='王丹丹',Ssex='女',Sage=20,Sdept='MA'where Sno='200515010'7.修改借书证号为2005001的学生记录重新设置:名字为王婧婧、专业为信息管理、借书量增加5本;(因为无些相关的数据表帮无法实现)8.删除数据表student中无专业的学生记录;deletefrom studentwhere Sdept is null9.删除数据表student中计算机系年龄大于25的男同学的记录;deletefrom studentwhere Ssex='男' and Sage>25 and Sdept='CS'10.删除数据表course中学分低于1学分的课程信息;deletefrom coursewhere Ccredit<1实验五:数据库单表查询一、实验目的1.掌握SELECT语句的基本语法和查询条件表示方法;2.掌握查询条件表达式和使用方法;3.掌握GROUP BY 子句的作用和使用方法;4.掌握HAVING子句的作用和使用方法;5.掌握ORDER BY子句的作用和使用方法。
2022年江西财经大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷A(有答案)

2022年江西财经大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷A(有答案)一、填空题1、在SQL Server 2000中,某数据库用户User在此数据库中具有对T 表数据的查询和更改权限。
现要收回User对T表的数据更改权,下述是实现该功能的语句,请补全语句。
_____UPDATE ON T FROM User;2、SQL语言的数据定义功能包括______、______、______和______。
3、如图所示的关系R的候选码为;R中的函数依赖有;R属于范式。
一个关系R4、在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于______。
5、在RDBMS中,通过某种代价模型计算各种查询的执行代价。
在集中式数据库中,查询的执行开销主要包括______和______代价。
在多用户数据库中,还应考虑查询的内存代价开销。
6、数据库恢复是将数据库从______状态恢复到______的功能。
7、某事务从账户A转出资金并向账户B转入资金,此操作要么全做,要么全不做,为了保证该操作的完整,需要利用到事务性质中的_____性。
8、在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和______。
9、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是______________,系关系的外码是______________,学生关系的主码是______________,外码是______________。
10、数据仓库创建后,首先从______中抽取所需要的数据到数据准备区,在数据准备区中经过净化处理______,再加载到数据仓库中,最后根据用户的需求将数据发布到______。
二、判断题11、有出现并发操作时,才有可能出现死锁。
()12、标准SQL语言能用于所有类型的关系数据库系统。
()13、从计算机数据管理的角度看,信息就是数据,数据就是信息。
江西财经大学数据库实验13

学号
A2106
姓名
彭才
同组人
实验项目
实验地点
实验仪器台号
指导教师
实验日期及节次
年月日,第节
标签、命令按钮、文本框、单选框和复选框控件的使用。
(1)登陆毕博教学网站(http://210.35.204.159/);(2)选择“数据库应用”课程;(3)选择“按周编制的教学安排”后,再选择“第十二周”;(4)下载“实验”和“数据库样例”。
要求:使用三个文本框来接收方程系数a、b、c。如果无解则给出一个对话框(使用MsgBox函数),并将焦点重新设置到参数a的文本框。
使用两个文本框来输出求解得结果,此两个文本框的“可用”属性设置为“否”。
使用测试数据a=2,b=-4,c=-48,其解为x1=6,x2=-4进行测试。如下图所示。
(4)使用表格描述所有控件的实例名称及其所属类。
Opt
Lbl_Opt
(5)进入VBE环境,打开立即窗口,根据简化的Access对象模型,通过在立即窗口输入命令方法修改下列属性。
控件名称
修改属性
Lbl_Txt
“标题”属性修改为“姓名”
Txt
Value属性修改为“王改改”
Cmd
“标题”属性修改为“确定”
ChkLeabharlann “可用”属性修改为“否”Lbl_Chk
“标题”属性修改为“复选框”
(5)使用表格方式描述编写的事件代码。
(6)给出事件对应的代码。
使用截图方式,将第二部分实验过程记录。
1、编写一个DAO程序,在立即窗口输出成绩表中大于等于80分的学生学号、课程号和成绩。
使用文本框输入一门课程的课程号,使用列表框显示该课程所有选课的同学学号、所属班级、课程名及相应成绩,按所属班级排序输出。
SQL数据库实验和参考答案

SQL数据库实验和参考答案数据库实验和参考答案上机实验七1.声明⼀个字符串型的局部变量,并对其赋值:‘我的变量’,然后显⽰出此值。
declare @a char(10)set @a='我的变量'--select @a as 变量的值print @a2.编程实现如下功能:1)声明两个整形的局部变量:@i1和@i2,对@i1赋初值:10,@i2的值为:@i1乘以5,再显⽰@i2的结果值。
declare @i1 int,@i2 intset @i1=10set @i2=@i1*5print @i22)⽤While语句实现5000减1,减2,……⼀直减到50的计算,并显⽰最终的结果。
declare @sum int,@i intset @sum=5000set @i=1while(@i<=50)beginset @i=@i+1endprint @sum3)输出100以内的素数。
declare @i smallint,@jsmallint,@k smallintset @i=2while(@i<=100)beginset @k=0set @j=2while(@j<@i)beginif(@i%@j=0)beginset @j=@Iendset @j=@j+1endif @k=0print @Iset @i=@i+1end4)将字符数在20以内的字符串变量C的值逆序输出。
要求输出界⾯为:declare @i varchar(20),@j int,@k varchar(20)set @j=1set @k=''while @j<=len(@i)beginset @k=substring(@i,@j,1) set @j=@j+1endprint '字符串C的值:'+@iprint 'C的逆序字符串:'+@k5)从SC表中查询所有学⽣的选课成绩情况,分别统计各分数段⼈数,并输出统计结果。
江西财经大学09-10 数据库应用B 评分标准

江西财经大学09-10第一学期期末考试试卷评分标准参考试卷代码:03333 B 授课课时:2+2 考试用时:120分钟课程名称:数据库应用适用对象:本科选课班试卷命题人刘谦试卷审核人王正友一、SQL操作题1(按VFP在命令窗口时的操作,给出下列查询问题中SQL操作的正确命令。
每小题5分,共10分。
)【1】查询"会计学院"各班的名称、班主任及班级人数。
【2】查询身高在1米6以上女生有哪些人(学号,姓名,性别、身高、班级号,生源地及毕业学校)【1】SELECT 所在学院, 班级名称,班主任姓名,班级人数;FROM CLASS;WHERE 所在学院="会计学院"【2】SELECT 学号,姓名,性别,身高,班级号,生源地,毕业学校;WHERE身高>=160 AND性别="女"二、SQL操作题2(按VFP令。
每小题5分,共10分。
)【3】SELECT学号,姓名,性别, 出生日期,身高,生源地,毕业学校;FROM STUDENT;WHERE 班级号 IN;(SELECT班级号FROM STUDENT WHERE姓名="刘翔") Array【4】SELECT 身高,COUNT(*) AS 人数;FROM STUDENT;GROUP BY身高;ORDER BY人数 && ORDER BY 2三、SQL 操作题3(按VFP 在命令窗口时的操作,给出下列查询问题中SQL 操作的正确命令。
每小题5分,共10分。
)【5】按所在学院、同一学院按班主任姓名、同一班主任姓名按班级名次序,上述信息相同的情况下以学号次序列示全体学生的课程成绩(要求显示所在学院,班主任姓名,班级名称、学号,姓名,课程名,成绩及修课期)【6】查询与李海平同学不同班级的学生所得学分数的信息(成绩不及格的课程不能得学分),要求列示的信息包括班级名称、学号,姓名,累计学分。
江西财经大学:06-07第1学年-数据库应用期末考试A卷、B卷(含答案)

江西财经大学06-07第一学期期末考试试卷试卷代码:33014 A 授课课时:3+2课程名称:数据库应用适用对象:本科选课班一、单项选择题(下列各题从四个备选答案中选出一个正确答案的代号,写在答题纸相应位置处。
答案错选或未选者,该题不得分。
每小题1分,共18分)1.在有关数据库的概念中,若干记录的集合称为(D)A 文件B 字段C 数据项D 表2.在关系模型中,关系是指(A)A 连接B 投影C 选择D 筛选3.Visual Foxpro中数据库文件的扩展名为(B)A .dbfB .dbcC .sctD .cdx4.以下命令中,可以显示“信息”的是(C)A ? substr(“大学信息院”,5,3)B ? substr(“大学信息院”,5,6)C ? substr(“大学信息院”,5,4)D ? substr(“大学信息院”,3,6)5.假定x=8,执行命令?x=x+1后,结果是(D)A 9B 8C .T.D .F.6.表达式SPACE(0)的运算结果是(D)A .NULL.B 1C 0D ""7.下列表达式中,表达式返回结果为.F.的是(A)A " [信息] "$"管理信息系统"B AT("A", "BCD")C SUBSTR("计算机技术",3,2)D STR(4321,5)8.下面关于类、对象、属性和方法的叙述中,错误的是(D)A类是对一类相似对象的描述,这些对象具有相同种类的属性和方法B属性用于描述对象的状态,方法用于表示对象的行为C基于同一个类产生的两个对象可以分别设置自己的属性值D通过执行不同对象的同名方法,其结果必然是相同的9.下列哪个对象是容器(B)A 命令按钮B 页框C 列表框D 复选框10.为表单MyForm添加事件或方法代码,改变该表单中的控件Cmdl的Caption 属性的正确命令是(C)A Myform.THIS.Caption="最后一个"B THIS.Cmdl.Caption="最后一个"C THISFORM.Cmdl.Caption="最后一个"D THISFORMSET.Cmdl.Caption="最后一个11.CONTINUE命令必须与下列命令配对的是(C)A FINDB SEEKC LOCATED INDEX12.执行 LIST REST 命令后,正确说法的是(D)A 显示当前指针所指记录B 显示从第一条记录到当前指针所指记录C EOF()的值为 FD 显示从当前记录开始以下的所有记录13.设在当前表中有数学、英语、计算机和总分字段,都是N型,要将所有学生的各门成绩汇总后存入总分字段中,应当使用命令(A)A REPLACE ALL总分 WITH 数学+英语+计算机B REPLACE 总分 WITH 数学+英语+计算机 FOR ALLC REPLACE 总分 WITH 数学,英语,计算机D REPLACE 总分 WITH 数学+英语+计算机14.结构化程序设计的三种基本逻辑结构是(C)A 选择结构、循环结构和嵌套结构B 选择结构、循环结构和模块结构C 顺序结构、循环结构和选择结构D 顺序结构、循环结构和递归结构15.对于关系的描述中,正确的是(A)A 同一个关系中可以交换任意两列或者任意两行的数据B 同一个关系中允许存在完全相同的元组C 在一个关系中,关键字一定是其中的某个属性D 在一个关系中,同一行数据的数据类型通常是相同的16.假设表文件及其索引文件已经打开,为保证记录指针定位在物理记录号为1的记录上,应使用命令(B)A GO TOPB GO 1C GO BOF( )D SKIP 117. 非全屏幕编辑命令的是(D)A BROWSEB EDITC MODIFY STRUCD APPEND BLANK18.在Visual FoxPro中,要运行菜单文件menul.mpr,可以使用命令(B)A DO menulB DO menul.mprC DO MENU menulD RUN menul二、填充题(在下列各题标示的空缺处填充合适的内容,使其意义正确。
数据库SQL习题答案

第1章数据库系统概述二.1.答:该学校的教学管理E-R模型有以下实体:系、教师、学生、项目、课程。
各实体属性如下:系(系编号,系名,系主任)教师(教师编号,教师姓名,职称)学生(学号,姓名,性别,班号)项目(项目编号,名称,负责人)课程(课程编号,课程名,学分)各实体之间的联系如下:教师担任课程的1:n“任课”联系教师参加项目的n:m“参加”联系学生选修课程的n:m“选修”联系系、教师和学生之间的所属关系的1:m:n“领导”联系对应的E-R模型如图1.1所示。
图1.1 E-R图2.答:计算结果如下:R∪S R∩S R-S R╳T3.答:计算结果如下:R SσA=C (R S) A B C a b c A R.B S.B C a b d a b b c A R.B S.B C c b c a b b d a b e a c b d c b b c c b b c de acbbddebd4. 答:(1)它是2NF 。
因为R 的候选关键字为课程名,而“课程名→教师名”,“教师名→课程名”不成立,教师名→教师地址,所以课程名 t 教师地址,即存在非主属性教师地址对候选关键字课程名的传递函数依赖,因此R 不是3NF 。
又因为不存在非主属性对候选关键字的部分函数依赖,所以R 是2NF 。
(2)存在删除操作异常。
当删除某门课程时会删除不该删除的教师的有关信息。
(3)分解为高一级范式如下:R 1课程名 教师名 R2 W1 任我行 教师名 教师地址 W2 张三丰 任我行 D1 W3 郭靖 张三丰 D1 W4张三丰郭靖D2分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。
5.答: 令X=D ,X(0)=D 。
在F 中找出左边是D 子集的函数依赖,其结果是D →HG ,所以X(1)=X(0)HG=DGH ,显然有X(1)≠X(0)。
在F 中找出左边是DGH 子集的函数依赖,未找到,则X(2)=DGH 。
SQL数据库原理实验指导书及答案

SQL数据库原理实验指导书及答案数据库原理SQLServer实验指导书1数据库系统原理实验一、基本操作实验实验1:数据库的定义实验本实验的实验目的是要求学生熟练掌握和使用SQL、T-SQL、SQL Server Enterpriser Manager Server 创建数据库、表、索引和修改表结构,并学会使用SQL Server Query Analyzer,接收T-SQL语句和进行结果分析。
本实验的内容包括:l)创建数据库和查看数据库属性。
2)创建表、确定表的主码和约束条件,为主码建索引。
3)查看和修改表结构。
4)熟悉SQL Server Enterpriser Manager和 Query Analyzer工具的使用方法具体实验任务如下。
1.基本提作实验1)使用Enterpriser Manager建立图书读者数据库2)在Enterpriser Manager中查看图书读者数据库的属性,并进行修改,使之符合要求。
3)通过Enterpriser Manager,在建好了图书借阅数据库中建立图书、读者和借阅3个表,其结构为:图书(书号,类别,出版社,作者,书名,定价,版次);读者(编号,姓名,单位,性别,电话):借阅(书号,读者编号,借阅日期人)要求为属性选择合适的数据类型,定义每个表的主键,Allow Null(是否允许空值)和 Default Value(缺省值)等列级数据约柬。
4)在Enterpriser Manager建立图书、读者和借阅3个表的表级约束:每个表的PrimaryKey2(主键)约束;借阅表与图书表间、借阅表与读者表之间的FOREIGNKEY(外码)约柬,要求按语义先确定外码约束表达式,再通过操作予以实现;实现借阅表的书号和读者编号的UNIQUE(惟一性)约束;实现读者性别只能是“男”或“女”的check (检查)约束。
2.提高操作实验建立学生_课程库操作,在查询分析器中用SQL命令实现。
SQL数据库完整版答案.docx

1、T-SQL语言中,用什么关键字定义局部变量,用什么关键字给变量赋值。
(p52)答:使用DECLARE/declare关键字来定义局部变量;用SET/set和SELECT/select语句给变量赋值;2、自定义函数有几种?(p211)答:自定义函数有3种:标量值、内嵌表值、多语句表值3、局部变量以什么开头?全局变量以开头?答:局部变量是以@开头,全局变量是以@@开头;4、数据完整性包括哪几种?(pl79)答:数据完整性包括二种:完体完整性、域完整性、参照完整性;5、MS-SQL数据库中通常包含哪三类文件?(pll6)答:MS-SQL数据库通常包含着:主数据文件(.mdf) >次耍数据文件(・ndf)、事务日志文件(.ldf);6、MS-SQL数据控制语言中,使用什么关键字授予权限,使用什么关键字撤销权限?(p95)答:使用GRANT/grant关键字授予权限,使用REVOKE/revoke关键字撤销权限,使用DENY/deny关键字拒绝用户访问;7、DML触发器中,AFTER触发器和INSTEAD OF触发器有什么区别?(p235)答:(1) AFTER触发器只能在表上定义该类的触发器,并且只有执行INSERT,UPDATE和DELETE操作Z后,才会触发;(2) INSTEAD OF触发器该类型触发器不执行INSERT, UPDATE 和DELETE操作,而只是执行触发器木身;而且还可以在基于一个或多个基表的视图上定义;8、S QL SERVER中聚焦索引和非聚焦索引有什么区别?(pl69)答:聚集索引:该索引中键值的逻辑顺序决定了表中和应行的物理顺序,一个表中只能有一个聚集索引非聚集索引:该索引是数据表中行的物理顺序与索引键值的逻辑顺序不相同,仅指向表中数据,可以在表中定义,但其检测效率较低。
作为和数据表分离的对象操作,表中的每一列都有自己的自己的索引。
9、能够激活DML触发器的数据修改语句是使用INSERT\UPDATE\DELETE\SELECT 中明B个选项? UPDATE10、数据库备份的类型有哪几种?能够将数据恢复到某个时间点的备份设置是哪个?(P131)答:(1)数据库备份的类型有四种:完整数据备份、差异数据库备份、事务日志备份、文件和文件组备份;(2)能将数据库恢复到某个吋间点的备份设置是:事务日志备份;11 > SQL SERVER的登录账户信息保存在哪个系统数据库中?(pll7) 答:用户登录账户信息保存在master系统数据库中;12、语句INSERT SELECT语句有什么作用?(p92)答:(1) INSERT SELECT语句可以完成一次插入一个数据块的功能;(2)INSERT SELECT语句叮以把其他数据源的行添加到现有表中;复制表13、T-SQL语言的字符串常量是使用什么符号当作定界符?M答:字符串常量是使用’’单引号符号当作定界符;14、FOREIGN KEY约束定义了表之间的什么?(pl85)答:FOREIGN KEY约束定义对同一个表或另一个表屮具有PRIMARY KEY或UNIQUE约束的列的引用;(另一个答案):FOREIGN KEY约束定义了表之间的•个列或多列组合.15、域约束有哪几种?(pl79)答:域约束有:CHECK约束、DEFAULT约束。
数据库sql课后练习题及答案解析

数据库sql课后练习题及答案解析第一篇:数据库sql课后练习题及答案解析先创建下面三个表:(book表)(borrow表)(reader表)1)找出姓李的读者姓名(NAME)和所在单位(COMPANY)。
2)列出图书库中所有藏书的书名(BOOK_NAME)及出版单位(OUTPUT)。
3)查找“高等教育出版社”的所有图书名称(BOOK_NAME)及单价(PRICE),结果按单价降序排序。
4)查找价格介于10元和20元之间的图书种类(SORT),结果按出版单位(OUTPUT)和单价(PRICE)升序排序。
5)查找书名以”计算机”开头的所有图书和作者(WRITER)。
6)检索同时借阅了总编号(BOOK_ID)为112266和449901两本书的借书证号(READER_ID)。
##7)* 查找所有借了书的读者的姓名(NAME)及所在单位(COMPANY)。
8)* 找出李某所借所有图书的书名及借书日期(BORROW_DATE)。
9)* 无重复地查询2006年10月以后借书的读者借书证号(READER_ID)、姓名和单位。
##10)* 找出借阅了一书的借书证号。
11)找出与”赵正义”在同一天借书的读者姓名、所在单位及借书日期。
12)查询2006年7月以后没有借书的读者借书证号、姓名及单位。
#13)求”科学出版社”图书的最高单价、最低单价、平均单价。
##14)* 求”信息系”当前借阅图书的读者人次数。
#15)求出各个出版社图书的最高价格、最低价格和总册数。
#16)分别找出各单位当前借阅图书的读者人数及所在单位。
17)* 找出当前至少借阅了2本图书(大于等于2本)的读者姓名及其所在单位。
18)分别找出借书人次数多于1人次的单位及人次数。
19)找出藏书中各个出版单位的名称、每个出版社的书籍的总册数(每种可能有多册)、书的价值总额。
20)查询经济系是否还清所有图书。
如果已经还清,显示该系所有读者的姓名、所在单位和职称。
数据库应用B卷参考答案

数据库应⽤B卷参考答案江西财经⼤学07-08第⼀学期期末考试试卷试卷代码:33014 B 授课课时:3+2课程名称:数据库应⽤适⽤对象:本科选课班试卷命题⼈刘谦试卷审核⼈凌传繁⼀、SQL 操作题(按VFP 在命令窗⼝时的操作,给出下列查询问题中SQL 操作的正确命令。
每⼩题4分,共24分。
)已知⼀个图书管理信息系统,其数据表间约束如图1所⽰。
其中表 "借阅.DBF"中的字段"归还⽇期"当未归还图书时表⽰应还⽇期,当已还图书时表⽰还书时的⽇期。
图书管理相关数据库各表结构如下:读者.DBF读者编号(C,8),姓名(C,8),性别(C,2), ⾝份证号(C,18) ⼯作单位(C, 50) 借阅.DBF读者编号(C,8),图书编号(C,10),借阅⽇期(D),归还⽇期(D),是否归还(L) 图书.DBF图书编号(C,10),分类号(C,3),图书名称(C,50),作者姓名(C,8) ,出版社名(C,20), 出版号(C,17),单价(N,7,2),出版时间(D),⼊库时间(D),库存数量(N,4)图书分类.DBF分类号(C,3),分类名称(C,20)现设定该数据库已经打开,请⽤SQL 命令完成下列⽬标:1. 查询⼯作单位在"江西财经⼤学会计学院"且为⼥性读者的编号、姓名和⾝份证。
select 读者编号,姓名,性别,⾝份证号; from 读者;where 性别="⼥";图1:图书管理信息系统相关数据库and ⼯作单位="江西财经⼤学会计学院"2.查询借阅过图书数量超过10本的读者编号及其数量SELECT 读者编号,COUNT(*) AS 借阅数量;FROM 借阅;GROUP BY 读者编号 HAVING COUNT(*)>=103.查询2007年⼊库图书的总册数和总价值(单价*库存数量)SELECT COUNT(*) AS 总册数,SUM(单价*库存数量) as 总价值;FROM 图书;WHERE YEAR(⼊库时间)=20074. 按分类号列⽰所有图书主要信息(分类号、图书编号、图书名称、作者姓名、出版社名及出版时间),同种分类的图书按最新出版时间在前的顺序(降序)列⽰。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL三
1.select 读者编号,姓名,性别from 读者where 工作单位="江西财经大学国际学院"
1.select 读者编号,姓名,性别from 读者where 工作单位like "*国际学院*"
2.select 分类号,max(单价) as 最高价格,avg(单价) as 平均价格from 图书group by 分类号order by max(单价) desc
3.select * from 图书where 图书名称like "*Java*"
4.select 图书编号,出版时间,入库时间,图书名称from 图书where year(入库时间)>=1992 and year(入库时间)<=2000 order by 入库时间
5.select 分类号,sum(库存数量) as 库存总量from 图书group by 分类号
6.select 图书名称,作者姓名from 图书where 作者姓名like "张*" or 作者姓名like "王*"
SQL四
1.
select 读者编号,姓名,工作单位from 读者where 读者编号in (select 读者编号from 借阅where not 是否归还)
select distinct 读者.读者编号,姓名,工作单位from 读者,借阅
where 读者.读者编号=借阅.读者编号
and not 是否归还
2.
select c.图书编号,c.图书名称,借阅日期,归还日期
from 读者a,借阅b,图书c
where a.读者编号=b.读者编号
and b.图书编号=c.图书编号
and 姓名="马永强"
3.
select 图书名称,作者姓名,出版社名
from 图书a,图书分类b
where a.分类号=b.分类号
and 分类名称="文学类"
4.
select a.读者编号,姓名,图书名称,借阅日期,归还日期
from 读者a,借阅b,图书c
where a.读者编号=b.读者编号and b.图书编号=c.图书编号
and 工作单位="江西财经大学国际学院"
and not 是否归还
5.
select a.读者编号,姓名,图书名称,借阅日期,归还日期
from 读者a,借阅b,图书c
where a.读者编号=b.读者编号
and b.图书编号=c.图书编号
and 出版社名="清华大学出版社"
6.
select 分类名称,sum(库存数量) from 图书a,图书分类b where a.分类号=b.分类号group by b.分类号,分类名称
select a.读者编号,姓名,c.图书编号,图书名称,借阅日期
from 读者a,借阅b,图书c
where a.读者编号=b.读者编号
and b.图书编号=c.图书编号
and year(借阅日期) between 2005 and 2006
8.
select a.读者编号,姓名,sum(单价)
from 读者a,借阅b,图书c
where a.读者编号=b.读者编号and b.图书编号=c.图书编号
group by a.读者编号,姓名
having sum(单价)>=150
SQL五
1.
select 读者编号,姓名,工作单位
from 读者
where 读者编号in (select 读者编号from 借阅where not 是否归还)
2.
select 姓名from 读者where 读者编号not in (select 读者编号from 借阅)
3.
select 读者.读者编号,姓名,借阅.图书编号,图书名称FROM 图书,读者,借阅
WHERE 读者.读者编号=借阅.读者编号AND 图书.图书编号=借阅.图书编号
and 读者.读者编号in (select 读者编号from 借阅GROUP BY 读者编号HA VING COUNT(*)>=3) order by 读者.读者编号
4.
select 读者编号,姓名,工作单位
from 读者
where 读者编号in (select 读者编号from 借阅where not 是否归还)
4.
select distinct 读者.读者编号,姓名,工作单位
from 读者,借阅
where 读者.读者编号=借阅.读者编号
and not 是否归还
5.
select 读者编号,姓名
from 读者
where 读者编号not in (select 读者编号from 借阅a,图书b,图书分类c where a.图书编号=b.图书编号and b.分类号=c.分类号and 分类名称="管理类")
SQL六
1.
update 图书set 单价=单价+5 where 分类号=(select 分类号from 图书分类where 分类名称="计算机应用类")
update 借阅set 是否归还=true where 读者编号in (select 读者编号from 读者where 身份证号like "??????1987*")
3.
insert into 借阅values("06-00008","003-000024",#2007-3-25#,#2007-5-25#,false)
4.
delete from 借阅where year(借阅日期)=2006 and month(借阅日期)=8
5.
delete from 借阅where 读者编号=(select 读者编号from 读者where 姓名="欧阳思思")
6.
select 图书编号,图书名称,入库时间
from 图书
where 入库时间between [请输入入库时间下限] and [请输入入库时间上限]。