8.2 数据库

来源:互联网 发布:长沙知豆电动车租赁点 编辑:程序博客网 时间:2024/06/10 14:52

8.2.1触发器

特殊类型的存储结构,由事件触发,而不是程序或手动启动。当数据有特殊操作时,自动触发执行SQL语句。

触发器和存储过程的区别:

1.触发器是自动被触发,存储过程显式调用。

2.触发器不能使用COMMIT,ROLLBACK语句,存储过程可以。

3.触发器不能接受参数传入,存储过程可以。

两类触发器:DML触发器,DLL触发器。

DML:数据操作触发器,当数据库服务器发生数据操作语言事件时执行的存储过程。有After和Instead Of两种。After触发器是在记录改变之后进行的,Instead Of是在记录变更之前,去执行触发器,代替原来的sql语句,也就是说原有的sql是为了触发这个动作。

DLL:数据定义触发器,相应数据定义语句时触发的存储过程。

作用:

1.增加安全性

2.利用触发器记录所进行的修改和相关信息。

3.维护那些通过声明表时的声明约束不可能实现的复制的完整性约束,以及对数据库中特定事件的监控

4.自动完成某些功能。


8.2.2索引

索引是提高访问速度的机制。它是一个在数据库的表或视图上按照某个关键字段的值,升序或降序排列创建的对象。当用户查询索引字段时,可以快速执行检索操作。

是与表或视图相关联的磁盘上结构。

聚集索引和非聚集索引

聚集:行的物理顺序和键值的逻辑顺序一样,一个表只能有一个聚集索引。与非聚集索引相比,一般有更快的访问速度。

非聚集:索引有指针,指向数据存储位置,索引的项目按索引前的顺序存储。


8.2.3撤销和回滚

回滚是利用undo保证事务有效,即执行失败,则回滚到事务执行前的状态。

撤销更多用来恢复数据库。如突然断电,利用undo把未完成的的事务处理。


8.2.4 备份

完全备份:全部信息,是恢复的基线。不但是数据文件,日志文件,还有存储位置,以及全部对象的相关信息。在备份过程中的事务和未完成的事务都被忽略

差异备份:从上一次完全备份之后的数据库修改, 差异备份过程中的操作可以备份起来。

事务日志备份:上次备份后的日志记录

增量备份:备份针对上一次备份的修改


8.2.5 游标

可以改变数据库按表进行操作,使按行进行操作

















0 0
原创粉丝点击