数据库复习

连接,一共分为自然连接,内连接,外连接。

笛卡尔连接就是n*n的形式

自然连接在笛卡尔连接的基础上,但两个表必须有相同的属性列,而且相同属性列的值必须相同,然后舍弃其他元组。

再就是内连接,内连接比自然连接范围更大,只要求给定的属性值相同,不要求是相同的属性列。

最后是外连接,外连接有左右全,左就是保留自然连接左边,其余类似。

等值连接是内连接的子集。


数据库故障恢复:

总结的一共有三种,

第一种事务故障(即做了一半就出现故障),此时你要不断循环判断操作,结束条件是找到该事物的开始标记,循环操作是执行已更新操作的逆操作(undo)。

第二种系统故障(数据库不一致),此时,redo和undo,正向扫描日志文件,已提交的放入a队列,未提交的放入b队列,最后正向redo队列a,反向undo队列b。

第三种介质故障(硬件坏了),恢复备份,然后正向扫描日志文件,对已提交的执行redo。


SQL 提供了sp_rename改名,ALTER TABLE可以修改、增加、删除列属性,但不能更改列名,除非是删除这个列,重新建一个列,这样的话数据就会丢失。


下面转的一个关于Alter子句用法

在修改Sql Server表结构时,常用到Alter语句,把一些常用的alter语句列举如下。

1:向表中添加字段

Alter table [表名] add [列名] 类型

2:  删除字段

Alter table [表名]  drop column [列名]

3:  修改表中字段类型 (可以修改列的类型,是否为空)

Alter table [表名] alter column [列名] 类型

4:添加主键

Alter table [表名] add constraint [ 约束名] primary key( [列名])

5:添加唯一约束

Alter table [表名] add constraint [ 约束名] unique([列名])

6:添加表中某列的默认值

Alter table [表名] add constraint [约束名] default(默认值) for [列名]
7:添加约束

Alter table [表名] add constraint [约束名] check (内容)

8:添加外键约束

 Alter table [表名] add constraint [约束名]  foreign key(列名) referencese 另一表名(列名)

9:删除约束

Alter table [表名] drop constraint [约束名] 

10:重命名表

exec sp_rename '[原表名]','[新表名]'

11:重命名列名

exec sp_rename '[表名].[列名]','[表名].[新列名]'

 

创建注释(N'user', N'dbo', N'TABLE' 为固定的写法)

12:为表添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '人员信息表', N'user', N'dbo', N'TABLE', N'表名', NULL, NULL

13:为字段Username添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'TABLE', N'表名', N'column', N'Username'

14:为字段Sex添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '性别', N'user', N'dbo', N'TABLE', N'表名', N'column', N'Sex'

15:更新表中列UserName的描述属性:
EXEC sp_updateextendedproperty 'MS_Description','新的姓名','user',dbo,'TABLE','表名','column','UserName'

16:删除表中列UserName的描述属性:
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'TABLE','表名','column','Username'


数据库 ACID特性

A:原子性,表示事务是不可分割的,要不都发生,要么都不发生。

C:一致性,表示事务的完整性约束不被破坏。

I:隔离性,表示多个事务并发访问时,事务之间不会相互影响。

D:永久性,当事务完成之后,数据应该被永久保存在数据库中,并且不能被回滚


数据独立性:物理独立性(用户程序和磁盘上的数据库是相互独立的),逻辑独立性(用户程序和数据库里的逻辑结构是相互独立的)。


数据模型:数据结构,数据操作,数据约束。


三级模式:外模式,概念模式,内模式-----有效组织管理数据

两级映像:指外模式和概念模式,内模式和概念模式之间的映像


数据库设计步骤:

1.需求分析

2.概念结构设计

3.逻辑结构设计

4.物理结构设计

5.数据库的建立与测试

6.数据库的运行与维护


贴一个关系代数除法的解释

点击打开链接


你可能感兴趣的:(数据库复习)