数据库基础

第一章 关系型数据库管理系统简介

1.为什么要使用数据库有什么优点?

为了存储数据;

优点:降低存储数据的冗余度;

   更高的数据一致性;

   可以建立数据库所遵循的标准;

   便于维护数据完整性;

   能够实现数据的安全性;

2.在数据库发展史中出现了不同的数据模型: 包括网状模型、 层次模型、 关系模型、 对象模型;

2.1 层次模型

父与子的关系从上到下不断发展

定义

用树型(层次)结构表示 实体类型及实体间联系的 数据模型称为 层次模型(Hierarchical Model)。
在一个层次模型中的限制条件是:有且仅有一个节点,无父节点,此节点为树的 ;其他节点有且仅有一个父节点。

特点

层次模型的特点:记录之间的联系通过 指针实现,查询效率高。

缺点

缺点:只能表示1:N的联系。尽管有许多辅助手段实现M:N的联系,但比较复杂,不易掌握

2.2 网状模型

网状模型通过允许记录有多个父子关系,来增强层次模型。
网状数据模型的优点如下。
(1) 能够更为直接地描述现实世界。如一个结点可以有多个双亲,结点之间可以有多种联系。
(2) 具有良好的性能,存取效率较高。
网状数据模型的缺点如下。
(1) 结构比较复杂,而且应用环境越大,数据库的结构就变得越复杂,不利于最终用户掌握。
(2) 其数据定义语言(DDL)、数据操作语言(DML)复杂,用户不容易使用。

2.3 关系模型

核心:表;
关系模型是独立于应用程序的。更改数据库设计,而不会影响应用程序成为可能,因为关系模型用组成相关数据的表的行和列这种结构。
关系操作
集合操作
用户不必关心路径
关系数据操作语言
关系代数
关系演算
SQL(结构化的查询语言)


————列子


#.关系模型把世界看作由实体和联系组成
实 体:指在现实世界中客观存在并可相互区别的事物。可能是有形的或无形的、具体或抽象。例如:一个学生、一门课程等都是实体。
实体 所具有的某一特性称为属性。实体可以用若干个属性来描述。
关系模型来创建的数据库称为关系型数据库。
在表的内部,数据被分为 (column)和 (row)。
  1. 填入表中的每一行,代表一个实体;
  2. 每个表由一到多个列组成。列代表实体的属性。

在关系数据库的表中用一个唯一的标识符来标识每一个行。这个标识符就是主键(Primary Key)
主键的优点:便于唯一的区分表中的每一行。
       联 系: (Rekationship)将两个或多个截然不同的实体以特定的意义关联在一起。
在关系数据库中,外键(Forergn Key)就是用来表达 之间的关联关系。
表之间的关联关系存在3种基本关系类型一对一关系一对多关系多对多关系

  1. 一对一关系 :一个对一个。
2. 一对多关系一个对多个。
在一对多的关系中,“多边”的表称为从表,把“一边”称为主表
3. 多对多关系 :在大多的关系型数据库管理系统中,多对多关系通过在关系的两个表之间增加第三个表来实现, 叫连接表(充当桥梁)。 

关系型数据库管理系统:

关系型数据库管理只是一个保存数据的容器,大多数的数据库依靠数据库管理系统(Data Mangagement  System,简称DBMS)的软件来管理数据库中的数据。
管理关系型数据库的软件称为关系型数据库管理系统(Relational  Database Mangagement  System,简称RDBMS)。
数据库应用程序通过RDBMS做为桥梁,与关系型数据库进行交互。
RDBMS分为 本地数据库管理系统   数据库服务器管理系统:
1). 本地数据库管理系统又称为桌面型数据库管理系统。
2). 数据库服务器管理系统 通常 在不同的机器上。

2.4 对象模型

是面向对象的模型 
     支持对象模型,体现了面向对象数据库的基本特征。 对象模型也可以用二维表来表示,称为对象表。但对象表是用一个类(对象类型)表定义的。一个对象表用来存储这个类的一组对象。对象表的每一行存储该类的一个对象(对象的一个实例),对象表的列则与对象的各个属性相对应。因此,在面向对象数据库中,表分为关系表和对象表,虽然都是二维表的结构,但却是基于两种不同的数据模型。


结构化查询语言SQL:
什么是SQL?
SQL是结构化查询语言(Structured Query Language).

结构化查询语言包含6个部分:
一: 数据查询语言( DQL:Data Query Language):
其语句,也称为“数据检索 语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字 SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。
二: 数据操作语言(DML:Data Manipulation Language):
其语句包括动词 INSERTUPDATEDELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。
三:事务处理语言(TPL):
它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。
四: 数据控制语言(DCL):
它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对 数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对 表单个列的访问。
五:数据定义语言( DDL):
其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人 数据库目录中获得数据有关的保留字。它也是动作查询的一部分。
六:指针控制语言(CCL):
它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。

相关函数编辑

SQL Aggregate 函数
SQL Aggregate 函数计算从列中取得的值,返回一个单一的值。 [3]  
有用的 Aggregate 函数:
  • AVG() - 返回平均值
  • COUNT() - 返回行数
  • FIRST() - 返回第一个记录的值
  • LAST() - 返回最后一个记录的值
  • MAX() - 返回最大值
  • MIN() - 返回最小值
  • SUM() - 返回总和
SQL Scalar 函数
SQL Scalar 函数基于输入值,返回一个单一的值。 [3]  
有用的 Scalar 函数:
  • UCASE() - 将某个字段转换为大写
  • LCASE() - 将某个字段转换为小写
  • MID() - 从某个文本字段提取字符
  • LEN() - 返回某个文本字段的长度
  • ROUND() - 对某个数值字段进行指定小数位数的四舍五入
  • NOW() - 返回当前的系统日期和时间
  • FORMAT() - 格式化某个字段的显示方式

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值