数据库原理与应用实验报告

本文由用户“yydy1983”分享发布 更新时间:2021-02-12 19:46:55 举报文档

以下为《数据库原理与应用实验报告》的无排版文字预览,完整格式请下载

下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。

数据库原理与应用实验报告 Database principle and application experiment report 学生姓名: 指导教师: 学 院: 专业班级: 胡某某 陈可 *** 信管 T1901 2020-12 数据库原理与应用实验报告 SQL Server 2012 第一次实验报告 实验内容:(1)了解 SQL Server 数据库的逻辑结构和物理结构 (2)了解表的结构特点 (3)了解 SQL Server 的基本数据类型 (4)了解空值的概念 (5)学会使用 T-SQL 语句建立数据库和表 结果:1,成功的创建了实验所要求的数据库和三个表以及其主要操作 (1)对于数据库的建立要注意一定要有主文件以及事务日志文件且都应包含 name, filename(mdf 表示主文件,ndf 表示辅助文件(可选添加),ldf 表示日志文 件), size, maxsize 以及 filegrowth 这些基本要素。 其建立后在文件夹中的表现为: (2)数据库的删除: 即 DROP DATABASE 数据库名 1,。。。 1 数据库原理与应用实验报告 SQL Server 2012 (3)对于表的建立,多数情况下字段的值可以为空值表明其可以被省略,即在字段 名,数据类型后不加 null,系统会默认为空,这样做可以节省很多时间 表的建立在‘对象资源管理器’中的表示为: 因为用语句操作费时,所以改用界面操作来建立剩余两个库: 2,完成了课后的题目。 (1) 在数据库已经存在的情况下再次创建数据库时,系统会报错: 2 数据库原理与应用实验报告 SQL Server 2012 可知,在同一架构下,相同名称的数据库文件只能有一个。 (2)使用 ALTER DATABASE 语句来修改数据库逻辑文件的原始大小(必须要大 于原始大小) 修改数据库文件: ALTER DATABASE 数据库名 MODIFY FILE (文件夹选项) 3 数据库原理与应用实验报告 SQL Server 2012 (3)在创建表时进行列的值为计算表达式的定义的表示方法: (4)步骤一:创建与 Employees 表结构相似的 employee1 表 步骤二:将 ADDRESS 列删除 4 数据库原理与应用实验报告 SQL Server 2012 步骤三:从资源管理器中找到约束的名称:(在进行默认约束的更改时,必须 先要把原来的约束进行删除,之后才能添加新的约束;而不能直接进行约束的修改。) 步骤四:删除原脚本 5 数据库原理与应用实验报告 默认约束删除:ALTER TABLE 表名 DROP CONSTRAINT 约束名 步骤五:重新添加某人约束到 SEX 列: SQL Server 2012 添加默认约束:ALTER TABLE 表名 ADD CONSTRAINT 约束名 DEFAULT 默认值 FOR 列名 (5)临时表:用于临时存储数据,关闭 sql 连接的时候 临时表就会 自动删除,普通 表不会。 6 数据库原理与应用实验报告 SQL Server 2012 创建方法: 方法一 create table TempTableName 或 Select [字段 du1,字段 2,...,] into TempTableName from table 方法二: Create table tempdb.MyTempTable (Tid int) 说明: (1)、临时表其实是放在数据库 tempdb 里的一个用户表; (2)、TempTableName 必须带“#”,“#"可以是一个或者两个,以#(局部)或##(全局)开 头的表,这种表在会话期间存在,会话结束则自动删除; 7 数据库原理与应用实验报告 SQL Server 2012 (3)、如果创建时不以#或##开头,而用 tempdb.TempTable 来命名它,则该表可在数据 库重启前一直存在。 2、临时表的删除 临时表的删除:drop table TempTableName 普通表和临时表的区别只是表名开头无 "#" 过程:在对照着书上的实例输入代码时,因为是刚开始接触这样的格式,对于 SQL 的语言 并不熟悉,所以产生了许多错误(忘记加逗号,没有打空格等等)。从而产生了一些 BUG,查找以及修理这些 BUG 所耗用的时间占用到了我大多数的时间,这也让我认识到了 在编码时认真是很重要的因素。之后在逐渐地对于各个代码熟悉后,我很快完成了实验的 基本步骤。之后的练习题大多是对于书本上其他内容的考察,我根据书上的代码的格式进 行修改也很快完成了这些练习,在这之中我发现对于练习中一个要求的实现有着多种方 法,这也需要我们对于数据库的多种编码熟练使用。 8 数据库原理与应用实验报告 第二次实验报告 SQL Server 2012 目的:(1)学会在‘对象资源管理器’面板堆数据库表进行插入,修改和删除数据操作 (2) 学会使用 T-SQL 语句对数据库进行插入,修改和删除数据操作 (3)了解数据更新操作时要注意数据完整性 结果:1,成功的在三个表中插入了相关的数据 添加数据:insert into 数据库名(字段名 1,字段名 2,字段名 3,…) Values (值 1,值 2,值 3…) 所输入的值的顺序必须与字段顺序保持一致。 或者直接不带字段名添加数据,不过要求数据顺序正确且每个字段都添 加相应的数据 department 表: Salary 表: 9 数据库原理与应用实验报告 SQL Server 2012 Employee 表: 练习 1:使用 insert into 语句以及 select 语句把一个表中的数据转移到另一个表中 10 数据库原理与应用实验报告 SQL Server 2012 注意:(1)若插入行中游原行中关键字相同的列值,则 INSERT 语句无法插入此行。 (2) 使用 insert 插入多个数据时,中间用逗号(,)隔开。 (3) 如果插入的数值类型与列定义不符,则无法执行 insert 语句 2,完成了对于表的数据以及结构的修改删除 注意:对于数据库中的表进行修改时,ALTER TABLE 一次只能包含 ALTER COLUMN, ADD, DROP 字句中的一条,而且 ALTER COLUMN 一次也只能修改一个列的属性, 字段添加: alter table 表名 add 字段名 数据类型 字段删除:alter table 表名 drop column 字段名 数据更新: update 字段名 set 数据表达式 数据删除:delete from 表名 可以加 where 条件表达式 删除表的所有数据:TRUNCATE 表名 该语句删除了表中的所有行,但表的结构及其列、约束、索引等保持不变。 (TRUNCATE 无法删除由外键约束引用的表以及参与了索引视图的表) 11 数据库原理与应用实验报告 SQL Server 2012 删除表的所有数据以及表结构:DROP TABLE 表名 3,学会了复原以及表的数据同步。(merge into 语句) 可使得 employees3 的数据与 employee 的数据同步: 过程:刚开始在表的数据插入时因为有许多数据需要输入而且在中文以及英文之间的转换 非常消耗时间,后来我通过先复制了一个格式的模板之后再进行修改操作可以节省我很多 时间。然后在进行表的数据同步时,需要创建一个一样的结果地表,于是我从网上找到方 法后寻找到了当初的创建时的语句然后仅仅对于名字进行修改,这也节省了很多时间。 12 数据库原理与应用实验报告 第三次实验报告 目的:(1)掌握 SELECT 语句的基本语法 (2) 掌握子查询的表示 (3)掌握连接查询的表示 (4)掌握 SELECT 语句的 GROUP BY 字句的作用和使用方法 (5)掌握 SELECT 语句的 ORDER BY 字句的作用和使用方法 结果:1,学会了熟练地运用 SELECT 语句进行表中相关字段的查询 字段查询:SELECT ( distinct | all ) * FROM table *表示返回查询到的所有列 (1) 查询表中的所有信息 SQL Server 2012 (2) 查询表中特定的列,并且去除重复项(distinct): 13 数据库原理与应用实验报告 SQL Server 2012 (3) 使用 where 进行查询: 条件查询:SELECT 列名 FROM WHERE 条件 表名 (4) 带有比较运算符的查询: 14 数据库原理与应用实验报告 SQL Server 2012 (5) 将查询的列作别名: 注意: 当自定义的列表题中含有空格时,必须用引号将标题括起来 而且,不能在 where 中使用自定义的列标题名称 15 数据库原理与应用实验报告 (6) 在查询中使用 case 语句: CASE 语句:有两种表示方法 1,CASE 列名 WHEN 值 1 THEN 赋值 1 WHEN 值 2 THEN 赋值 2 … END 2, CASE WHEN 条件 1 THEN 赋值 1 WHEN 条件 2 THEN 赋值 2 … END … SQL Server 2012 16 数据库原理与应用实验报告 (7) 带有计算列的查询: SQL Server 2012 (8) 带有匹配字符的查询: 表达式 [not] like 模式串 (需要单某某) [escape 转义符] (9) 含有 between(闭区间)的查询: 17 数据库原理与应用实验报告 SQL Server 2012 (10) 使用 into 字句创建新表: 2,掌握子查询的复杂用法: 18 (1)使用子查询查找数据 数据库原理与应用实验报告 SQL Server 2012 (4) 多个子查询嵌套: 19 数据库原理与应用实验报告 3,学会了用连接查询以及子查询来更好地对于表的数据进行查找 SQL Server 2012 (1) 使用 where 连接(自然连接会去除相同的字段名): (2) 使用 join 连接: 连接查询:(LEFT|LEFT) JOIN ON 过程:在进行查询是我发现数据的查询作为数据库管理系统中一个重要的部分,它有着很 多的方法来辅助进行数据查询,以便我们可以找到符合我们要求的数据。在进行查询时, 我发现对于一个查询要求,我们要仔细的思考其中的条件,然后编出相应的命令,否则就 会发生错误,这也要求我们的思维能力。总之,想要完成数据库中数据的查找,我们应该 做的就是找到合适地方法来描述我们所要查找到的对象。 20 数据库原理与应用实验报告 第四次实验报告 目的:(1)熟悉视图的概念和作用 (2)掌握视图的创建方法 (3)掌握如何查询和修改视图 结果:1,学会了在 SELECT 中使用聚合函数以及分类排序 (1) 聚合函数的使用: SQL Server 2012 (2)分组排序的使用: 21 分组:GROUP BY 数据库原理与应用实验报告 排序:ORDER BY(ASC 升序;DESC 降序) SQL Server 2012 2,在 SELECT 中使用 having 来用聚合函数筛选结果 22 数据库原理与应用实验报告 指定组或者聚合的搜索条件:HAVING(可以使用聚合函数) SQL Server 2012 3,学会了对于视图的构建以及修改,删除 视图构建: CREATE VIEW 视图名(不能与表同名) AS SELECT 列名 FROM 表名 组成视图的字段名全部省略或者指定,通常不必指定字段名,但下列情况需要指定字段 名:(1)SELECT 字句字段中有来自聚集函数或者表达式。 (2) 多表连接时,有两个或多个相同字段名作为视图字段。 (3) 需要给视图中某个字段定义新的名称。 23 数据库原理与应用实验报告 SQL Server 2012 并且, SELECT 语句不能使用 COMPUTE, COMPUTE BY, ORDER BY, INTO 字句。 不能在临时表或者表变量上创建视图 定义视图的用户必须对所参照的表或视图有查询权限。 SELECT 语句不能引用系统或用户变量。 视图修改(与之相关联的表的修改): 条件:创建视图的 SELECT 语句中没有聚合函数,且没有 TOP, GROUP BY, UNION 字句 以及 DISTINCT 关键字。不包含从基本表中计算得到的数据,并且其 FROM 字句中至少要 包含一个表。 (1)数据更新:UPDATE 视图名 SET 列名=表达式 视图的数据发生变化时,其相应的表的数据也会随之变化。 (2)数据插入:INSERT INTO 视图名 VALUES() 当视图关联多个表时,其中的数据插入会引起多个表的数据发生变化,所以基于多个表建 立的视图不能插入数据。 24 数据库原理与应用实验报告 (3)删除数据:DELECT FROM 视图名 WHERE 条件表达式 对于依赖于多个表的视图,不能使用 DELECT 语句 SQL Server 2012 查询视图:SELECT FROM 列名 视图名 WHERE 条件表达式 而且,当原表的数据发生变化(增加字段,修改数据等,如果视图没有进行更新的话,视 图不会发生变化。) 视图删除:DROP VIEW 视图名 总结:1、视图是已经编译好的 sql 语句,而表不是。 2、视图没有实际的物理记录,而表有。 3、表是内容,视图是窗口。 4、表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时对它进 行修改,但视图只能有创建的语句来修改。 5、表是内模式,视图是外模式。 6、视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些 SQL 语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构。 7、表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。 25 数据库原理与应用实验报告 8、视图的建立和删除只影响视图本身,不影响对应的基本表。 SQL Server 2012 联系 1、视图(view)是在基本表之上建立的表,它的结构(即所定义的列)和内容(即所有数 据行)都来自基本表,它依据基本表存在而存在。 2、一个视图可以对应一个基本表,也可以对应多个基本表,基于一个表也可以建立多个视 图。视图是基本表的抽象和在逻辑意义上建立的新关系。 3、表可以建立各种触发器,可以建立索引,可以建立主健、约束等。但是视图不能建立这 些对象(视图可以建立替代触发器)。表和视图可以更新,但是视图的更新受到约束。 过程:通过对于 select 的继续学习,我发现作为数据库的核心内容,select 语句有着很多 的方法以及内容需要我们掌握,比如说聚合函数 sum,avg,max,min 可以帮助我们解决 许多问题。而且这之中也有很多点需要注意,比如 SELECT 中对于筛选的选择如果需要使 用聚合函数,则就要用 HAVING 而 WHERE 中不能使用聚合函数,对于排序,如果想要反 向就要我们在排序的数前加上-号,来使顺序反转。而在视图中,如果我们修改视图的数 据,那么原表中的数据也会随之而改变,而当我们只修改原表的数据时,视图的数据并不 会发生改变,这些都是我们在以后的学习中注意的。 26 数据库原理与应用实验报告 第五次实验报告 目的:(1)掌握用户自定义类型的使用 (2)掌握变量的分类和使用 (3)掌握各种运算符的使用 (4)掌握各种控制语句的使用 结果:(1)定义了一个自定义的数据类型 ID_type 来表示员工的 ID 数据类型定义:EXEC sp_addtype 数据类型名 数据类型 空值 要求:数据类型名称尽量见名知意 新数据类型所依赖的必须为系统数据类型 要包含为空性 SQL Server 2012 (2)在表的创建中使用自定义数据类型: 27 数据库原理与应用实验报告 (3)创建了一个变量,并且用于查询 SQL Server 2012 变量创建:DECLARE @变量名 变量赋值:SET @变量名=。。。 或者 SELECT @变量名=。。。 (3)将比较运算符用于查询中 (4)使用 if 流程控制语句用于查询 28 IF 流程:IF… ELSE… 数据库原理与应用实验报告 SQL Server 2012 (4) 使用流程语句来实现变量的递增: 流程控制语句:BEGIN…END 语句块 IF…ELSE CASE 分支语句 CONTINUE GOTO 无条件转移语句 BREAK WHILE 循环语句 RETURN WAITFOR 为语句的执行设置延迟 条件语句 重新开始下一次循环 用于退出内层循环 无条件返回 29 (5)在 SQL 上打印三角形 数据库原理与应用实验报告 SQL Server 2012 (6)使用 CASE 语句进行分类查询 30 数据库原理与应用实验报告 (7)用自定义函数来实现 if 代替 case 进行分类 SQL Server 2012 过程:通过对于 SQL 语句的使用,我发现 T-SQL 并不是单一的仅仅专注于数据的查询这样 的简单过程,它提供了一系列的辅助语句以及其他东西(例如变量,if 条件分支)来使得 31 数据库原理与应用实验报告 SQL Server 2012 查询更加复杂的同时更加简便化,但这也需要我们熟练地掌握这些语句的用法。此外,在 实验打印*的三角形的过程中,我发现 T-SQL 语句在查询数据之外可以进行其他的用途, 而且自定义函数的使用也给我用 if 代替 case 提供了思路。然而 SQL 中自定义函数的用法 与 PYTHON 的不同,这也要求我们多多应用来进行掌握。 32 数据库原理与应用实验报告 第六次实验报告 目的:(1)掌握系统函数以及用户自定义函数的使用 (2)了解函数的调用方法 (3)了解用户自定义函数的一般步骤 结果:(1)完成了一个函数的创建。 函数创建:CREATE FUNCTION 函数名(参数名 数据类型) RETURN INTEGER AS BEGIN… RETURN END 函数定义时的参数被称为形式参数 SQL Server 2012 (3) 使用创建的函数来进行查询 1)在 SELECT 语句中调用。 Select 架构名(不可缺少).函数名(实参 1,…,实参 n)。 2)利用 EXEC 语句执行。 用 T-SQL EXECUTE(简写为 EXEC)语句调用用户函数时,有两种调用形式(架构名可 33 以省略): 数据库原理与应用实验报告 ② EXEC 架构名.函数名 实参 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 在“对象资源管理器中查看”: b 索引的分类:聚集索引(改变数据库的物理顺序以及逻辑顺序) 非聚集索引分 (只影响逻辑结构,不影响物理结构,一个表可以有一个或多个非聚集索引) c CREATE INDEX 语句只能创建使得一个列唯一非空的约束,不能用于创建主键。 而一但表设置了主键,系统会自动按照主键建立聚集索引。 d 在表中的数据较多时: 1、通过唯一性索引(unique)可确保数据的唯一性 2、加快数据的检索速度 3、加快表之间的连接 4、减少分组和排序时间 (3)掌握了重建索引的方法 重建索引:ALTER INDEX 索引名 ON 表名 REBUILD 40 数据库原理与应用实验报告 (4)学会了对于索引的删除 SQL Server 2012 索引的删除:DROP INDEX 索引名 ON 表名 或者 DROP INDEX 表名.索引名 注意:这个删除索引的语句不能用于删除定义 PRIMARY KEY 或 UNIQUE 约束创建 的索引,如果要删除这样的索引,必须通过删除约束来进行实现。 删除单一索引: 删除多个索引: 41 [文章尾部最后500字内容到此结束,中间部分内容请查看底下的图片预览]请点击下方选择您需要的文档下载。

  1. 软件工程实验报告数组 实验
  2. 升本VFP基础知识填空题06
  3. 物理实验报告模板
  4. 电分报告模板
  5. 实验04_实验报告样本
  6. C程序设计实验报告格式
  7. 《数据结构》实验报告模板
  8. 实验报告纸表格
  9. 数据库应用系统实践报告模板
  10. 大作业 报告 封面
  11. 大学电工课程线上实验报告格式 - 副本
  12. 生物与环境填空题
  13. 《测量动摩擦因数》课后反思
  14. JAVA程序设计实验报告2020
  15. 蚂蚁的通讯行为课件
  16. 《大气压强》教学评价与反思
  17. 财务管理模拟实验报告范文
  18. 物理实验报告探究光的折射规律
  19. 2020-《应用密码学》-实验指导书之二 - zhjq
  20. 实验报告模板

以上为《数据库原理与应用实验报告》的无排版文字预览,完整格式请下载

下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。

图片预览