《数据库原理与应用》课程实验报告实验内容及基本要求: 实验项目名称:小型数据库设计 实验类型: 设计

《数据库原理与应用》课程实验报告实验内容及基本要求: 实验项目名称:小型数据库设计 实验类型: 设计,第1张

投资项目不能盲目,需要根据你所在的地区以及周边环境选择项目,在决定做之前要仔细规划和考察一下哦,建议多选择几个对比对比再选择最优化的

从当今行业动态来看,加盟已经成为创业投资者选择创业方式的主流,加盟的话,还是选择知名品牌的好,再就要看你选择什么行业,一些小本创业者资金有限,很难胜任,建议你加盟个宠物店是比较合适的,派多格已经有了500家的店看了,积攒了丰厚的开店的经验。

数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:

1.数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。

2.利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS的完整性控制机制是集中管理的,因此比应用程序更容易实现数据库的完整性。

3.合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。比如装载大量数据时,只要在装载之前临时使基于DBMS的数据库完整性约束失效,此后再使其生效,就能保证既不影响数据装载的效率又能保证数据库的完整性。

4.在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。

数据库完整性约束可分为6类:列级静态约束、元组级静态约束、关系级静态约束、列级动态约束、元组级动态约束、关系级动态约束。动态约束通常由应用软件来实现。不同DBMS支持的数据库完整性基本相同。 关系数据库的完整性规则是数据库设计的重要内容。绝大部分关系型数据库管理系统RDBMS都可自动支持关系完整性规则,只要用户在定义(建立)表的结构时,注意选定主键、外键及其参照表,RDBMS可自动实现其完整性约束条件。

(1)实体完整性(Entity Integrity)。实体完整性指表中行的完整性。主要用于保证 *** 作的数据(记录)非空、唯一且不重复。即实体完整性要求每个关系(表)有且仅有一个主键,每一个主键值必须唯一,而且不允许为“空”(NULL)或重复。

(2)实体完整性规则要求。若属性A是基本关系R的主属性,则属性A不能取空值,即主属性不可为空值。其中的空值(NULL)不是0,也不是空隔或空字符串,而是没有值。实际上,空值是指暂时“没有存放的值”、“不知道”或“无意义”的值。由于主键是实体数据(记录)的惟一标识,若主属性取空值,关系中就会存在不可标识(区分)的实体数据(记录),这与实体的定义矛盾,而对于非主属性可以取空值(NULL),因此,将此规则称为实体完整性规则。如学籍关系(表)中主属性“学号”(列)中不能有空值,否则无法 *** 作调用学籍表中的数据(记录)。 参照完整性(Referential Integrity)属于表间规则。对于永久关系的相关表,在更新、插入或删除记录时,如果只改其一,就会影响数据的完整性。如删除父表的某记录后,子表的相应记录未删除,致使这些记录称为孤立记录。对于更新、插入或删除表间数据的完整性,统称为参照完整性。通常,在客观现实中的实体之间存在一定联系,在关系模型中实体及实体间的联系都是以关系进行描述,因此, *** 作时就可能存在着关系与关系间的关联和引用。

在关系数据库中,关系之间的联系是通过公共属性实现的。这个公共属性经常是一个表的主键,同时是另一个表的外键。参照完整性体现在两个方面:实现了表与表之间的联系,外键的取值必须是另一个表的主键的有效值,或是“空”值。

参照完整性规则(Referential Integrity)要求:若属性组F是关系模式R1的主键,同时F也是关系模式R2的外键,则在R2的关系中,F的取值只允许两种可能:空值或等于R1关系中某个主键值。

R1称为“被参照关系”模式,R2称为“参照关系”模式。

注意:在实际应用中,外键不一定与对应的主键同名。外键常用下划曲线标出。 经过系统分析员、数据库分析员、用户的共同努力,确定系统模型中应该包含的对象,如人事及工资管理系统中的部门、员工、经理等,以及各种业务规则。

在完成寻找业务规则的工作之后,确定要作为数据库完整性的业务规则,并对业务规则进行分类。其中作为数据库模式一部分的完整性设计按下面的过程进行。而由应用软件来实现的数据库完整性设计将按照软件工程的方法进行。 此阶段就是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化,包括对关系模型的规范化。此时,依据DBMS提供的完整性约束机制,对尚未加入逻辑结构中的完整性约束列表,逐条选择合适的方式加以实现。

在逻辑结构设计阶段结束时,作为数据库模式一部分的完整性设计也就基本完成了。每种业务规则都可能有好几种实现方式,应该选择对数据库性能影响最小的一种,有时需通过实际测试来决定。

第三章 关系数据库SQL语言

本章为重点章,应熟悉和掌握SQL的数据定义、数据查询、数据更新的句法及其应用,特别是数据查询的应用。结合上机 *** 作进行理解和掌握。

一、SQL概述。

1、SQL发展历程( 识记 )

SQL从1970年美国IBM研究中心的EFCodd发表论文到1974年Boyce和Chamberlin把SQUARE语言改为SEQUEL语言,到现在还在不断完善和发展之中,SQL(结构式查询语言)虽然名为查询,但实际上具有定义、查询、更新和控制等多种功能。

2、SQL数据库的体系结构( 领会 )

SQL数据库的体系结构也是三级结构 ,但术语与传统关系模型术语不同,在SQL中,关系模式称为“ 基本表 ”,存储模式称为“ 存储文件 ”,子模式称为“ 视图 ”,元组称“ 行 ”,属性称“ 列 ”。

SQL数据库体系的结构要点如下:

(1)一个SQL数据库是表的汇集。

(2)一个SQL表由行集构成,行是列的序列,每列对应一个数据项。

(3)表或者是基本表,或者是视图。基本表是实际存储在数据库中的表,视图由是由若干基本表或其他视图构成的表的定义。

(4)一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。存储文件与物理文件对应。

(5)用户可以用SQL语句对表进行 *** 作,包括视图和基本表。

(6)SQL的用户可以是应用程序,也可以是终端用户。

3、SQL的组成( 识记 )

SQL由四部分组成:

(1)数据定义:SQL DDL定义SQL模式,基本表、视图和索引。

(2)数据 *** 纵:SQL DML包括数据查询和数据更新(增、删、改)。

(3)数据控制:包括对基本表和视图的授权、完整性规则的描述,事务控制等。

(4)嵌入式SQL的使用规定。

二、SQL的数据定义( 简单应用 )

1、SQL模式的创建和撤消:

SQL 模式的创建 可简单理解为建立一个数据库,定义一个存储空间,其句法是:

CREAT SCHEMA 模式名> AUTHORIZATION 用户名>

撤消SQL模式的句法为:

DROP SCHEMA 模式名> [ CASCADE | RESTRICT ]

方括号中的选项参数CASCADE表示连锁方式,执行时将模式下所有基本表、视图、索引等元素全部撤消。RESTRICT表示约束式,执行时必须在SQL模式中没有任何下属元素时方可撤消模式。

2、SQL提供的基本数据类型

数值型:包括 integer、smallint、real、double precision 、float(n),numeric(p,d)

字符串型:char(n)、varchar(n),前者是定长,后者为变长串

位串型:bit(n),bit varying(n),同上。

时间型:date、time

3、基本表的创建、修改和撤消

基本表的创建:(可理解为建立表结构)

CREAT TABLE SQL 模式名。基本表名

(列名,类型,

……

完整性约束……)

完整性约束包括主键子句(PRIMARY KEY)、检查子句(CHECK)和外键子句(Foreign KEY)。

基本表结构的修改

ALTER TABLE 基本表名 ADD/ DROP (增加/删除) 列名 类型名(增加时写出)

删除时有子句 [CASCADE|RESTRICT],前者为连锁删除,后者为约束删除,即没有对本列的任何引用时才能删除。

基本表的撤消

DROP TABLE 基本表名 [CASCADE|RESTRICT]

4、视图的创建和撤消

创建: CREAT VIEW 视图名(列名表) AS SELECT 查询语句

撤消: DROP VIEW 视图名

5、索引的创建和撤消

创建: CREAT [UNIQUE] INDEX 索引名 ON 基本表名(列名表 [ASC|DESC])

撤消: DROP INDEX 索引名

总结:凡创建都用 CREAT ,删除都用 DROP ,改变用 alter ,再跟类型和名字,附加子句很容易了。

三、SQL的数据查询( 综合应用 )

这一段是本章的重点内容,应该熟练掌握。首先了解基本句法:

1、 SELECT -FROM- WHERE 句型

SELECT 列名表(逗号隔开) FROM 基本表或视图序列 WHERE 条件表达式

在这里,重点要掌握条件表达式中各种运算符的应用,如=,>,<,>等算术比较运算符、逻辑运算符 AND、OR、NOT 、集合成员资格运算符: IN,NOT IN ,以及嵌套的 SELECT 语句的用法要特别注意理解。 针对课本的例题和课后习题进行掌握。

在查询时, SELECT 语句可以有多种写法,如 联接查询、嵌套查询和使用存在量词的嵌套查询 等。都掌握,但是起码应能写出一种正确的查询语句。

2 SELECT 语句完整的句法:

SELECT 列名表(逗号隔开)

FROM 基本表或视图序列

[ WHERE 条件表达式] (此为和条件子句)

[GROUP BY 列名序列] (分组子句)

[HAVING 组条件表达式] (组条件子句)

[ORDER BY列名[ASC|DESC]……] (排序子句)

这段关于完整句法的内容能够理解也就问题不大了。

3、 SELECT 语句中的限定

这一段内容主要是对 SELECT 语句进一步使用进行的深入学习,领会下列各种限定的使用目的和方法。

要求输出表格中不出现重复元组,则在 SELECT 后加一DISTINCT

SELECT 子句中允许出现加减乘除及列名,常数的算术表达式

WHERE 子句中可以用BETWEEN……AND……来限定一个值的范围

同一个基本表在 SELECT 语句中多次引用时可用AS来增加别名

WHERE 子句中字符串匹配用LIKE和两个通配符,%和下划线_

查询结果的结构完全一致时可将两个查询进行并(UNION)交(INTERSECT)差(EXCPT) *** 作

查询空值 *** 作不是用='null',而是用 IS NULL来测试。

集合成员资格比较用 IN/NOT IN ,集合成员算术比较用元组θSOME/ALL

可以用子查询结果取名(表名(列名序列))来作为导出表使用

基本表的自然联接 *** 作是用 NATURAL INNER JOIN来实现的。

四、SQL的数据更新( 简单应用 )

简单应用就是掌握基本的句型并能套用在一些简单的查询要求上。

1、数据插入:

INSERT INTO 基本表名(列名表)

valueS (元组值)

INSERT INTO 基本表名(列名表)

SELECT 查询语句

其中元组值可以连续插入。用查询语句可以按要求插入所需数据。

2、数据删除:

DELETE FROM 基本表名 [ WHERE 条件表达式]

3、数据修改:

UPDATE 基本表名

SET 列名=值表达式,[列名=值表达式……]

[ WHERE 条件表达式]

4、对视图的更新:

我们知道,对视图的查询是和基本表相同的,但是更新 *** 作则受到下列三条规则的限制:(领会一下)

如果视图是从多个基本表使用联接 *** 作导出的,则不允许更新。

如果导出的视图使用了分组和聚合 *** 作,也不允许更新。

如果视图是从单个基本表使用选择和投影 *** 作导出的,并且包括了基本表的主键或某个候选键,则可以执行 *** 作。(这就相当于在基本表上 *** 作)。

这一节的关于增删改的 *** 作要和前面关于数据库模式、表的增删改 *** 作进行对比学习,以加深理解。不要忘记上机实践

以第(1)题为例:

教研室(教研室id,教研室名称,教研室描述和简介),主键为教研室id。

教师(教师id,姓名,性别,出生日期,所在教研室id),主键为教师id,外键为所在教研室id,参照教研室表的主键。

以上就是关于《数据库原理与应用》课程实验报告实验内容及基本要求: 实验项目名称:小型数据库设计 实验类型: 设计全部的内容,包括:《数据库原理与应用》课程实验报告实验内容及基本要求: 实验项目名称:小型数据库设计 实验类型: 设计、数据库完整性的原理、自考《数据库原理》串讲—关系数据库SQL语言等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10200713.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存