重新学习数据库知识点1

来源:互联网 发布:最低价网淘宝 编辑:程序博客网 时间:2024/06/05 18:42

条理不是很清晰!自己复习用!欢迎咨询,探讨!!笼统总结了部分知识点,刷面试题的时候用到的!!

数据库重新学习

绪论

数据库db

数据库管理系统dbms

数据库系统 dbs

数据管理的三个阶段:人工管理文件管理数据库管理

优点:数据结构化,冗余度小,共享性高,易扩充,独立性高

数据控制的功能:安全性保护,完整性保护,并发控制,数据库恢复

数据模型包括(概念模型,逻辑模型和物理模型)

共同包括:数据结构,数据操作,数据的完整性约束

概念模型:e_r图;实体间关系有:一对一,一对多,多对多 

逻辑模型:层次,网状,关系

关系模型的数据结构是一张二维表;

关系数据库

候选码:能唯一的标识一个元组的属性组

主码:从候选码中选定一个为主码

主属性:候选码的属性

全码:所有属性均为候选码

关系的完整性约束:

实体完整性:主属性不能为空

题:要求 userid作为user表中元组的唯一标识,这属于关系的(实体完整性)

参照完整性:外键必须为空值或被参照列上的值

用户定义的完整性:满足用户提出的约束条件

关系代数:u n  -×笛卡儿积

6:选择

Π:投影

��:链接

÷:除

 

SQL

SQL:结构化查询语句,是关系数据库的标准语言。

SQL主要功能:数据查询select,数据操纵insert updatedelete,数据定义creat drop alter和数据控制 grant revoke与一体。

数据库的三级模式:关系数据库也有型和值。模式:是数据库中全体数据的逻辑结构和特征的描述。反映数据结构及其联系。

1模式:一个数据库只有一个模式

2外模式:数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,一个数据库可以有多个外模式

3内模式:存储模式,一个数据库只有一个内模式。他是数据物理结构和存储方式的描述。

二级映像:外模式/模式映像数据的逻辑独立性

模式/内模式映像数据的物理独立性

数据库中,数据的物理独立性是指()。

正确答案: C  你的答案: A (错误)

数据库与数据库管理系统的相互独立

用户程序与DBMS的相互独立

用户的应用程序与存储在磁盘上数据库中的数据是相互独立的

应用程序与数据库中数据的逻辑结构相互独立

数据库中只存放视图的定义不存放不存放视图对应的数据

数据定义:对象可以为:模式,表,视图,索引。可以用 creat drop操作。

l 模式:

创建:create schema <模式名> authorization <用户名>可以在这个模式定义中进一步创建基本表,视图

     删除:drop schema <模式名> <cascade|restrict>

l :

 创建:create table<表名><列名>数据类型 [列级完整性约束条件]

<列名>数据类型 [列级完整性约束条件]

………..,[表级完整性约束]);

列级完整性约束:primarykey unique not null

表级完整性约束:foreignkey 外键 references被参照表(被参照列)

               Primarykey(1,2)

可以在定义表时给出模式名

         修改:alter table <表名>{

Add新列名数据类型完整性约束

Drop完整性约束名

Alter column列名数据类型

}

         删除:drop table <表名>[restrict|cascade]

l 索引:索引的建立是为了加快查找和排序的速度,

     唯一索引 unique

聚簇索引 cluster ,一个表上只能建立一个,对于经常更新的列不宜建立聚簇索引

建立:create unique / cluster index 索引名 on表名(列名次序,列名次序)

删除:drop index索引名

索引存在数据字典中

 

 

数据查询:重点,明天进行,会有一章专门总结

SELECT语句中使用MAX(列名)时,列名应该(

正确答案: B   你的答案: C (错误)

必须是字符型

必须是数值型

必须是数值型或字符型

不限制数据类型

数据更新:

插入数据:1插入元组:insert into 表(列名,列名) values(值1,值2

2插入子查询结果: insert into (列名,列名)子查询

修改数据:update set列名 =表达式 where 条件

删除数据:delete from where条件

视图:

建立:create view 视图名(列1,列2 as 子查询 with check option(保证对视图进行增,删,改时仍满足子查询条件)

更新:和表的更新一样

 

 

数据库安全性:

用户标识与鉴别:用户标识和口令

存取控制:定义用户权限将用户权限登记到数据字典中  合法性检查

自主存取控制:定义用户权限是定义这个用户可以在哪些数据库对象上进行哪些类型的操作。授权:authorization

    Grantrevoke语句:

Grant语句 grant 权限 on 对象类型对象名  to 用户 with grant  option(在传播)

Grant all privileges on table xx xxto  u2 u3

  Revoke from  cascade restrict 

把对关系SC的属性GRADE的修改权授予用户ZHAOT-SQL语句是(    )

GRANT GRADE ON SC TO ZHAO

GRANT UPDATE ON SC TO ZHAO

GRANT UPDATE (GRADE) ON SC TO ZHAO

GRANT U  PDATE ON SC (GRADE) TO ZHAO

 

下列sql语句中哪条语句可为用户zhangsan分配数据库userdbuserinfo的查询和插入数据权限()。

grant select,insert on userdb.userinfo to'zhangsan'@'localhost'

 

创建数据库模式的权限:create  users  with (dba  resource connect) 系统的超级用户才可以

角色的授权和回收,with admin option

强制存取控制:安全级别更高

主体和客体 密级许可证

视图机制

审计

数据加密

 

 

数据库完整性:

提供定义完整性约束条件的机制

提供完整性检查的方法

违约处理

实体完整性:列级定义主码  对实体完整性进行检查时需要进行全表扫描,需要在主键上建立索引 b+

参照完整性:检查时的违约处理:拒绝 no action 级联 cascade  设置为空

用户定义的完整性:not null   unique   

 

check   :sex char(2) check (sex in  )

元组上的约束 check

完整性命名子句:constraint  primary foreign checked 句子

触发器:定义触发器:create trigger before after事件 on表名 for each row

行级 statement 语句级 when触发条件 触发动作体

删除触发器: drop trigger  on 表名

 

 

 

 

原创粉丝点击