数据库设计

数据库设计

0.1 简述数据库完整性及其作用?

解析:数据库的准确性,保证数据库中数据的准确性。

 

0.2基本操作语句(DML DDL DCL)有哪些? 语法是?

DML(data manipulation language):自动提取的数据库操作语言,它们是SELECT,UPDATE,INSERT,DELETE,就像它的名字一样

DDL(data definition language):自动提交的数据库定义语言
       主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用
DCL(Data Control Language):
       是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL

DQL:数据库查询语言,关键字:select

Insert、update、delete、select

这里以student表为例:

Insert into student(name,age) values(‘张三’,18)

Update student set name=’ 李四’ where id=1

Delete from student where id=2

见到update和delete,必须有where

Select * from student where id=1

 

0.3常用的聚合函数有哪些?

AVG():求平均值

SUM():求和

MAX():求最大值

MIN():求最小值

COUNT():求总的记录数,COUNT(1)和COUNT(*)等价,一般认为COUNT(1)效率高。

 

0.4表连接分为哪几种类型?

内连接,外连接和交叉连接(数据库原理)

为什么要设计数据库?

首先,良好的数据库设计:

1可以节省数据的存储空间

2能够保证数据的完整性

3方便进行数据库应用系统的开发

糟糕的数据库设计:

1数据冗余、存储空间浪费

2内存空间浪费

3数据更新和插入的异常

 由此,我们得出一个结论,当数据库比较复杂时,我们需要设计数据库

 

设计数据库的步骤

0.1收集信息

与该系统有关的人员进行交流,座谈,充分了解用户需求,理解数据库需要完成的任务。

0.2标识实体(Entity)

标识数据库要管理的关键对象或者实体,实体一般都是名词

0.3标识每个实体的属性

0.4标识实体之间的关系

范式

主要分为以下几类

一对一:一辆车只能对应一个车位

一对多:一个客房可以入住多个客人

多对一:多个客人可以入住一个客房

多对多:一本书可以被多个人借,一个人也可以借多本书

一个关系的属性名的集合称为关系模式

第一范式:目标是确保每列的原子性

如果每列都是不可再分的最小单元(也成为最小的原子单元),则满足第一范式

第二范式:要求每个表只能描述一件事

如果一个关系满足1NF,并除了主键以外的其他列,都依赖与该主键

第三范式:如果一个关系满足2NF,并除了主键以外的其他列都不传递依赖于主键列

第二范式是其他列都要依赖于主键列,但没有说明是直接依赖还是间接依赖.也就是直接依赖和间接依赖均可以

但是第三范式明确指出只能直接依赖,如果出现间接依赖的情况,要单独独立出来一张表 

posted on 2016-03-08 17:37  萧瑟的风  阅读(158)  评论(0编辑  收藏  举报

导航