SQL实用教程(第四版)实验五T-SQL编程

SQL实用教程(第四版)实验五T-SQL编程

南昌大学实验报告

学生姓名:廖美君学号: 8002213113 专业班级:

实验类型:□ 验证□ 综合□ 设计□ 创新实验日期: 2021-5-9

一、实验项目名称

T-SQL编程

二、实验目的与要求

1、进一步巩固前面所学知识

2、掌握用户自定义类型的使用

3、掌握变量的分类及使用

4、掌握各种运算符的使用

5、掌握各种控制语句的使用

6、掌握系统函数及用户自定义函数的使用

三、实验基本原理

1、了解T-SQL支持的各种基本数据类型

2、了解自定义数据使用的一般步骤

3、了解T-SQL各种运算符、控制语句的功能及使用方法

4、了解系统函数的调用方法

5、了解用户自定义函数使用的一般步骤

四、主要仪器设备及耗材

1

计算机,MS SQL Server 2021,OFFICE

五、实验步骤

1、自定义数据类型的使用

(1)定义一数据类型ID_type,用于描述员工编号 SQL语句: USE 廖美君

EXEC sp_addtype 'ID_type', 'nchar(6)','not null' GO

实验结果:

图5-1定义一数据类型ID_type

思考与练习:

a)使用界面方式创建一个用户自定义类型

2

图5-2使用界面方式创建用户自定义类型过程(一)

图5-3使用界面方式创建用户自定义类型过程(二)

3

图5-4使用界面方式创建用户自定义类型成功

(2)在廖美君数据库中创建表Employees3

要求:表结构与Employees类似,只是EmployeesID列使用的数据类型为用户自定义

类型ID_type。

SQL语句: USE 廖美君 GO

IF EXISTS(SELECT Name FROM sysobjects WHERE Name='EMPLOYEES3')

DROP TABLE Employees3 CREATE TABLE Employees3 (

EmployeeID ID_type,

Name nchar(10) NOT NULL, Education nchar(4) NOT NULL, Birthday datetime NOT NULL,

Sex bit NOT NULL DEFAULT 1, Workyear tinyint NULL, Address nvarchar(40) NULL,

4

PhoneNumber nchar(12) NULL, DepartmentID

nchar(3) NOT NULL, PRIMARY KEY (EmployeeID) ) GO

实验结果:

图5-5创建表Employees3

2、变量的使用(1)创建一个用户变量

要求:对于实验2给出的数据库表结构,创建一个名为Female的用户变量,并在

SELECT语句中使用该局部变量查找表中所有女性的编号、姓名。

SQL语句: USE 廖美君

DECLARE @female Bit SET @female=0

SELECT EmployeeID,Name

5

感谢您的阅读,祝您生活愉快。

数据库SQL实验题目

实验一数据定义操作 实验目的 1.掌握数据库和表的基础知识 2.掌握使用创建数据库和表的方法 3.掌握数据库和表的修改、查看、删除等基本操作方法 实验内容和要求 一、数据库的创建 在开始菜单中,启动SQl Server 程序中的“SQL Server Management Studio”,在对象资源管理器窗口中,右键单击“数据库”,选择“新建数据库”,创建成绩管理数据库Grademanager,要求如下表所示: Grademanager数据库参数表 参数参数值参数参数值 存储的数据文件路 径 D:\db\ 存储的日志文件路径D:\db\ 数据文件初始大小5MB 日志文件初始大小2MB 数据文件最大值20MB 日志文件最大值15MB 数据文件增长量原来10% 日志文件增长量2MB 二、表的创建、查看、修改和删除 1.表的创建 在Grademanager数据库中,右键单击“表”,选择“新建表”命令,创建如下表所示的表:(1)Student表的表结构 字段名称数据类型长度精度小数位数是否允许 Null值 说明 Sno Char 10 0 0 否学号,主码 Sname Varchar 8 0 0 是姓名 Ssex Char 2 0 0 是性别,取值:男或女 Sbirthday Date 8 0 0 是出生日期 Sdept Char 16 0 0 是系名 Speciality Varchar 20 0 0 是专业名 特别注意: 为属性Ssex设置约束,需选中属性Ssex行,然后单击菜单中的“表设计器”,选择“CHECK 约束”命令,然后按照图1进行设置。

图1 设置性别的约束 (2)Course表(课程名称表)的表结构 字段名称数据类型长度精度小数位数是否允许Null值说明 Cno Char 5 0 0 否课程号,主码Cname Varchar 20 0 0 否课程名 (3)SC表(成绩表)的表结构 字段名称数据类 型 长 度 精 度 小数位 数 是否允许Null值说明 Sno Char 10 0 0 否学号,外码 Cno Char 5 0 0 否课程号,外码 Degree Decimal 5 5 1 是成绩,0~100之间 特别注意: ①为属性Degree 约束,可参照属性Ssex进行设置,“CHECK约束对话框”中的表达式为Degree>=1 And Degree<=100 ②为SC表设置外键Sno和Cno的方法: 右键单击表SC,选择“设计”命令,然后选择菜单“表设计器”中的“关系”命令,打开“外键关系”窗口,选择“添加”按钮,然后单击“表和列规范”后的按钮,按照图2进行设置,即可将SC表中的Cno属性设置为外键。按照相同的方法,将属性Sno也设置为外键。

数据库实验指导书++数据库系统概论(第四版)++王珊、萨师煊

目录 实验一熟悉POWER DESIGNER (2) 实验二SQL SERVER 2000的安装与使用 (5) 实验三创建数据库、表 (15) 实验四SQL SERVER2000查询分析器 (27) 实验五SQL语言的DDL (36) 实验六SQL语言的DML初步 (38) 实验七DML的数据查询 (40) 实验八SQL语言综合练习 (44) 实验九嵌入式SQL ................... 错误!未定义书签。实验十数据库设计.................... 错误!未定义书签。

实验一熟悉Power Designer 一、实验目的 1、掌握安装并破解PD的方法。 2、通过阅读和分析应用实例“学生选课系统CDM”,了解和熟悉Power Designer CDM及其相关知识。 3.掌握运用Power Designer工具建立CDM的方法。 4.初步掌握从Power Designer CDM生成相应的PDM的方法。 二、实验内容及实验步骤 1、PD环境的介绍 Power Designer的4种模型文件: (1) 概念数据模型(CDM) CDM 表现数据库的全部逻辑的结构,与任何的软件或数据储藏结构 无关。一个概念模型经常包括在物理数据库中仍然不实现的数据对 象。它给运行计划或业务活动的数据一个正式表现方式。 (2)物理数据模型(PDM) :PDM 叙述数据库的物理实现。 藉由PDM ,你考虑真实的物理实现的细节。你能修正PDM 适合你的表现或物理约束。 (3)面向对象模型(OOM) 一个OOM包含一系列包,类,接口, 和他们的关系。这些对象一起形成所有的( 或部份) 一个软件系统的逻辑的设计视图的类结构。 一个OOM本质上是软件系统的一个静态的概念模型。 (4)业务程序模型(BPM) BPM 描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。BPM 是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合作协议之间的交互作用 2、创建CDM(以学生选课系统为例) (1)新建一个CDM,命名为CssCdm(css,Course SelectionSystem ) (2)创建“学生”、“课程”实体和“选课”联系,并命名 (3)为各实体和联系创建属性 学生(学号,姓名,性别,年龄) 课程(课程号,课程名,学分)

T_SQL函数习题及答案(完整版)

作业参考答案: --1.设数据库中有学生成绩表sc(sno char(10),cno char(5),grade tinyint),设计一个函数Count_course,返回指定学生的选修的课程门数. 注意:没有选修时应返回0;create function Count_course (@sno char(10)) returns int as begin return( select count(0) from sc where sno=@sno) end --2.写一个T-sql函数reversion,完成颠倒一个字符串,即:select dbo.reversion('abcd') 输出的结果为dcba; create function reversion (@str varchar(4000)) returns varchar(4000) as begin declare @ret varchar(4000) declare @i int set @ret='' set @i=len(@str) while @i>0 begin set @ret=@ret+substring(@str,@i,1) set @i=@i -1 end return @ret end --select dbo.reversion('abcdefg') --对照: 下面的算法有错误,当字符串长度超过2000后不能得到正确结果 create alter function reversion2 (@str varchar(4000)) returns varchar(4000) as begin declare @i int, @j int set @i=len(@str) set @j=len(@str) while @i>0 begin set @str=@str+substring(@str,@i,1) set @i=@i -1 end set @str=right(@str,@j) return @str end --select dbo.reversion2('abcdefg') --3.写一个函数T-sql函数elimination(a,b)将出现在第一个字符串中的第二个字符串中的所有字符删除,即:select dbo.elimination('abcdefg12345','bd2') 输出为:acefg1345; create function elimination (@a varchar(4000), @b varchar(4000)) returns varchar(4000) as begin --declare @ret varchar(4000) declare @i int --set @ret='' set @i=1 while @i < len(@b) begin set @a=replace(@a,substring(@b,@i,1),'') set @i= @i + 1 end return @a end --select dbo.elimination('abcdefg12345','bd2') --4.写一个函数Output_RMB,完成将人民币数值转换为汉字大写,即:select dbo.Output_RMB(4567.12) 输出为:肆仟伍佰陆拾柒元壹角贰分; /*方法二:推荐使用的方法,支撑两种转换类型 select dbo.Convert_money('20002.45',0) select dbo.Convert_money('20002.45',1) */ Create function Convert_money ( @n_LowerMoney numeric(15,2), @v_TransType int )returns varchar(200) AS begin Declare @v_LowerStr V ARCHAR(200) -- 小写金额 Declare @v_UpperPart V ARCHAR(200)

数据库实验5答案

实验五:数据库综合查询 一、实验目的 1.掌握SELECT语句的基本语法和查询条件表示方法; 2.掌握查询条件种类和表示方法; 3.掌握连接查询的表示及使用; 4.掌握嵌套查询的表示及使用; 5.了解集合查询的表示及使用。 二、实验环境 已安装SQL Server企业版的计算机(120台); 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 1.了解SELECT语句的基本语法格式和执行方法; 2.了解连接查询的表示及使用; 3.了解嵌套查询的表示及使用; 4.了解集合查询的表示及使用; 5.完成实验报告; 五、实验内容及步骤 1.利用Transact-SQL嵌套语句实现下列数据查询操作。 1) 查询选修了计算机体系结构的学生的基本信息。 select*from student where Sno in(select Sno from course where Cno in(select Cno from sc where Cname='计算机体系结构')) 2) 查询年龄比李勇小的学生的学号和成绩。 select a.sno,grade from student a,course where a.sno=course.sno and sage<(select sage from student where sname='李勇') 3) 查询其他系中比系编号为‘D1’的学生中年龄最小者要大的学生的信息。 select*from student where dnum<>'D1'AND SAGE>(select min(sage)from student where dnum='D1') 4) 查询其他系中比系编号为‘D3’的学生年龄都大的学生的姓名。 select*from student where dnum<>'D3'AND SAGE>all(select

SQL实验

实验一创建数据库和表 一、目的和要求 1.了解SQL Server数据库的逻辑结构和物理结构。 2.了解表的结构特点。 3.了解SQL Server的基本数据类型。 4.学会在企业管理器中创建数据库和表。 5.学会使用T-SQL语句创建数据库和表。 二、实验准备 1.要明确能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。 2.创建数据库必须要确定数据库名、所有者(即创建数据库的用户)、数据库大小(最初的大小、最大的大小、是否允许增长及增长的方式)和存储数据的文件。 3.确定数据库包含哪些表以及包含的各表的结构,还要了解SQL Server的常用数据类型,以创建数据库的表。 4.了解常用的创建数据库和表的方法。 三、实验步骤 1.数据库分析 (1)创建用于员工考勤的数据库,数据库名为YGKQ,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。数据库的逻辑文件名和物理文件名均采用默认值。 (2)数据库YGKQ包含员工的信息和缺勤类型信息,其YGKQ包含下列2个表:JBQK:员工基本情况表;QQLX:缺勤信息表。 各表的结构见表2.1和表2.2所示: 表2.1 JBQK表结构员工

表2.2 QQLX 表2.3 JBQK 表2.4 2 (1)在企业管理器中创建的YGKQ数据库。 (2)在企业管理器中删除YGKQ数据库。 (3)在企业管理器中分别创建表JBQK和QQLX。 (4)在企业管理器删除创建的JBQK和QQLX表。3.在查询分析器中创建数据库和数据表 (1)用T-SQL语句创建数据库YGKQ。 (2)使用T-SQL语句创建JBQK和QQLX表。 实验二表的基本操作

数据库原理中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 student set Sname='李咏' where Sname='李勇' 3.修改课程“数据处理”的学分为3学分; 3.update course set Ccredit=3 where Cname ='数据处理' 4.将选修课程“1”的同学成绩加5分; 4.update sc set Grade =Grade+5 where Cno='1' 5.将选修课程“大学英语”的同学成绩加5分; update sc set Grade=Grade+5 from course,sc where https://www.360docs.net/doc/3719251581.html,o=https://www.360docs.net/doc/3719251581.html,o and https://www.360docs.net/doc/3719251581.html,ame='大学英语'

SQL实验五:T-SQL编程

( 二 〇 一 五 年 四 月 《数据库原理及应用》实验报告 学校代码: 10128 学 号: 201120905048 题 目:T-S Q L 编程 学生姓名:孙跃 学 院:理学院 系 别:数学系 专 业:信息与计算科学 班 级:信计12-2 任课教师:侯睿

一、实验目的 (1)进一步巩固第2章~第4章所学内容; (2)掌握用户自定义类型的使用; (3)掌握变量的分类及其使用; (4)掌握各种运算符的使用; (5)掌握各种控制语句的使用; (6)掌握系统函数及用户自定义函数的使用。 二、实验内容 1.自定义数据类型的使用。 (1)对于实验2给出的数据库表结构,再自定义一数据类型ID_type,用于描述员工编号。 (2)在YGGL数据库中创建Employees3表,表结构与Employees类似,只是EmployeeID列使用的数据类型为用户自定义类型ID_type。 2.变量的使用。 (1)对于实验2给出的数据库表结构,创建一个名为female的用户变量,并在SELECT语句中使用该局部变量查找表中所有女员工的编号、姓名。 (2)定义一个变量,用于获取号码为102201的员工的电话号码。 3.运算符的使用。 (1)使用算数运算符“-”查询员工的实际收入。 (2)使用比较运算符“>”查询Employees表中工作时间大于5年的员工信息。 4.流程控制语句。 (1)判断Employees表中是否存在编号为11006的员工,如果存在则显示该员工信息,不存在则显示查无此人。 (2)假设变量X的初始值为0,每次加1,直至X变为5。 (3)使用CASE语句对Employees表按部门进行分类。 5.自定义函数的使用。 (1)定义一个函数实现如下功能:对于一个给定的DepartmentID值,查询该值在Departments表中是否存在,若存在则返回0,否则返回-1。 (2)写一段T-SQL程序调用上述函数。 6.系统内置函数的使用。 (1)求一个数的绝对值。 (2)求财务部雇员的总人数。 (3)使用ASCII函数返回字符表达式最左端字符的ASCII值。 (4)获得当前的日期和时间。

数据库实验书sql

数据库实验(SQL SERVER 2000)

目录 实验一数据库和表的简单操作 实验二数据操纵语言的使用(一) 实验三数据操纵语言的使用(二) 实验四数据操纵语言的使用(三) 实验五变量与数据类型的使用 实验六运算符的使用 实验七流程控制语句的使用 实验八函数的使用 实验九数据库和表的操作语句 实验十索引和视图的使用 实验十一存储过程的使用 实验十二存储过程的高级操作及触发器的使用 实验十三数据库的备份、还原与转换 实验十四完整数据库产品设计 本目录中,蓝色显示标题实验一--四,实验九、十、十三、十四为必做实验,其余红色标题显示实验为附加实验,扩展知识实验,为选作实验。

附录 学生管理数据库简介 此数据库为实验所用的主要数据库,有三张表,基本情况如(其中记录情况可自定): 表一学生表 注:学生表各字段类型如下:学号 char(4),姓名 varchar(10),性别 char(2),年龄 smallint ,系别varchar(12),班级 varchar(12)。 表二课程表 注:课程表各字段类型如下:课程号 char(2),课程名称 varchar(20),学分 smallint,课时 smallint ,授课教师 varchar(10)。 表三成绩表

实验题目:数据库和表的简单操作 实验目的:熟练使用企业管理器对数据库和表进行简单操作 实验内容: 一、使用企业管理器新建一个数据库,名称为“学生管理数据库”,其主要数据文件大小为2M,次要数据 文件大小为1M,日志文件大小为1M,存放位置为“D:\SQLServer”,其他选项都采用默认值。 二、在“学生管理数据库”中新建三张表,表名分别为:学生表、课程表和成绩表;其中各表结构如附录; 要求:在上述三张表中建立主键约束(PK),各表主键分别为红色显示字段; 在上述三张表中建立外键约束(FK),成绩表的学号字段外键参照学生表的学号字段,课程号字段外键参照课程表的课程号字段,并在设置约束时,选择级联删除和级联更新方式对主键表与外键表相互制约;(外键的含义是什么?审查时提问) 在上述三张表中建立自定义约束(CK),性别字段和年龄字段的默认值分别为‘男’和18,性别取值为’男’或’女’,年龄取值范围18~30。 三、向各表中输入如附录的记录 四、实践一下级联删除,即,在主键表学生表中删除‘0001‘号学生的记录,观察外见表成绩表中相应该 学生记录是否自动删除; 五、将“学生管理数据库”与服务器分离。 六、将已分离的“学生管理数据库”附加到服务器上。 实验课时:1节课 实验要求:当堂抽查,提问

实验五答案SQL语句查询

1、列出所有不姓刘的所有学生 select sname,sno from student where sname not like'刘%' 2、列出姓“沈“且全名为3个汉字的学生 select sname from student where sname like'沈____' 3、显示在1985年以后出生的基本信息 select sno学号,sname姓名,出生年份=year(getdate())-sage from student where year(GETDATE())>1985 4、按照“性别、学号、姓名、年龄、院系“的顺序列出学生信息,其中性别按以下规定显示:性别为男显示为男生,性别为女显示为女生,其它显示为”条件不明“ select ssex= case when ssex='男'then'男生' when ssex='女'then'女生' else'情况不明' end,sno,sname,sage,sdept from student 5、查询出课程名含有‘数据‘字串的所有课程基本信息 select sno,https://www.360docs.net/doc/3719251581.html,o,cname,grade,ccredit from sc,course where cname like'数据%'and https://www.360docs.net/doc/3719251581.html,o=https://www.360docs.net/doc/3719251581.html,o 6、显示学号第八位或者第九位是1、2、3、4或9的学生的学号、姓名、性别、年龄、及院系select sno,sname,ssex,sage,sdept from student where sno like'2005150[1-4]%'or sno like'2005150[0-9][1-4]' or sno like'20051509%'or sno like'2005150[0-9]9' 7、列出选修了‘1‘课程的学生,按成绩的降序排列 select student.sno,sname,grade from student,sc where Cno='1' order by Grade desc 8、列出同时选修‘1‘号课程和’2‘号课程的所有学生的学号 select sno,Cno from sc where cno=1 or cno=2 9、列出课程表中全部信息,按先选修课的升序排列 select* from course order by cpno asc

实验5数据库的安全性控制(含答案)

实验五数据库的安全性控制 一、实验目的: 1. 通过实验加深对数据安全性的理解,并掌握SQL Server 中有关用户登录的认证以及管理办法; 2.通过实验加深对数据库存储控制机制的理解,通过自主存取控制进行权 限管理,熟悉 SQL Server 中角色管理; 3.通过实验加深对数据安全性的理解,熟悉视图机制在自主存取控制上的应用。 二、实验内容 1.设置 SQL Server 的混合安全认证模式。在SQL Server 中的对象资源管理器中设置安全认证模式。 2.在 SQL Server 中,利用“对象资源管理器”创建一个名为“U1”的登录用户和数据库用户,密码为111,并允许其登录S-T 数据库。

3.在 SQL Server中,利用代码创建一个名为“ U2”的登录用户,密码为 111;

其相应的数据库用户名为lucky ,并允许其登录S-T 数据库。 4.用“ u1”用户名登录后,执行对students表的查询操作,说明执行结果,并分析原因(建议:在启动一个SQL Server 2008窗口)。 分析:没有对u1 进行其他操作的授权,只能登录而不能进行插入,修改等操作 5.将 students表的操作权限select 和 insert 赋予数据库用户u1,并允许其向其它用户授权。

6.以“u1”用户名登录,执行对students和 teacher表的查询操作,将该运行结果进行分析。 分析:对比第 4 题,对 U1 进行授权后可以进行相应的操作 7.执行下列代码后,分析用户u2 能否对 s_t 数据库的 student 表进行 select 和 update操作,为什么?并用相应的语句验证。

教学大纲-数据库原理及应用(SQL Server)(第4版)-李俊山-清华大学出版社

《数据库原理及应用》教学大纲 课程英文名称:Principles of database system 课程编码:ZYB08002 课程性质:专业必修课 先修课程:程序设计基础,离散数学 总学分:3学分 总学时:48学时 周学时:3学时 适用专业:计算机类本课专业 一、教学目标及教学要求 (一)教学目标 本课程的教学目标是要求学生系统地掌握数据库的基本概念、基本原理、基本设计技术和设计方法,具有利用现有的数据库管理系统软件、某种程序语言和开发工具进行数据库应用系统设计与开发的初步能力,了解数据库技术和相关研究领域的最新进展,为从事数据库技术的研究和数据库应用系统的开发等奠定良好的基础。 (二)教学要求 本课程要求学生了解数据库的物理结构设计方法;理解关系数据库规范化理论;理解和掌握关系模型、数据库、数据库管理系统、数据库应用系统的概念,以及数据库保护技术的相关概念和方法;熟练掌握SQL语言及其数据定义和数据操纵方法、基于E-R模型的概念结构设计方法、基于E-R模型向关系模型转换的数据库逻辑结构设计方法,初步掌握面向实际应用的数据库应用系统的用户需求分析方法。 二、本课程的重点和难点 (一)课程教学重点 关系模型,数据库、数据库管理系统和数据库应用系统三者的概念及其关系,数据库内部体系结构的三级模式结构,关系代数特有的关系运算,关系代数运算

在关系数据库查询操作中的应用,数据库应用系统的生命周期及相关概念,E-R 模型的建模方法,E-R模型向关系模型的转换,表的定义,SQL数据查询,X关于F的闭包及其计算,最小函数依赖集,关系模式的分解,保持无损的分解,保持依赖的分解,第二范式(2NF),第三范式(3NF),https://www.360docs.net/doc/3719251581.html,数据库访问接口,数据库应用系统设计与实现,数据库的完整性概念,数据库故障的基本恢复方式。 (二)课程教学难点 数据库内部体系结构的三级模式结构,关系代数运算在关系数据库查询操作中的应用,E-R模型的建模方法,SQL的嵌套查询和谓词查询,X关于F的闭包及其计算,候选键的求解方法,https://www.360docs.net/doc/3719251581.html,数据库访问接口,数据库应用系统设计与实现。 三、主要实践性教学环节及要求 本课程的实验及实践性环节计划共8学时,分别为: 实验一:数据库和数据表创建及数据表数据录入实验。 实验二:SQL查询语句功能验证及集成化环境运用实验。 实验三:带有子查询的数据更新实验。 实验四:数据库应用系统登录模块设计实验。 要求每个学生在总结实验准备、实验过程和收获体会的基础上,写出实验报告。 四、教学方法与手段 本课程紧紧围绕大学教学管理系统的数据建模、数据查询及验证、系统分析与设计等主题,将案例教学贯穿于课程教学的全过程。在各相关内容的教学中,采用问题导向和分层次启发方式以促进学生对问题的深层次理解;采用知识点测试与重点难点综合练习方式以提升学生分析问题与解决问题的能力。 课程教学手段采用传统教学手段和多媒体教学手段相结合的方式,并通过课程内容实践和课程综合设计提高学生的综合实践能力和综合设计能力。 五、教材与主要参考文献 (一)教材 李俊山,叶霞. 数据库原理及应用(SQL Server)(第4版).清华大学出版社,2020.6.

sql server实验指导第四版

SQL Server实验指导第四版 第一部分:前言 1.1 介绍 SQL Server是微软公司推出的关系数据库管理系统,广泛应用于企业和个人的数据库管理和数据处理中。为了帮助大家更好地学习和使用SQL Server,特编写了这一份SQL Server实验指导第四版,旨在帮助读者系统地学习SQL Server的相关知识和技能,掌握基本的数据库设计与管理、SQL语言的基本应用和高级应用等方面的知识。本实验指导第四版内容全面,深入浅出,适合SQL Server初学者和进阶者阅读参考。 1.2 使用说明 本实验指导第四版共分为十二个章节,每个章节都包含理论知识、实验操作和习题,帮助读者从理论到实践更好地掌握SQL Server的知识和技能。读者可根据自身需求和水平选择性地阅读和实践,也可按照章节顺序逐步学习。在学习过程中,建议读者结合实际项目或案例,加深对SQL Server的理解和运用。 第二部分:实验指导 2.1 章节一:SQL Server简介

- SQL Server的发展历史 - SQL Server的基本特点和功能 - SQL Server的应用领域和前景 2.2 章节二:SQL Server安装与配置 - SQL Server的版本和安装要求 - SQL Server的安装步骤和注意事项 - SQL Server的配置和参数设置 2.3 章节三:SQL Server数据库设计与管理- 数据库的基本概念和原理 - 数据库的设计规范和范式 - 数据库的管理和维护 2.4 章节四:SQL Server的基本查询与操作- SQL语言的基本语法和规范 - 数据表的创建和操作 - 数据查询和结果集处理 2.5 章节五:SQL Server的高级应用 - 多表查询和连接操作 - 子查询和视图的应用 - 存储过程和触发器的编写与使用

实验5 sql语句练习——图书馆数据库答案

实验5sql语句练习——图书馆数据库 实验5 sql语句练习——图书馆数据库 实验目的 (1)了解SQL Server数据库的逻辑结构和物理结构; (2)了解表的结构特点; (3)了解SQL Server的基本数据类型; (4)了解空值概念; (5)学会在企业管理器中创建数据库和表; (6)学会使用T-SQL语句创建数据库和表。 (7)学会使用T-SQL语句更新数据。 (7)学会使用T-SQL语句创建多种查询。 实验准备 首先要明确,能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。 其次创建数据库必须要确定数据库名、数据库大小(最初的大小、最大的大小、是否允许增长及增长方式)和存储数据库的文件。 然后,确定数据库包含哪些表,以及所包含的各表的结构,还要了解SQL Server的常用数据类型,以创建数据库的表。 此外还要了解两种常用的创建数据库、表的方法,即在企业管理器中创建和使用T-SQL的CREATE DA TABASE语句。 实验内容 假设有5本书 设有一图书馆数据库,其中包括3个表,即图书表、读者表和借阅表。三个表的结构如图: 列名说明数据类型约束说明 书号图书唯一的编号定长字符串,长度为10 主键 书名图书的名称定长字符串,长度为50 空值 作者图书的编著者名定长字符串,长度为30 空值 出版社图书的出版社定长字符串,长度为30 空值 单价出版社确定的图书的单价浮点型,Float 空值 读者表结构 假设有10位读者

列名说明数据类型约束说明 读者号读者唯一的编号定长字符串,长度为10 主键 姓名读者姓名定长字符串,长度为8 非空值 性别读者性别定长字符串,长度为2 非空值 办公电话读者办公电话定长字符串,长度为8 空值 部门读者所在部门定长字符串,长度为30 空值 列名说明数据类型约束说明 读者号读者的唯一编号定长字符串,长度为10 外码,引用读者表的 主键 书号图书的唯一编号定长字符串,长度为20 外码,引用图书表的 主键 借出日期借出图书的日期定长字符串,长度为8 非空值 归还日期归还图书的日期定长字符串,长度为8 空值 主键为:(读者号,图书号)(1)用Sql语句创建图书馆数据库 Create database Lab05 (2)用Sql语句创建上述3个表 create table book ( bookId char(10)primary key, bookName varchar(50), bookWriter varchar(30), bookPublish varchar(30), bookPrice float ) create table reader ( readerId char(10) primary key, readerName varchar(8)not null, readerSex char(2)not null, readerOfficeTel char(8), readerDepartment varchar(30) ) create table 借阅表 ( readerId char(10), bookId char(10), checkOutTime char(8), checkInTime char(8), primary key(readerId,bookId), foreign key (readerId) references reader(readerId), foreign key (bookId) references book(bookId), )

sql server实验指导第四版

sql server实验指导第四版 SQL Server实验指导第四版 第一章:SQL Server的介绍 SQL Server是由Microsoft开发的一种关系型数据库管理系统(RDBMS)。它具有强大的数据管理和分析功能,被广泛应用于企业级应用程序和数据仓库中。本章将介绍SQL Server的概述、特点以及应用领域,帮助读者了解SQL Server的基本知识。 第二章:SQL Server的安装和配置 在使用SQL Server之前,需要先进行安装和配置。本章将详细介绍SQL Server的安装步骤和配置选项,包括选择适当的版本、设置数据库引擎和其他组件,以及配置网络和安全设置等。读者将学会如何正确地安装和配置SQL Server。 第三章:SQL Server的基本操作 本章将介绍SQL Server的基本操作,包括创建数据库、创建表、插入数据、更新数据和删除数据等。通过实际操作,读者将学会如何使用SQL Server进行数据库的基本管理和数据操作。 第四章:SQL Server的高级操作 本章将深入介绍SQL Server的高级操作,包括查询数据、排序数据、过滤数据、连接表和子查询等。读者将学会如何使用SQL语句来实现复杂的数据查询和分析。

第五章:SQL Server的性能优化 本章将介绍SQL Server的性能优化技术,包括索引优化、查询优化、存储过程优化和服务器配置优化等。通过掌握这些技术,读者将能够提高SQL Server的性能和响应速度。 第六章:SQL Server的备份和恢复 在数据库管理中,备份和恢复是非常重要的任务。本章将详细介绍SQL Server的备份和恢复技术,包括完整备份、差异备份、事务日志备份和数据库恢复等。读者将学会如何使用SQL Server来保护数据库的安全和可靠性。 第七章:SQL Server的高可用性 在企业级应用中,数据库的高可用性是至关重要的。本章将介绍SQL Server的高可用性技术,包括故障转移集群、数据库镜像、数据库复制和Always On可用性组等。通过掌握这些技术,读者将能够保证数据库的连续性和可用性。 第八章:SQL Server的安全管理 数据库的安全性是数据库管理的重要方面。本章将介绍SQL Server 的安全管理技术,包括登录管理、用户管理、权限管理和审计管理等。通过学习这些技术,读者将能够保护数据库的机密性和完整性。第九章:SQL Server的故障排除和监控 在数据库管理中,故障排除和监控是必不可少的任务。本章将介绍

实验五索引和数据完整性

实验五索引和数据完整性 1、目的与要求 (1)掌握索引的使用方法。 (2)掌握数据完整性的实现方法。 2、实验准备 (1)了解索引的作用与分类。 (2)掌握索引的创建方法。 (3)理解数据完整性的概念及分类。 (4)掌握各种数据完整性的实现方法。 3、实验容 (1)建立索引。 ①使用CREATE INDEX语句创建索引。 A、对YGGL数据库的Employees表中的DepartmentID列建立索引。 在“查询分析器”窗口中输入如下程序并执行。 B、在Employees表的Name列和Address列上建立复合索引。 C、对Department表上的DepartmentName列建立唯一非聚集索引。 【思考与练习】 A、索引创建后在对象资源管理器中查看表的索引。 上面分别创建了Employees表和Department表的索引,在对象资源管理器中的表中将相应的表打开,在“索引”中显示该表中建立的索引。详细结果如上面截图中显示。 B、了解索引的分类情况。 按索引的组织方式能够将索引分为聚集索引和非聚集索引两种类型。 聚集索引将数据行的键值在表排序并存储对应的数据记录,使得数据表物理顺序与索引顺序一致。 非聚集索引完全独立于数据行的结构。 C、使用CREATE INDEX语句能够创建主键吗?

D、在什么情况下能够看到建立索引的好处? 数据库索引是为了增加查询速度而对表字段附加的一种标识。数据库的索引并不是只有好处或者只有坏处的。当我们的数据库足够大,恰当的建立索引就会大大的提高查询搜索的速度;在这里举个反例,像查询性别这种大量重复的字段时候,是否建立索引是没有多大区别的;还有当表数据不是很多的时候建立索引也是没有多大意义的,因为索引也是要占用资源的。但是当我们数据库非常大时候,经常进行GROUP BY查询时候,若将GROUP BY字段上建立索引就会很大程度上面较少查询搜索所花费的时间。 ②使用界面方式创建索引。 使用界面方式在Employees表的PhoneNumber列上创建索引。 启动SQL Server Managerment Studio,在对象资源管理器中展开数据库YGGL,展开表Employees,右击“索引”,选择“新建索引”选项。在新建索引的窗口中填写索引的名称和类型,单击“添加”按钮,在列框中选择要创建索引的列,选择完单击“确定”按钮即完成创建的工作。 【思考与练习】 A、使用界面方式创建一个复合索引。

实验五---SELECT数据查询

实验五---SELECT数据查询

实验五、SELECT 数据查询 一、实验目的 要求学生熟练使用T-SQL语句进行数据查询,掌握SELECT语句的基本结构和多表连接查询、子查询、分组查询、查询结果的排序等操作。二、实验内容 (1)利用SELECT查询语句进行单表、多表查询设计。 (2)利用SELECT语句进行子查询和外连接查询. (3)设计ORDER BY查询子句以及带有GROUP BY 的查询子句。 三、实验指导 1、SELECT 基本语句格式 SELECT查询的基本语句包含要返回的列、要选择的行、放置行的顺序和将信息分组的规范,其语句格式如下: 2、简单查询实验 利用T-SQL语句在JXGL数据库中实现简单查询

操作: (1)查询数学系(MA)学生的学号和姓名。 (2)查询选修了课程的学生的学号 (3)查询选修了课程号为“C2”的学生的学号和成绩,并对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

(4)查询选修了课程为“C2”的成绩在80到90分之间的学生的学号和成绩,并将成绩乘以0.8输出。 (5)查询数学系(MA)或计算机科学系(CS)中张的学生信息

(6)查询缺少了成绩的学生学号和课程号 3、连接查询实验 利用T-SQL语句在JXGL数据库中实现下列连接查询: (1)查询每个学生的情况以及他(她)所选修的课程 (2)查询学生的学号、姓名、选修的课程名及成绩 (3)查询选修“离散数学”课程且成绩为90分以上的学号、姓名及成绩。

(4) 查询每一门课的间接先修课(即先修课的先修课) 4、嵌套查询 利用T-SQL语句在JXGL数据库中实现下列嵌套查询操作: (1)查询选修了“离散数学”的学生的学号和姓名。

用T-SQL语句完成创建和管理数据库操作练习

·创建数据库语句语法: CREATE DATABASE 数据库名 [ON [PRIMARY] {(NAME=数据文件的逻辑名称, FILENAME=‘数据文件的路径和文件名’, (要包含文件扩展名) SIZE=数据文件的初始容量,(不能小于Model数据库的初始文件大小) MAXSIZE=数据文件的最大容量, FILEGROWTH=数据文件的增长量)}[,…n] LOG ON {(NAME=事务日志文件的逻辑名称, FILENAME='事务日志文件的物理名称', SIZE=事务日志文件的初始容量, MAXSIZE=事务日志文件的最大容量, FILEGROWTH=事务日志文件的增长量) }[,…n]] 判断同名的数据库是否存在: IF EXISTS (SELECT * FROM master..sysdatabases WHERE name = '数据库名') DROP DATABASE 数据库名 GO

修改数据库操作语句: ALTER DATABASE 数据库名 {[add file 文件描述] [to filegroup 文件组名] 新增数据文件|[add log file 文件描述] 新增日志文件 |[remove file 逻辑文件名 ] 删除数据库文件 |[add filegroup 文件组名] 新增文件组 |[remove filegroup 文件组名] 删除文件组 |[modify file 文件修改内容描述] 修改数据文件属性} 查看数据库文件属性 EXEC sp_helpfile 系统存储过程,用于查看数据库有哪些文件及文件属性。 删除数据库 Drop database 数据库名称 分离数据库 EXEC Sp_detach_db 数据库名称 附加数据库 CREATE DATABASE 数据库名 ON PRIMARY (FILENAME=’’) 说明:附加数据库只需指定数据库的主数据文件。 FOR ATTACH 如果移动过数据库文件,则需要指出所有移动过的文件。

相关主题
相关文档
最新文档