当前位置:Gxlcms > 数据库问题 > Oracle数据库编程

Oracle数据库编程

时间:2021-07-01 10:21:17 帮助过:4人阅读

DATAFILE ‘filename’ [SIZE integer [K|M]]

[AUTOEXTEND [OFF|ON]];

e. 模式: 英文Schema,模式是对用户所创建的数据库对象的总称。 模式对象包括表、视图、索引、同义词、序列、过程和程序包等。 与用户的关系:模式名称就是控制该模式的用户名称。 八. 实例与数据库关系 1. 两者关系 一个实例只能管理一个数据库 一个数据库可能由多个实例同时管理  2. 单实例与多实例 一个数据库只有一个实例管理,叫单实例数据库。 一个数据库同时由多个实例管理,叫多实例数据库。 九. PL/SQL程序简介 1. PL/SQL程序组成 组成PL/SQL程序的最基本的单元是PL/SQL块。  2. PL/SQL块的分类 A. 匿名块:直接执行的块 B. 命名块:通过名称调用的块 a. 子程序(包括存储过程和函数):类似JAVA的方法和函数 b. 触发器:类似JAVA的事件处理代码,当某件事情发生时自动执行 c. 包:类似JAVA的package,主要的作用组织代码和避免命名冲突。  十. PL/SQL运行机制 1. 了解PL/SQL PL/SQL是对标准SQL的扩充。 PL/SQL执行需要PL/SQL引擎执行,PL/SQL引擎可能一般安装在服务端,但也有可能安装在客户端。  2. 运行机制 A. 服务器端的PL/SQL引擎(如Oracle服务器)执行过程 a. 标准SQL交给SQL引擎处理 b. 非标准部分交给PL/SQL引擎处理 B. 客户端的PL/SQL引擎(如Oracle Forms)执行过程 a. 标准SQL交给服务器的SQL引擎处理 b. 非标准部分交给PL/SQL引擎在客户端处理,如果没有SQL,则所有PL/SQL 都是在客户端处理的。  十一. PL/SQL块的编译过程 1. 为什么要编译 PL/SQL块必须编译为机器码才能够执行  2. PL/SQL块 a. 匿名块:执行前编译 b. 命名块: 在创建时或修改进即时编译 3. 编译过程 A. PL/SQL引擎 B. 语法检查:检查PL/SQL代码的语法或编译错误。

a. 绑定:如果语法检查通过,编译器则为Oracle存储数据的程序变量分配一个存储地址,这个过程称为绑定。绑定允许Oracle在程序运行时引用存储地址。

b. 检查对表、列等对象的引用

C. 产生伪代码,并且设置合法状态 

注意,即使状态设置为合法,如果在执行对应的表不存在,则执行仍会失败,并且状态自动设置为不可用。

十二.  使用PL/SQL的好处   1. 为什么要使用PL/SQL a. 减少网络流量,提高应用程序性能 b. 提供模块化程序开发能力,简化了开发和维护 c. 具有良好的兼容性,不同的开发工具可以使用相同的PL/SQL脚本 d. 允许定义标识符,增加了程序可读性 e. 提供了程序控制结构,增强的业务处理能力 f. 提供了异常处理,让PL/SQL程序更健壮 十三. 数据字典  a. 数据字典保存数据对象和段的信息,它是一个存放在SYSTEM表空间的只读对象,不允许任何人对其进行修改。 b. 数据库对象包括:用户、角色、表空间、表、视图、簇、类型、同义词、序列、索引、数据库链接、存储过程、函数、包、触发器等。 c. Oracle将这些数据库对象组合到一个称为Schema(翻译为模式)的集合中。一个Schema只能够被一个数据用户所拥有,并且Schema的名称与这个用户的名称相同。 十四. 表    在Oracle中表的概念以及创建、删除、修改表的语法与其它数据库基本相同。  Oracle表常见的数据类型:如表  

数据类型

SQLServer

Oracle

整数

int,smallint,bigint

number(m)

小数

decimal

number(m,n)

定长字符串

char

char

变长字符串

varchar

varchar2

日期

smalldatetime,datetime

date

十五. 同义词 1. 为什么用同义词 当数据库对象如表修改名称以后,通过使用同义词可以避免重新修改SQL语句,从而减少系统维护工作量。 2. 创建同义词 a. 公有同义词: CREATE PUBLIC SYNONYM 同义词名称 FOR 数据库对象名; b. 私有同义词: CREATE   同义词名称 FOR 数据库对象名; 3. 删除同义词 语法:drop SYNONYM  同义词; 十六. 视图(VIEW)是从一个或多个表中通过查询语句生成的一种虚表。数据库中只存储视图的定义(存在数据字典中) 1. 创建视图 语法:create or replace view 视图名 as 查询; 2. 使用视图 示例:select * from 视图名 where 条件; 3. 删除视图 语法:drop view 视图名; 十七. 序列:是Oracle数据库的一种对象,可以给应用程序提供基本连续增加并保持唯一的数值。 1. 为什么要用序列 主要用于实现数据库表的主键列的自动增长。 2. 创建序列 语法:create sequence 序列名 3. 使用序列 语法:序列名.nextval 语法:序列名.currVal 4. 删除序列 语法:drop sequence 序列名 案例 添加学生,学号使用自动编号。                    

Oracle数据库编程

标签:

人气教程排行