1
2
3
4
5
关系数据库规范化的目的:解决数据库插入异常,删除异常,数据冗余。 函数依赖的问题---若X→Y,且存在X的真子集X′,X′→Y,则称Y对X部分函数依赖 理解掌握范式相关的知识 包括各类范式的定义 判断关系模式所属范式等等 1NF:满足最低要求的叫第一范式 2NF:在第一范式的基础上,且每一个非主属性完全依赖于码 3NF:在2NF的基础上不存在非主属性对码的传递依赖 BCNF:每一个决定因素都包含码 1NF——2NF 消除了非主属性对码的部分依赖 2NF——3NF 消除了非主属性对码的传递依赖 3NF——BCNF 消除了主属性对码的部分和传递依赖 BCNF——4NF 消除非平凡且非函数依赖的多值依赖 掌握SQL的相关知识 包括表增删查改语句 模式的定义和删除 索引的建立和删除 对视图的操作 以及他们的作用 存储过程的概念 作用? 存储过程(Stored Procedure )是一组为了完成特定功能的SQL 语句 集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数 (如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要 对象,任何一个设计良好的数据库应用程序都应该用到存储过程。 存储过程是由流控制和SQL 语句书写的过程,这个过程经编译和优化后 存储在数据库服务器中,应用程序使用时只要调用即可。在ORACLE 中, 若干个有联系的过程可以组合在一起构成程序包。
优点:1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。
2.当对数据库进行复杂操作时(如对多个表进行Update、Insert、Query、Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。
6 3.存储过程可以重复使用,可减少数据库开发人员的工作量。 4.安全性高,可设定只有某用户才具有对指定存储过程的使用权。 了解PL\SQL 如他的作用 了解PL\SQL中过程、函数、程序包、触发器的概念和作用 重
点掌握游标如游标的创建作用等等!
游标是系统为用户开设的一个书局缓冲区,存放SQL语句的执行结果。用户可以通过游标逐一获取记录,并赋给主变量,交由主语言进一步发展
了解几种数据库oracle ,mysql, sql server及其他们的特点区别
Oracle ,sql server
开放性
Oracle是可依跨平台使用的,在所有主流平台上都可运行,完全开放;SQL Server只能用在Windows系统上,没有开放性
可伸缩性,并行性 SQL Server的并行实施和共存模型还不成熟,处理能力有限,伸缩性有限。
平行服务器通过使一组结点共享同一簇中的工作来扩展Window NT的能力,提供高可用性和高伸缩性的簇的解决方案 7
安全性 SQL Server没有任何安全证书 Oracle获得最高认证级别的ISO标准认证 Oracle在性能方面也使明显强于SQL Server的 但在操作性方面SQL Server则要简单得多
Oracle和mysql都是数据库系统,mysql的优点是开源免费,而oracle功能强大,安全、性能、人性化、稳定性等各方面都比mysql好;mysql的缺点就是功能相对较少,面向的对象是一般的小型网站或者系统,大型数据库很少用mysql;oracle的缺点是对硬件的要求十分高,对管理人员的技术要求高。在语法上oracle要复杂得多,相比较mysql有很多特有的函数
8 了解数据库性能的几个相关问题 如回滚机制 索引的使用 存储大量数据时如何维护
数据库,改善数据库性能
存储大量数据的优化问题:优化存储过程,构建临时数据表 合理应用索引 以及全文索引 优化表结构
掌握ODBC编程
了解数据库设计的流程以及需要注意的地方
? 需求分析
? 概念结构设计
? 逻辑结构设计
? 物理结构设计
? 数据库实施
? 数据库运行和维护
进程与线程的区别
通俗的说一个进程就是一个应用程序,线程是进程中的一个实体。各个现成共享进程的资源
了解进程同步和互斥 掌握利用PV操作实现同步和互斥
S:信号量 P:得到资源 V:释放资源
掌握进程调度的几种算法 它们的特点和区别
从就绪的队列中选择一个最先进入就绪队列的进程,把处理器分配给该进程,使之得到执行。进程一旦占有了处理器,就一直运行下去,直到完成或因发生某种事件而阻塞,才退出处理器。不利于短进程。。。
(2) 什么是短作业优先的作业调度算法?
从就绪队列中选择一个估计运行事件最短的进程,将处理器分配给该进程,使之占有处理器并执行,直到该进程完成或因发生某种事件而阻塞,才退出处理器。长进程容易出现饿死状态。。同时也没考虑进程的紧迫程度..
(3) 什么是最高响应比优先的作业调度算法?
从就绪队列中选择一个响应比最高的进程,让其获得处理机并执行,直到该进程完成或因等待某种事件而退出处理器为止。既照顾了短进程,又考虑了进程到达的先后次序..但系统的开销很大,比较复杂 9 10 11 12 13
14 掌握死锁的概念死锁发生的条件以及如何预防死锁,避免死锁,检测和解除死锁
产生死锁的原因:
1、 系统资源不足
2、 进程运行推进的顺序不合理
3、 资源分配不合理
产生死锁的四个必要条件:
1、 互斥:一个资源每次只能被一个进程使用
2、 占有等待:一个进程因请求资源被阻塞时,对已获得的资源占有不释放
3、 不剥夺:进程获得资源后在未使用完之前不可剥夺
4、 循环等待:若干进程之间形成首尾相接循环等待资源
第二篇:张连----数据库与操作系统知识要点总结
数据库与操作系统知识要点总结
一、数据库
(一)概念
1、数据库:
2、关系模型:能够装关系数据的容器在,具有模型表达能力
最常用的关系数据库产品:Oracle、DB2、SQL Server
3、最常用的关系操作:选择、投影、连接、除、并、交、差等查询操作和增加、删除、修改操作
4、关系完整性约束:
实体完整性:必须定义主键
参照完整性:一个表中的外键的取值必须是参照表中主键存在的值或为空(null) 用户定义完整性:设定的约束要满足主义要求(如男 女)
5、Oracle简介
主要产品:Oracle服务器产品、Oracle开发工具、Oracle应用软件
6、数据仓库:
7、数据字典
8、视图:虚表,从一个或多个表或视图提取出来的数据的一种表现形式
可以提高数据的安全性、隐藏数据的复杂性,简化查询语句,分离应用程序与基础表,保存复杂查询等
9、数据块、区、段和表空间
10、索引的作用:
11、序列:用于产生唯一序号的数据库对象,可以为多个数据库用户依次生成不重复的连续整数,通用使用序列自动生成表中的主键值。
最大长度可达38位十进制数
不占用实际存储空间
12、SQL:Structured Query Language
特点:功能一体化、高度非过程化、面向集合的操作方式、多种使用方式、简洁、易学
13、事务控制:由一组相关的SQL语句组成(只能是DML语句),要么全部执行,要么全部不执行。事务是数据库并发控制和恢复技术的基本单位。
原子性、一致性、隔离性、持久性
14、并发运行可能导致的问题
丢失修改、读‘脏’数据、不可重复读
15、E-R关系图1:1 1:N N:N
16、DROP与DELETE的区别
(二)应用
1、SQL *Plus常用命令
Connect system/manager@ORACL
EDIT
;回车 立即执行
/ 立即执行 2、创建表空间 Create tablespace users Datafile ‘d:\...\users01.dbf’ Size 25M 3、创建视图 Create view emp_info_view(deptno,avgsal,empcount) AS Select deptno,avg(sal),count(*) from emp group by deptno; 4、创建序列
Create sequence csusoft_21
minvalue 1
maxvalue 999999999999999999999999999
start with 1
increment by 1
cache 20;
5、创建索引
Create INDEX emp_idx on employee_ (sal);
6、Selcect
Select distinct from emp ;
Select * from emp where deptno between 10 and 20 ;
Select * from emp where deptno sal NOT between 1000 and 20xx ;
Select * from emp where deptno IN (10,30)
7、LIKE
Select * from emp where ename LIKE ‘%s%’;
Select * from emp where ename LIKE ‘_S%’;
Select * from emp where ename LIKE ‘%X_%’ ESCAPE ‘x’;
8、IS NULL或NOT NULL
Select * from emp where deptno IS NULL;
Select * from emp where comm IS NOT NULL;
9、ASC或DESC
Select empno,ename , sal from emp ORDER BY sal ASC;(升序)
Select empno,ename,sal from emp ORDER BY sal DESC;(降序)
10、count() avg() max() min()
Select count (*),avg(sal),max(sal),min(sal) from emp where deptno=10; Select count(DISTINCT deptno) from emp
11、GROUP BY
Select deptno,count(*),avg(sal) from emp GROUP BY deptno,job;
Select deptno,count(*),avg(sal) from emp GROUP BY deptno HAVING avg(sal)>1500
12、交叉连接:二个或多个表之间的无条件连接
Select empno,ename,sal,loc from emp,dept;
内连接:根据指定的连接条件进行连接查询,只有满足连接条件的数据才会出
现在结果集中。
相等连接:Select empno,ename,sal,emp.deptno,dname from emp JOIN dept
ON emp.deptno=10 AND emp.deptno=dept.deptno;
不相等连接:
Select empno,ename, grade from emp JOIN salgrade ON sal >losal AND
sal<hisal AND deptno=10;
自身连接:
Select work.empno,work.ename,manager.empno,manager.ename from emp
work JOIN emp manager ON work.mgr=manager.empno;
外连接:在内连接的基础上,将某个连接表中不符合连接条件的记录加入到结
果集中。
左外连接:在内连接的基础上,将连接操作符中左侧表中不符合连接条件
的记录加入到结果集中,与之对应的连接操作符左路侧列用NULL填充
Select dname,empno,ename from dept LEFT JOIN emp ON
dept.deptno=emp.deptno AND dept.deptno=10
右外连接:在内连接的基础上,将连接操作符右侧表中不符合连接条件的
记录加入到结果集中,与之对应的连接操作符左侧表列用NULL填充
Select empno,ename,dname from dept RIGHT JOIN emp ON
dept.deptno=emp.deptno AND dept.deptno=20
全外连接:在内连接的基础上,将连接操作符两侧表中不符合连接条件的
记录加入到结果集中
13、INSERT INTO
Insert INTO emp(empno,ename,sal,hiredate) values (132,’JOAB’,2500,’20-4月-20xx’);
14、UPDATE SET
Update emp set sal=sal+100,comm=200 where empno=7844;
15、DELETE
Delete from table emp where empno=7844
16、存储过程被命名的PL/SQL块,以编译的形式存储在数据库服务器中,可以在应用程序中进行调用,是PL/SQL程序模块化的一种体现。
Create OR replace PROCEDURE show_emp(
P_deptno emp.deptno %TYPE)
AS
/**/
BEGIN
/**/
EXCEPTION
/**/
END show_emp;
(三)范式
第一范式:
第二范式:
第三范式:
二、操作系统
1、 进程与线程区别
2、 产生死锁的四个必要条件
3、 同步与异步
4、 操作系统的基本特征:并发、共享、虚拟和异步
5、 并行与并发的区别
6、 进程的状态图