一、关系数据库数据库
(1)关系操做ide
关系操做所操做的对象和结果都是集合,成为一次一集合的方式。而非关系数据模型的数据库操做方式为一次一记录的方式。对象
关系数据模型中最重要的是关系查询操做,主要分为:选择(select)、投影(project)、链接(jion)、除(divide)、并(union)、差(except)、交(intersection)和笛卡尔积等。其中,选择、投影、并、差、笛卡尔积是5种基本的操做。产品
在实际的关系数据库系统中,为实现选择、投影、并、差等操做,为用户提供了一种介于关系代数和关系验算之间的语言SQL(Strutured Query Language,结构化查询语言)。SQL语言是用于关系数据库查询的结构化语言,目前许多关系型数据库管理系统支持SQL语言,如SQL Server、Access、Oracle、DB二、MySQL等。it
SQL语言的功能包括数据查询、数据操纵、数据定义和数据控制四个部分。SQL语言简洁、方便、实用,为完成其核心功能只用了6个动词——SELECT、CREATE、INSERT、UPDATE、DELETE和GRANT(REVOKE)。做为关系型数据库标准语言虽然被众多商用数据库管理系统产品采用,可是不一样的数据库管理系统在实践过程当中都对SQL规范作了某改编和扩充。因此,在实际上不一样数据库管理系统之间的SQL语言不能彻底互相通用。如甲骨文公司的ORACLE数据库所使用的SQL语言是Procedural Language/SQL(简称PL/SQL),而微软的SQL Server数据库系统支持的是Transact-SQL(简称T-SQL)。io
关系数据库模型的完整性规则是对关系的某种约束条件。关系模型中有三类完整性约束:实体完整性、參照完整性、用户定义的完整性。当中实体完整性和參照完整性是关系模型必须知足的完整性约束条件。被称做是关系的两个不变性。应该由关系系统本身主动支持。select
实体完整性(Entity Integrity):若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值。所谓空值就是“不知道”或“不存在”的值。
依照实体完整性的规则的规定,基本关系的主码都不能取控制。引用
假设主码由若干属性组成,则所有这些主属性都不能取空值。
对于实体完整性规则说明:
1)实体完整性规则是针对基本关系而言的。一个基本表一般相应现实世界的一个实体集。nio
如学生关系相应于学生的集合。
2)现实世界中的实体是可区分的。即他们具备某种惟一性标识。好比每个学生都是独立的个体,是不同的。
3)关系模型中以主码做为惟一性标识。
4)主码中的属性,即主属性不能取空值。假设主属性取空值。就说明存在某个不可标识的实体,即存在不可区分的实体,这与2)相矛盾,所以这个规则称为实体完整性。数据
1)设F是基本关系R的一个或一组属性,但不是关系R的码。
K是基本关系S的主码。假设F与K相相应,则称F是R的外码(foreign key)。
并称基本关系R为參照关系。
基本关系S为被參照关系。外码并不必定要与相应的主码同名。
2)若属性(或属性组)F是基本关系R的外码。它与基本关系S的主码K相相应(基本关系R与S不必定是不一样的关系)。则对于R中每个元组在F上的值必须为:◀或者取空值(F的每个属性值均为空值)◀或者等于S中的某个元组的主码值。
例如,在‘学生’表中,用户规定总学分为60分才为及格。