Chinaunix首页 | 论坛 | 博客
  • 博客访问: 333416
  • 博文数量: 65
  • 博客积分: 1770
  • 博客等级: 上尉
  • 技术积分: 1125
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-13 14:31
文章分类

全部博文(65)

文章存档

2016年(1)

2014年(2)

2013年(5)

2012年(18)

2011年(39)

分类: 数据库开发技术

2012-01-26 19:40:13

为什么使用数据库,而不使用文件记录数据?

数据库可以实现数据共享,使用文件记录数据,数据出现重复和不一致,且管理起来比较麻烦。

 

数据模型的种类:层次数据模型,网状数据模型,关系数据模型。

基本概念:字段 记录 主键 空值(NULL

关系数据库是以表格为基础的,其中一个表格就是一种关系,行即记录,列即字段

集合运算:并 笛卡尔乘积

关系运算:投影 选择 连接(外键)

 

E-R模型(Entity-Relationship modal

概念:实体 关系

关系基数:一对一 一对多 多对多

规范化nomalization---

非范式:没有去除数据重复的表格

第一范式:去除了数据重复,每行都只有一条的记录,每一列都是不可分割的数据项。

第二范式:表格中的列都可以通过其他列(不一定是主键)确定。 这种通过某一列的值确定其他列数值的原则叫做函数依赖。

第三范式:表格中的列只能通过主键确定。这种通过某一列的值间接确定其他列的值叫做传递依赖。

关系数据库设计分为概念模型、内部模型、外部模型三个部分。

 

SQL功能--

1.      创建表格,数据定义语言DDLData Definition Language

2.      操作数据,数据录入读取,数据操作语言DMLData Manipulation Language

3.      控制数据库,管理用户访问,数据控制语言DCLData Control Language

比较运算符 >  <  >=  <=   <>

逻辑运算符 and or not

通配符   %   _

select columns from tables where column=”value” or column like “%value”

计算函数

order by column asc/desc column的值升/降序排列

select avg(column) from table table中取得column列的平均值

count(*)   取得行数

count(column)  取得column列的非空个数

count(distinct column) 取得column列的非空非重复个数

avg(column)        取得column列的平均值

sum(column)              取得column列的总数

max(column)              取得column列的最大值

min(column)        取得column列的最小值

 

group by column having condition

 

子查询&&相关子查询

 

连接方法:同等连接 自然连接 内部连接 外部连接  左外部连接 右外部连接

 

制作表格的约束(constraint):primary key , unique, not null , check , default , foreign key , references

 

create table table_name{ columns datatype(byte), contraint};

insert into table columns(“values”);

update table set column=”value” where condition;

delete from table where condition;

 

视图:从用户角度根据基本表制作出来的虚拟表格。

制作视图的语句可以是:create view view_name as select columns from table where condition;

 

概念:事务 共享锁 独占锁 提交 同时执行控制 回滚 索引

事务 只能由提交或者回滚来结束

限制用户,限制操作(怎么做)

故障恢复(事务/介质/系统故障):日志

前卷法 回滚

 

事务属性:ACIDatomicity consistency isolation durablity

更新遗失 可序列化 资源 两相锁 锁的粒度

 

时间戳控制 乐观控制

隔离级别设置:

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED / READ COMMITTED / REPEATABLE READ / SERIALIZABLE

 

权限给予grant [select,update,insert,delete,all] on table to user with grant option;

权限回收 revoke [select,update,insert,delete,all] on table from user;

 

索引方法:B 散列

最优化查询:嵌套循环  分类合并 散列

 

Web服务器  应用服务器 数据库服务器  分布式数据库

储存程序 触发器

 

三层结构:

表示层接受用户输入,并显示结果

功能层数据库的查询,数据加工,对SQL进行整合

数据层管理数据库,返回查询结果

 

分布式数据库:水平分布 垂直分布

分配数据:水平 垂直

 

两阶段式提交

 

复制的方式

读取专用

分布式数据库各个数据库之间的数据如何保存一致??

 

XML Extensible Makeup Language 用标签区分数据的可扩展语言

面向对象数据库

阅读(824) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~