Oracle知识点总结(共7页).doc
《Oracle知识点总结(共7页).doc》由会员分享,可在线阅读,更多相关《Oracle知识点总结(共7页).doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上Oracle知识点总结体系结构:数据库的体系结构是指数据库的组成、工作过程与原理,以及数据在数据库中的组织与管理机制。体系结构包括:实例(instence),数据库文件(database),用户进程(user process),服务器进程(server process),以及其他文件(如参数文件(parameter file),密码文件(password file),归档日志文件(archive log file)等)。Oracle服务器由数据库文件和数据库实例组成。其中数据库实例包括SGA(即内存结构的集合)和管理数据库的后台进程。数据库文件包括三种:数据文件(da
2、ta files),控制文件(control files)和重做日志文件(redo log files)。Oracle中的3个主要内存区域是: 系统全局区域(system global area,SGA)-当数据库实例启动时会首先分配 程序全局区域(program global area,PGA) 用户全局区域(user global area,UGA)SGA内存结构包括: 共享池(Shared Pool),数据缓冲区(Database Buffer Cache),重做日志缓冲区(Redo Log Buffer Cache)。共享池的作用:共享池由库缓存和数据字典缓存组成。缓存和共享SQL或P
3、L/SQL代码;数据缓冲区的作用:存储从数据文件中读入的数据,提高查询速度;重做日志缓冲区的作用:变化前和变化后的数据在写入数据缓冲区前都会先写入重做日志缓冲区,这样在数据恢复时,Oracle就知道哪些需要回滚。日志数据首先产生于重做日志缓冲区,当重做日志缓冲区的日志数据达到一定数量时,由日志写进程LGWR将日志数据写入重做日志文件中。PGA是为单独的服务器进程存储私有数据的内存区域,只为各个服务器进程提供一个PGA。PGA只能由他们的服务器进程访问。UGA是用于存储会话状态的内存区域。UGA的位置依赖于服务器是运行在共享服务器模式中,还是专用服务器模式中。在专用服务器模式中,UGA会在PGA
4、中分配,只能够由服务器进程访问。Oracle进程主要有用户进程、服务器进程和后台进程。用户进程是一个需要与Oracle服务器进行交互的程序。服务器进程犹如一个中介,完成用户的各种数据服务请求,而把数据库服务器返回的数据发给客户端。后台进程主要作用是协调好系统的性能。其主要包括进程监控进程(PMON,服务器进程的管理和维护)、系统监控进程(SMON,在数据库出现故障时进行实例恢复)、数据库写进程(DBWR,主要负责将数据缓冲区内的数据写到数据文件)、重做日志写进程(LGWR,主要负责将重做日志缓冲区内的数据写到重做日志文件)及检查点进程(CKPT,其作用是保证所有修改过的数据库缓冲区都被写入数据
5、库文件)。以上5个进程也是数据库启动过程中必须启动的。数据库启动和关闭数据库的启动3个状态:1:NOMOUNT 只打开数据库实例 2:MOUNT 打开实例并读取控制文件 3:OPEN 打开数据库按123顺序启动数据库的关闭3个状态:1:CLOSE 关闭数据库2:DISMOUNT 3:SHUTDOWN 关闭数据库实例事务事务的概念:事务是一组逻辑工作单元,它由一条或多条SQL语句组成。事务的4个特性:原子性,一致性,隔离性和持久性事务控制:commit,rollbackSQL语言SQL语言分为数据定义语言(DDL)、数据操纵语言(DML)和数据控制语言(DCL)。DDL用于定义SQL模式、基本表
6、、视图和索引的创建和撤消操作。常用命令有:CREATE、ALTER、DROP。DML用于数据的插入、修改、删除和查询。常用命令有:INSERT、UPDATE、DELETE、SELECT。DCL用于对基本表的授权、完整性规则的描述和事务的控制等。常用的命令有:GRANT、REVOKE、COMMIT、SAVEPOINT、ROLLBACK。Char和varchar2两种数据类型的区别:在数据库中char(n)表示固定长度n的字符串,当实际数据不足定义长度时,将使用空格补全右边不足位,当实际数据的长度大于其固定长度时,Oracle将不允许数据存储于对应列或者变量中,并抛出异常;而varchar2(n)
7、是可变长的字符串,意味着该列或变量的最大长度不大于n,但当实际数据小于n时,并不在其右端补齐空格。delete和truncate的区别。Delete是DML语句,在删除数据时要记录重做信息,且删除数据后不释放表空间,速度慢。Truncate是数据定义语言,执行后数据直接删除且释放表空间,不记录日志信息,速度快。PL/SQL语言PL/SQL语言的叙述:PL/SQL是一种块结构的语言,它将一组语句放在一个块中。构成PL/SQL程序的基本单元是逻辑块(如过程、函数或匿名块),每个逻辑块对应要解决的问题或子问题。PL/SQL块共分为3个部分,分别为声明部分、可执行部分和异常处理部分。属性数据类型包括两
8、种,分别是%TYPE和%ROWTYPE。1、%TYPE将某种数据类型的变量或列提供给其他变量。其语法格式为:var1 table_name.column_name%TYPE;其中声明了变量var1,它的数据类型与table_name表中的column_name字段的数据类型相同。2、%ROWTYPE提供一种表示表中的某行的记录类型。 其语法格式为:var1 table_name%ROWTYPE;其中声明了变量var1,可以用来存储从table_name表中提取的一个记录。过程、函数、程序包过程和函数的区别:过程没返回值,而函数有返回值。程序包是对相关过程、函数、变量、游标和异常等对象的封装。程
9、序包由规范和主体两部分组成。规范可以在没有程序包主体的情况下存在,主体不能在没有程序包规格说明的情况下存在。游标和触发器游标的4种属性:%Isopen 、%found、%notfound、%rowcount。使用游标的4个步骤:定义游标(declare)、打开游标(open)、循环取数据(fetch)、关闭游标(close)。显式游标和隐式游标在使用过程中的区别:显示游标使用时要定义、隐式游标不需要定义,在上下文中的dml语句默认使用隐式游标。触发器定义:触发器是当特定事件出现时自动执行的代码块。触发器与过程的区别:过程是由用户或应用程序甚至是触发器显式调用的,而触发器是由Oracle根据发生
10、的事件而隐式激活的,它不能被直接调用执行。触发器的类型及其运行时机:Oracle触发器分为DML触发器、模式(DDL或用户事件)触发器和数据库级触发器。1:DML触发器:当DML语句在表中发生时执行。DML语句包括以下3种类型:a.语句级触发器:无论受触发语句影响的行数是多少,都只激活一次。b.行级触发器:每当触发器语句影响表时就会激活行级触发器,行级触发器在被修改的每一行上执行一次。c.INSTEAD OF触发器:允许用户修改不能使用DML语句修改的视图。INSTEAD OF触发器只可用于视图,不可用于表。2:模式(DDL或用户事件)触发器:在数据库模式中执行DDL语句时激活。3:数据库(系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 知识点 总结
限制150内