数据库的DBS DBMS DBA DDL DML DCL

数据库系统 DBS
整体数据的结构化是数据库的主要特征之一
数据结构化,
数据的共享性高,冗余度低,易扩充
数据的独立性高:物理独立性(用户的应用程序和磁盘中的数据是相互独立的,当数据的物理存储改变,程序不用改变)和逻辑独立性(应用程序和数据库的逻辑结构是相互独立的,逻辑结构改变,用户程序也可以不改变)
数据由DBMS统一管理和控制

DBMS :数据库管理系统, DataBase Manager System
(1) 数据的安全性保护,保护数据,以防止不合法的使用造成的数据的泄密和破坏
(2)数据的完整性检查, 将数据控制在有效的范围之内,或者保证数据之间满足一定的关系
(3) 并发控制, 对多个用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果
(4) 数据库的恢复, 将数据库从错误状态恢复到某一一已知的正确状态

DBA : 数据库管理员 DataBase Administrators
DBA的主要职能:
1. 决定数据库中的信息内容和结构
2. 决定数据库中的存储结构和存取策略
3. 定义数据的安全性要求和完整性约束条件
4. 监控数据库的运行和使用 ,包括: 周期性的转储数据库(数据文件,日志文件),; 系统故障恢复; 介质故障恢复; 监视审计文件;备份和恢复数据库
5. 数据库的改进与重组: 包括性能的监控与调优;定期对数据库进行重组织,提高系统的性能;需求增加或者改变时,数据库须重构造

DBA的必备技能
1. 数据库安装升级,OS安装升级
2. SQL编程
3. 性能调优
4. 数据库备份与恢复
5. 数据库迁移
6. 跨平台管理不同RDBMS的能力

DDL : 数据定义语言 Data Define Language
牵涉到 表、视图,触发器,条件约束 和索引定义,删除,修改 主要涉及到
Create //创建
Drop // 删除
Alter // 修改
Truncate //一次删除表中所有的数据

DML: 数据操纵语言 Data Manipulation Language
数据的插入,修改,删除
insert
update
delete

DCL : 数据控制语言 Data Control Language
是用来设置或更改数据库用户或角色权限的语句,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等 牵涉到:
Grant : 授权
Revoke: 收回权限
COMMIT : 提交
SAVEPOINT 保存点
ROLLBACK 回滚
SET TRANSACTION 设置当前事务的特性,它对后面的事务没影响

DQL : 数据查询语言
SELECT select_list
  [ INTOnew_table ]
  FROM table_source
  [ WHERE search_condition ]
  [ GROUP BY group_by_expression ]
  [ HAVING search_condition ]
  [ ORDER BY order_expression [ ASC | DESC ] ]

Truncate 与 delete 与drop的区别:

删除的时候还有一个语句 Truncate table 表名
这个关键字的意思是快速的删除一个表中所有行的信息,功能与不带where 的 delete语句相同,但是使用速度比delete快,且使用的系统和事务日志资源少。

速度,一般来说: drop> truncate > delete
安全性上,慎用drop, truncate, 尤其是没有备份的时候

DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项

TRUNCATE TABLE 一次删除表中的所有行, 而且它是通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。但表结构及其列、约束、索引等保持不变,也就是说表仍旧存在着,只是数据没有了。TRUNCATE 和事务无关,一旦删除之后,无法回滚。而且它的操作不能激活触发器 对于有外键约束引用的表,不能使用truncate, 应使用不带where语句的 delete

Drop table 删除表中的数据以及表的定义。数据没有了,表也没有了。它将删除表的结构和被依赖的约束(constrain)、触发器(trigger)、索引(index), 依赖于该表的存储过程/函数将保留,但是变为 invalid 状态。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章