《网络数据库技术》实验指导书_第1页
《网络数据库技术》实验指导书_第2页
《网络数据库技术》实验指导书_第3页
《网络数据库技术》实验指导书_第4页
《网络数据库技术》实验指导书_第5页
已阅读5页,还剩30页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、网络数据库技术技术与应用课程课程编号:433011实 验 指 导 书主撰人: 王志和审核人:陈 刚经济与管理科学系电子商务教研室二一二年五月 目 录前 言1实验1熟悉Java编程环境和Java程序结构实验2实验2Java基本语法实验实验3面向对象编程实验实验4数组与字符串实验实验5异常处理机制实验实验6多线程实验实验7输入流/输出流类实验实验8图形用户界面及applet实验实验9网络编程实验前 言实验总体目标:网络数据库技术与应用是电子商务专业的专业必修课程。课程内容主要包括:数据模型、关系代数、关系数据库标准语言SQL、关系数据理论、数据库设计与编程、关系查询处理和查询优化和数据库的恢复与并

2、发技术。学习本课程的上机实验,使学生真正深层次了解数据库系统的体系结构,掌握数据库系统的基础理论、技术和方法,掌握主流数据库管理系统SQL Server的应用技术及数据库应用系统的设计、开发能力。适用专业年级:电子商务专业第四学期实验课时分配:16学时序号实验项目要求类型每组人数实验学时1常用数据库管理工具的使用必验证122数据库的管理和表操作必设计123SQL数据操作与查询必验证144Transact-SQL数据库编程必设计145数据库的管理与维护必验证126数据库应用开发必设计149网络编程实验必设计14实验环境Windows 2003,Microsoft SQL Server 2005。

3、实验总体要求通过本实验课程的教学,学生能基本上达到独立完成实验内容,通过老师的指导可完成设计性实验内容,能将相关内容应用到课程设计、毕业设计等实践性环节中。实验1 常用数据库管理工具的使用一、实验目的1理解服务的概念,掌握SQL Server服务的启动、暂停和停止。2熟悉SQL Server数据库结构,掌握企业管理器的基本操作。3理解查询分析器的作用,掌握查询分析器的常用用法。4掌握联机丛书的用法。二、实验内容与步骤1、服务管理器的用法SQL Server 是作为Windows 网络操作系统的一个服务运行的。通过设置,可以在启动操作系统时自动启动SQL Server,也可以远程启动和停止SQL

4、 Server。可以使用下列工具手工启动、暂停和停止SQL Server服务:l SQL Server企业管理器l SQL Server服务管理器l 控制面板中的“服务”在命令提示符中使用net命令net pause mssqlservernet continue mssqlservernet stop mssqlserver其中,服务管理器是最常用的图形界面工具。实验要求1:使用SQL Server服务管理器查看SQL Server服务是否正在运行,若正在运行,将其停止。实验要求2:使用控制面板中的“服务”管理控制台将已停止的SQL Server服务启动。2、企业管理器的使用企业管理器是SQ

5、L Server提供的最主要的数据库管理图形界面工具,它以树形结构来组织数据库服务器、数据库和数据库中的对象,大部分的数据库管理工作都可以使用它来完成。实验要求3:启动企业管理器,查看SQL Server的注册属性。提示:启动企业管理器后,在控制台树中,展开“Microsoft SQL Servers”,然后展开“SQL Server组”,右击自己的服务器名,然后单击“编辑SQL Server注册属性”。实验要求4:在企业管理器中,查看Northwind数据库中用户数据表和系统数据表各有多少个?13,193、查询分析器的使用查询分析器是图形化的数据库编程接口,用户可以以自由的文本格式编辑、调试

6、和执行SQL脚本。实验要求5:在查询分析器中,使用SQL语句在master数据库中查询sysobjects表的所有信息。提示:首先,启动查询分析器,在查询分析器的查询窗口中输入如下的SQL语句:select * from sysobjects然后,单击工具栏中的“执行查询”按钮。实验要求6:在查询分析器中,使用SQL语句查询Northwind数据库中的Employees表的所有信息。select * from Northwind.Employees4、联机丛书的使用联机丛书中包含所有SQL Server2000的使用说明。在本课程的学习中,各位同学应该掌握联机丛书的使用。实验要求7:打开联机丛

7、书,在目录中展开“安装SQL Server”,查看有关SQL Server 2000 的硬件和软件安装要求。实验要求8:打开联机丛书,在索引中查找有关sp_help存储过程的帮助信息。四、思考题可以在一台计算机中注册多个命名实例和服务器,现在若需要将18号机器的SQL Server服务注册到本地企业管理器中来,应该怎么做?实验2 数据库的管理和表操作一、实验目的1掌握使用企业管理器和T-SQL语言创建SQL Server数据库的方法。2掌握附加和分离数据库的方法。3掌握使用企业管理器或存储过程查看SQL数据库属性的方法。4熟悉数据库的收缩、更名和删除。5掌握使用企业管理器或sp_dboptio

8、n存储过程修改数据库选项的方法。6掌握使用企业管理器和T-SQL语句创建表、修改表的结构。7掌握使用企业管理器和T-SQL语句实现对数据的操作。二、实验内容与步骤1、使用向导创建数据库实验内容1:创建一个名为TestData0的数据库,数据文件的初始大小设为20MB,文件增长增量设为5MB,文件增长方式设为自动增长,文件的增长上限设为500MB;日志文件的初始大小为20MB,文件增长增量设为1MB,文件的增长限制设为100MB。CREATE DATABASE TestData0ON ( NAME = TestData0, FILENAME ='d:TestDBTestData0.mdf

9、', SIZE = 20, MAXSIZE = 500, FILEGROWTH = 5 )LOG ON( NAME =TestLog0, FILENAME = 'd:TestDBTestLog0.ldf', SIZE = 20, MAXSIZE = 100, FILEGROWTH = 1 )2、用企业管理器创建数据库实验内容2:使用SQL Server企业管理器创建一个数据库,具体要求如下:l数据库名称为Test。l主要数据文件:逻辑文件名为TestData1,物理文件名为TestData1.mdf,初始容量为1MB,最大容量为10MB,递增量为1MB。l次要数据文件:

10、逻辑文件名为TestData2,物理文件名为TestData2.ndf,初始容量为1MB,最大容量为10MB,递增量为1MB。l事务日志文件:逻辑文件名为TestLog1,物理文件名为TestLog1.ldf,初始容量为1MB,大容量为5MB,递增量为512KB。 CREATE DATABASE TestON ( NAME = TestData1, FILENAME ='d:TestDBTestData1.mdf', SIZE = 1, MAXSIZE = 10, FILEGROWTH = 1 ),( NAME = TestData2, FILENAME ='d:Tes

11、tDBTestData2.ndf', SIZE = 1, MAXSIZE = 10, FILEGROWTH = 1 )LOG ON( NAME =TestLog1, FILENAME = 'd:TestDBTestLog1.ldf', SIZE = 1, MAXSIZE = 5, FILEGROWTH = 512KB )3、用T-SQL语言创建数据库实验内容3:使用查询分析器新建一个数据库,名称为“图书”,其主要数据文件大小为2M,最大文件大小为10M,每次增长2M;次要数据文件大小为1M;日志文件大小为1M;三个文件的文件名自定,上述没有说明的选项都采用默认值。提示:

12、在查询分析器中输入如下SQL脚本:CREATE DATABASE 图书ON ( NAME = data1, FILENAME = 'd:TestDBdata1.mdf', SIZE = 2, MAXSIZE = 10, FILEGROWTH = 2 ),( NAME =data2, FILENAME = 'd:TestDBdata2.ndf', SIZE = 1 )LOG ON( NAME =log, FILENAME = 'd:TestDBlog.ldf', SIZE = 1 )实验内容4:用T-SQL语句创建一个名为student的数据库,它

13、由5MB的主数据文件、2MB的次数据文件和1MB的日志文件组成。并且主数据文件以2MB的增长速度增长,其最大容量为15MB;次数据文件以10%的增长速度增长,其最大容量为10MB;事务日志文件以1MB增长速度增长,其最大日志文件大小为10MB。提示:在查询分析器中输入如下SQL脚本:CREATE DATABASE studentOn( name=student1,filename= 'd:TestDBstudent_data1.mdf',size=5,maxsize=15,filegrowth=2),( name=student2,filename='d:TestDBs

14、tudent_data2.ndf',size=2,maxsize=10,filegrowth=10%)log on( name=student_log,filename='d:TestDBstudent_log.ldf',size=1,maxsize=10,filegrowth=1)4、数据库的分离与附加实验内容5:将“图书”数据库与服务器分离。可以使用企业管理器或SQL语言对数据库进行分离的操作。分离数据库的存储过程是sp_detach_db。sp_detach_db 图书实验内容6:将已分离的“图书”数据库附加到服务器上。可以使用企业管理器或SQL语言对数据库进行附

15、加的操作。附加数据库的存储过程是sp_attach_db。sp_attach_db 图书,'d:TestDBstudent_data1.mdf','d:TestDBstudent_data2.ndf','d:TestDBstudent_log.ldf'5、查看和修改数据库属性可以使用企业管理器或SQL语言来查看或修改数据库的属性。使用企业管理器的方法是右击数据库名称,在快捷菜单中选择“属性”,然后数据库属性对话框中就可以查看或修改数据库的属性。也可以使用sp_helpdb、sp_spaceused、sp_helpfile和sp_helpfileg

16、roup等存储过程查看和数据库有关的属性。修改数据库属性可以使用ALTER DATABASE命令。实验内容7:使用sp_helpdb存储过程查看student数据库的信息,然后企业管理器将student数据库的事务日志文件的增长大小改为按1MB字节增长,再使用sp_helpdb存储过程查看student数据库的信息。sp_helpdb student实验内容8:使用ALTER DATABASE命令为student数据库添加一个新的数据文件,文件逻辑名为student_data3,初始大小为2MB,增长值为1MB,其他属性默认。ALTER DATABASE studentADD FILE( na

17、me=student_data3, filename='d:TestDBstudent_data3.ndf', size=2,filegrowth=1)ALTER DATABASE studentremove FILE student_data36、数据库的收缩数据库收缩可以缩小数据库的空闲空间。可以使用企业管理器或SQL语言对数据库进行收缩工作。收缩数据库使用的SQL语言是DBCC SHRINKDATABASE命令。也可以使用ALTER DATABASE的SET子句或sp_dboption将数据库设为自动收缩。DBCC SHRINKDATABASE(student)实验内容9

18、:将student数据库设为自动收缩。sp_dboption N'student', N'autoshrink', N'true'7、数据库的更名更改数据库的名称应使用sp_renamedb存储过程。实验内容10:将student数据库改名为stu。sp_rename 'student', 'stu'8、数据库选项的配置可以使用 ALTER DATABASE 语句的 SET 子句、sp_dboption 系统存储过程,或者在某些情况下使用 SQL Server 企业管理器设置数据库选项。实验内容11:使用企业管理器

19、将stu数据库设为只读。 实验内容12:使用sp_dboption存储过程取消stu数据库的只读设置。sp_dboption N'student', N'read only', N'true9、数据库的删除删除数据库可以使用企业管理器或DROP DATABASE命令。实验内容13:使用DROP DATABASE命令将stu数据库删除。DROP DATABASE stu10、使用企业管理器按下表结构创建表表名:Course属性名称属性描述数据类型字节数空否备注CourseID课程号int4否主键,标识列CourseName课程名称varchar20否Cat

20、egory课程类别char8Period学时数smallint2Credit学分tinyint1表名:ClassInfo属性名称属性描述数据类型字节数空否备注ClassID班级号int4否ClassName班级名称varchar20否11、使用T-SQL语句按下表结构创建表表名:Student属性名称属性描述数据类型字节数空否备注StudentNum学号char9否主键StudentName姓名varchar8否Sex性别bit1Birthday出生日期smalldatetime4ClassID班级号int4CREATE TABLE student ( StudentNum char(9) N

21、OT NULL PRIMARY KEY, StudentName varchar(8) NOT NULL, Sex bit, Birthday smalldatetime, ClassID int )12、使用企业管理器修改表的结构使用企业管理器将第1题所建立的Course表中的Category字段修改为varchar(20),为Period和Credit字段默认值为0。13、使用T-SQL语句修改表的结构使用T-SQL语句为Student表添加Nation(民族)字段和Stature(身高)字段,字段数据类型自定。ALTER TABLE StudentADD Nation varchar(8

22、),Stature intDrop column Nation,Stature14、使用企业管理器实现对数据的操作使用企业管理器按下表向Course添加数据。课程号课程名称课程类别学时数学分1哲学公共 3622实用英语(1)公共 7233实用英语(2)公共 7234计算机应用基础公共 10255C语言程序设计专业基础10256关系数据库技术基础专业基础1025四、思考题1.一个数据库中包含哪几种文件?2.事务日志文件的大小一般为数据文件大小的多少合适?3.若需修改数据库文件的大小,可以使用的方法有哪些?若要求使用T-SQL语言,则命令应如何编写?4.能不能删除master数据库?若一个用户数据

23、库当前正在被访问,能不能被删除?实验3 SQL数据操作与查询实验一、实验目的1了解T-SQL语句的基本语法。2掌握基本的SELECT语句的设计和编写。3掌握多表查询的使用。4熟悉UNION子句的使用。5掌握GROUP BY子句的使用。6练习使用企业管理器、向导和查询分析器创建视图。7会使用视图、修改视图、查询视图的信息和删除视图。8进一步掌握使用T-SQL语句实现对数据的操作。二、实验内容与步骤利用上次实验所创建的student数据库进行实验。1、使用T-SQL语句实现对数据的操作(1)使用INSERT语句向Course表中添加记录:(计算机网络,专业基础,72,4)insert Course

24、(CourseName,Category,Period,Credit) values('计算机网络','专业基础','72','4')(2)使用UPDATE语句将Course表中的“计算机应用基础”课的学时数改为106。update Course set Period='106' where CourseName='计算机应用基础'(3)使用DELETE语句将Course表中的公共课全部删除。DELETE FROM Course where Category='公共'2、使用T-SQ

25、L语句按下表结构创建表(在创建表时定义约束)表名:Grade属性名称属性描述数据类型字节数空否约束备注StudentNum学号char9否主键CourseID课程号int4否主键DailyGrade平时成绩decimal5,1不小于0且不大于20PracticeGrade实践成绩decimal5,1不小于0且不大于30TestGrade期末成绩decimal5,1不小于0且不大于50Grade总评由平时成绩(20%)、实践成绩(30%)和期末成绩(50%)计算而来create table Grade( StudentNumchar(9) not null, CourseIDint not nu

26、ll, DailyGradedecimal(5,1), PracticeGradedecimal(5,1), TestGradedecimal(5,1), Grade as DailyGrade*0.20+ PracticeGrade*0.30+ TestGrade*0.50 constraint pk_sc primary key(StudentNum,CourseID) , constraint ck_dg check(DailyGrade>0 and DailyGrade<20), constraint ck_pg check(PracticeGrade>0 and P

27、racticeGrade<30), constraint ck_tg check(TestGrade>0 and TestGrade<50) )3、使用T-SQL语句修改表的结构(1)为班级表ClassInfo添加入学时间EnrollDate字段,并定义入学时间不小于2001年9月1日。alter table ClassInfo Add EnrollDate datetime,check (EnrollDate >= '2001-9-1')(2)为班级表ClassInfo定义主键约束,定义班级号ClassID为主键。alter table ClassIn

28、fo add constraint pk_ClassInfo primary key(ClassID)4、使用企业管理器定义约束(1)为学生表Student定义外键约束,使ClassID参照班级表ClassInfo中的ClassID,并为约束设置级联更新。(2)为班级表ClassInfo的ClassName定义唯一约束。5、 默认值对象的创建与使用(1)使用T-SQL语句创建名为DF_GRADE的默认值对象,值为0。CREATE DEFAULT DF_GRADE AS 0(2)使用企业管理器将DF_GRADE绑定到成绩表Grade中的DailyGrade、PracticeGrade和TestG

29、rade字段上。exec sp_bindefault DF_GRADE,'Grade.DailyGrade'exec sp_bindefault DF_GRADE,'Grade.PracticeGrade'exec sp_bindefault DF_GRADE,'Grade.TestGrade'(3)使用sp_unbindefault存储过程将DF_GRADE从DailyGrade、PracticeGrade和TestGrade字段上解除。exec sp_unbindefault 'Grade.DailyGrade'exec sp

30、_unbindefault 'Grade.PracticeGrade'exec sp_unbindefault 'Grade.TestGrade'(4)删除DF_GRADE默认值对象。DROP DEFAULT DF_GRADE在查询分析器在窗口下用SELECT语句完成单表查询:5、SELECT语句的基本使用 查询学生基本信息表中的每个学生的所有数据。Select * from stud_info 在学生基本信息表中查询每个学生的地址和电话。Select address,telcode from stud_info 查询学号为“0401010634”的学生的地址和

31、电话。Select address,telcode from stud_info where stud_id='0401010634' 查询stud_info表中性别为“女”的学生的地址和电话。使用AS子句将结果中指定目标列的标题分别指定为地址,电话。Select address as 地址,telcode as 电话 from stud_info where gender=N'女' 查询计算机应用教研室“0101”的教师工资情况。Select name,salary from teacher_info where jysh_id='0101'

32、找出所有姓“王”的教师所对应的技术职称。Select name,tech_title from teacher_info where name like '王%' 在学生成绩表中查询成绩在8089之间的学生的学号、课程号和成绩。Select stud_id,course_id,grade from stud_grade where grade between 80 and 896、子查询的使用 查找在计算机工程系“01”工作的教师的情况。Select * from teacher_info where jysh_id in (select jysh_id from staffr

33、oom_info where deptcode='01') 查找计算机工程系“01”中所有担任多媒体技术“0401010106”的教师编号和姓名。Select teacher_id,name from teacher_info where jysh_id in (select jysh_id from staffroom_info where deptcode='01') and course_id='0401010106' 查找计算机应用技术专业的学生学号、姓名、年龄、电话号码及其家庭地址。Select stud_id,name,year(ge

34、tdate()-year(birthday) age,telcode,address from stud_info where speccode =(select speccode from specialty_code where specname='计算机应用技术')7、连接查询的使用 在stud_info与stud_grade中按stud_id进行等值内连接,以查询所有参加考试的学生基本信息和成绩。Select a.*,b.grade from stud_info a inner join stud_grade b On a.stud_id=b.stud_id 实现tea

35、cher_info左外连接lesson_info。Select * from teacher_info a left outer join lesson_info b On a.course_id=b.course_id8、数据汇总 查询全体教师的平均工资。Select avg(salary) from teacher_info 求计算机工程系“01”教师的平均年龄。Select avg(age) from teacher_info where jysh_id in(select jysh_id from staffroom_info where deptcode='01')

36、求计算机工程系“01”教师的总人数。Select count(*) from teacher_info where jysh_id in(select jysh_id from staffroom_info where deptcode='01')9、GROUP BY、ORDER BY子句的使用 按职称统计各个教研室的教师人数。Select jysh_id,count(*) from teacher_info group by jysh_id 将计算机工程系“01”职称为“讲师”的教师,按年龄由低到高排列。Select * from teacher_info where jys

37、h_id in(select jysh_id from staffroom_info where deptcode='01') order by age 10、熟悉pubs数据库中的三个用户表:employee(emp_id,fname,minit,lname,job_id,job_lvl,pub_id,hire_date),job(job_id,job_desc,min_lvl,max_lvl),publishers(pub_id,pub_name,city,state,country)。他们分别是关于雇员、职务和出版社的基本表。11、在查询分析器在窗口下用SELECT语句完

38、成单表查询: 查询全体出版社的详细记录;Select * from publishers 查询所有工作的job_id为7的职工的职工编号;Select emp_id from employee where job_id=7 查询工作的job_id小于7的职工的职工编号;Select emp_id from employee where job_id<7 查询在Germany和France的出版社的名字和所在城市;Select pub_name,city from publishers where country='Germany' or country='Fran

39、ce' 查询lastname为Jablonski的雇员的firstname、job_id和hire_date;Select emp_id from employee where job_id<7 查询lastname的前两个字符为cr的职员的编号和firstname;select emp_id,fname from employee where lname like 'cr%' 查询job_id为5的职员的编号和job_lvl,查询结果按job_lvl的降序排列;select emp_id,job_lvl from employee where job_id=5

40、order by job_lvl desc 查询job_id为13的职员中job_lvl最高的职员的firstname 和lastname。select top 1 fname,lname from employee where job_id=13 order by job_lvl desc12、在查询分析器在窗口下用SELECT语句完成连接(嵌套)查询: 查询各个工作号与相应的工作人数;select job_id,count(*) from employee group by job_id 查询每个职工及其工作的描述(job_desc)的情况;select employee.*,job_de

41、sc from employee inner join jobs on employee.job_id = jobs.job_id 查询每个职工及其工作职务名其及所在出版社的名字;select a.*,b.job_desc,c.pub_name from employee a inner join jobs b on a.job_id = b.job_id inner join publishers con a.pub_id = c.pub_id 查询与“Annette”(firstname)在同一个出版社工作的职工的firstname;select fname from employee w

42、here pub_id=(select pub_id from employee where fname='Annette') 查询在美国工作的员工中工作职务为Editor的员工的fname 和lname;select fname,lname from employee where job_id=(select job_id from jobs where job_desc='Editor' )and pub_id in (select pub_id from publishers where country='USA' ) 查询在New Moo

43、n Books这个出版社工作的员工中job_lvl大于100的职工的姓名和其所作工作的描述;select a.fname,a.lname,b.job_desc from employee a inner join jobs bon a.job_id=b.job_id where job_lvl>100 and pub_id in(select pub_id from publishers where pub_name='New Moon Books' )13、在查询分析器在窗口下用SELECT语句完成集合查询:查询job_id为5和job_id为6的职工的姓名和职工所在出

44、版社的名字。select a.*,b.pub_name from employee a inner join publishers bon a.pub_id=b.pub_id where job_id=5 or job_id=614、使用企业管理器创建一个名为“view_1”的视图,内容是显示学生表Student中计算机应用技术“040101”的学生的学号、姓名和性别。create view view_1 As select stud_id,name,gender from stud_info where speccode='040101'15、使用查询分析器创建一个名为“vi

45、ew_2”的视图,内容是显示学生表中没有选修课程的学生的学号、姓名和班级,并且为该视图加密。create view view_2 with encryption As select stud_id,name,speccode from stud_info where stud_id not in(select stud_id from stud_grade)16、使用查询分析器修改名为“view_1”的视图,内容修改为显示学生表中男生的学号、姓名、性别和专业代码,并且以后所有对该视图的更新操作都必须符合所设定的条件。alter view view_1 As select stud_id,nam

46、e,gender,speccode from stud_infowhere gender=N'男' with check option16、查询视图“view_1”中专业代码为040102的学生所有信息。select * from view_1 where speccode='040102'17、向视图“view_1”中的所有字段插入一条记录。insert view_1 values('0402010999','李四','男','040201')实验4 Transact-SQL数据库编程实验一、实验

47、目的1掌握Transact-SQL的基础知识。2掌握流程控制语句和功能性语句的格式及应用。3掌握存储过程和触发器的应用。二、实验内容与步骤在查询分析器在窗口下用T-SQL语句完成下列操作:1、从数据表stud_info中,查找学号为0401030213的学生,找到则显示:“您好!XX同学”,否则显示“未找到”。if exists (select * from stud_info where stud_id='0401030213')print '您好!XX同学'elseprint '未找到' 2、从数据库teacher_info中,选取teach

48、er_id、name、gender,如果gender为“女”则输出“女士”,如果为“男”则输出“先生”。SELECT teacher_id,name,sex=CASE gender WHEN N'男' THEN N'先生' WHEN N'女' THEN N'女士' ELSE '未知' END from teacher_info3、计算1100之间所有能被3整除的数的个数及总和。declare x int,s intset x=3set s=0while (x<100) begin set s=s+x set

49、x=x+3 endprint s4、计算s=1!+2!+10!。declare n int,s int,i int,st intset n=1set s=0while (n<=10) begin set i=1 set st=1 while (i<=n) begin set st=st*i set i=i+1 end set s=s+st set n=n+1 endprint s5、输出字符串“School”中每一个字符的ASCII值和字符。declare pos int,str char(6),len int,ch char(1)set pos=1set str='Sch

50、ool'set len=datalength(str)while pos<=lenbegin set ch=substring(str,pos,1) select ch ascchar,ascii(ch) asccode set pos=pos+1end6、从stud_grad表中查询所有同学考试成绩情况,凡成绩为空者输出“未考”,小于60分输出“不及格”,60分(含60分)至70分输出“及格”,70分(含70分)至80分输出“良好”,大于等于80分输出“优秀”。select stud_id,score=case when grade is null then '未考&#

51、39; when grade<60 then '不及格' when grade<70 then '及格' when grade<80 then '良好' when grade>=80 then '优秀' endfrom stud_grade7、查询pubs数据库的employee表,如果表中雇员的平均服务时间长于10年,则打印信息:我们的雇员都很忠诚:),否则打印信息:我们的雇员经常跳槽:(。use pubsgoif (select avg( datediff(year,hire_date,getdate(

52、) ) from employee) > 10 print '我们的雇员都很忠诚:)'else print '我们的雇员经常跳槽:('8、查询pubs数据库中employee表,显示相关雇员信息(id,姓名,服务时间等),其中增加一个雇员类型列:如果雇佣时间长于12年,则显示他为新雇员,否则显示他为老雇员。use pubsgoselect Emp_ID, LName + '.' + FName '姓名', datediff(year,hire_date,getdate() as 'age' , '雇员

53、类型' = case when datediff(year,hire_date,getdate() < 12 then '新雇员' when datediff(year,hire_date,getdate() >= 12 then '老雇员' endFrom employeeOrder by age9、创建一个名为“proc_1”的存储过程,用于查看学生表的所有信息。然后调用该存储过程。create procedure proc_1as select * from stud_info10、创建一个名为“proc_2”的存储过程,用于向学生表的

54、所有字段添加一条记录,记录内容由调用时决定。然后调用该存储过程。CREATE PROCEDURE proc_2 (stud_id_1 char(10), name_2 nvarchar(4), birthday_3 datetime, gender_4 nchar(1), address_5 nvarchar(20), telcode_6 char(12), zipcode_7 char(6), mark_8 decimal, speccode_9 char(6)AS INSERT INTO stud_info( stud_id,name,birthday,gender,address,tel

55、code, zipcode,mark,speccode) VALUES ( stud_id_1,name_2,birthday_3,gender_4,address_5, telcode_6,zipcode_7,mark_8,speccode_9)11、创建一个名为“proc_3”的存储过程,用于删除学生表中指定学号的记录,具体学号由调用时决定。然后调用该存储过程。CREATE PROCEDURE proc_3 stud_id_1 char(10)AS DELETE FROM stud_info WHERE stud_id=stud_id_112、修改存储过程“proc_4”,用于查询不小于指定成绩的学生的基本信息,具体成绩由调用时决定。create procedure proc_4 grade_1 decimal(4,1)as select * from stud_info where stud_id in(select stud_id from stud_grade where grade>=grade_1) 13、创建一个名为“proc_5”的存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论