数据库基础

 

数据库产品分类:

 

数据库的分类:

关系型数据库:

大型:Oracle,DB2

中型:SQL-SERVER,Mysql等

小型:access等

非关系型:memcached,mongodb,redis(同步到磁盘)

两种数据库的区别:

关系型数据库:安全(保存磁盘基本不可能丢失),容易理解,比较浪费空间(二维表)

非关系型数据库:效率高,不安全(断点丢失);

关系型数据库:

什么是关系型数据库:

是一种建立在关系模型(数学模型)上的数据库。

关系模型包含三个方面:

数据结构:数据存储的问题,二维表(列和行)

操作指令集合:所有SQL语句。

完整性约束:表内数据约束(字段与字段),表与表之间的约束。

关系型数据库特点:

1.如果表中对应的某个字段没有值(数据),但是系统依然要分配空间(所以比较浪费空间)

关键字说明:

数据库:database

数据库系统:DSB(database system)数据库管理系统,专门管理数据库。

DBA:database administrator,数据库管理员。

行/记录:row/record,本质是一个东西:都是指表中的一行(一条记录);

列/字段:column/field;本质是一个东西。

 

SQL语言共分为四大类:

数据查询语言DQL,

数据操纵语言DML,

数据定义语言DDL,

数据控制语言DCL。

1. 数据查询语言DQL

数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE

子句组成的查询块:

SELECT <字段名表>

FROM <表或视图名>

WHERE <查询条件>

 

2 .数据操纵语言DML

数据操纵语言DML主要有三种形式:

1) 插入:INSERT

2) 更新:UPDATE

3) 删除:DELETE

 

3. 数据定义语言DDL

create alter drop

数据定义语言DDL用来创建数据库中的各种对象-----表、视图、索引、同义词、聚簇等如:

CREATE TABLE/VIEW/INDEX/SYN/CLUSTER

| | | | |

表 视图 索引 同义词 簇

DDL操作是隐性提交的!不能rollback

 

4. 数据控制语言DCL

数据控制语言DCL用来授予或回收访问数据库的某种特权

并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。如:

1) GRANT:授权。

2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一点。

回滚---ROLLBACK

回滚命令使数据库状态回到上次最后提交的状态。其格式为:

SQL>ROLLBACK;

3) COMMIT [WORK]:提交。

提交数据的三种类型:

         在数据库的插入、删除和修改操作时,只有当事务在提交到数据库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看到所做的事情,别人只有在最后提交完成后才可以看到。

(1) 显式提交

用COMMIT命令直接完成的提交为显式提交。其格式为:

SQL>COMMIT;

(2) 隐式提交

用SQL命令间接完成的提交为隐式提交。这些命令是:

ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,

EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。

(3) 自动提交

若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,

系统将自动进行提交,这就是自动提交。其格式为:

SQL>SET AUTOCOMMIT ON;

数据库三范式:

    第一范式就是原子性,字段不可再分割;原子性

    第二范式就是完全依赖,没有部分依赖;唯一性

    第三范式就是没有传递依赖;没有冗余性

 

 

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