- 浏览: 61983 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
LuckyRong:
请问下楼主你的StringUtil是什么类啊?做什么处理的?
日期工具类 -
boshope:
这里面,没有对applicationContext.xml文件 ...
Java定时器timer.schedule在Web中间隔执行任务和定时 -
ytu_wu:
好多哦,努力!加油!路还很长!
成为Java高手的25个学习要点
ORACLE PL/SQL
1. PL/SQL 是 SQL 语言存储过程的扩展 , 包括两部分 : 一部是数据库引擎部分 , 另一部分是可嵌入到其他许多产品 (C,JAVA) 工具中的独立引擎 . 可将这两部分称为数据库 PL/SQL 和工具 PL/SQL. 以下介绍的是数据库 PL/SQL
2. PL/SQL 语言由以下几部分组成 :
1) 数据库定义语言 (DDL). 用于执行数据库中的任务 , 对数据库以及数据库中的各种对象进行创建 . 删除 , 修改 .
命令
功能说明
ALTER PROCEDURE
重新编译存储过程
ALTER TABLE
修改表
ANALYZE
收集数据库对象性能统计资料
ALTER TABLE AND CONSTRAINT
在已有表上增加约束
CTREATE TABLE
创建表
CREATE INDEX
创建索引
DROP TABLE
删除表
DROP INDEX
删除索引
2) 数据操纵语言 (DML). 用于操纵数据库中各种对象 , 检索 , 或修改数据 . 在使用 DML 前 , 必须获得相应的权限 .
命令
功能说明
SELECT
查询数据库
INSERT
插入一行记录
UPDATE
修改数据库记录
DELETE
从表中删除数据
3) 数据控制语言 (DCL) 用于安全管理 , 确定哪些用户可以查看或修改数据库中的数据 ,DCL 包括的主要语句及其功能如下 :
命令
功能说明
GRANT
将用户或角色授与用户和角色
REVOKE
从用户或角色收回权限
PL/SQL 是面向过程的程序结构 , 包括以下几点 :
1) 变量和类型
2) 控制语句
3) 过程和函数
4) 对象类型和方法
3. PL/SQL 结构 :
DECLARE
/** 变量声明 **/
BEGIN
Statements
Exceptions
END
其中变量声明和异常是可选的 .
4. PL/SQL 标识符 : 所有的大小写英文字母 , 数字 0-9, 常用符号 ( 无 ”-“), 最大标识符为 30 个字符
5. PL/SQL 运算符 : 算术运算符 {+,-,*, / ,**( 指数 ),||( 连接 )}, 关系运算符 { 常用比较运算符 ,BETWEEN AND ,IN ,LIKE,IS NULL}; 逻辑运算符 {AND , OR ,NOT}
6. 其他符号
符号
意义
样例
( )
列表分隔
(‘john’,’rose’)
;
语句结束
Procedure_name(arg1,arg2)
.
项分离
Select * from account.table
‘
字符串定界符
If var1=’a+1’
:=
赋值
a:=a+1
||
并置
Fullname:=’a’||’b’
--
注释符
--this is a comment
/* */
注释定界符
/*this too is a comment*/
7. PL/SQL 变量 : 变量的类型可以是 PL/SQL 中的 , 也可以是自定义的 .
变量的定义 :< 变量名 >< 数据类型 >[( 宽度 ):=< 初始值 >]
如 :count varchar2(20):=’1’;
变量的属性包括变量名和数据类型
%TYPE 属性提供了变量和数据列的数据类型 .
如 :my_xh XS.XH%TYPE 表示变量 my_xh 和字段 XH 拥有相同的数据类型 .
使用 %TYPE 有两个优点 :
1) 不必知道 XH 列的确切数据类型
2) 如果改变了 XH 的列定义 ,my_xh 的数据类型在运行时可自动修改 .
%ROWTYPE 用于声明表的行记录 . 对用户自定义的域 . 记录包含唯一的命名域 , 具有不同的数据类型 .
DECLARE
TYPE TimeRec is RECORD (HH number(2),MM number(2));
TYPE MeetingTyp is RECORD
(
Meeting_Date date,
Meeting_Time TimeRec,-- 嵌套变量
Meeting_Addr varchar2(20),
Meeting_Purpose varchar2(50)
)
DECLARE
cj_rec XS_KC%ROWTYPE
引用
my_xh := cj_rec.xh;
如果使用了游标提取 XH,KCH,CJ,XF 则可以使用 %ROWTYPE 声明一个记录保存相同的信息 .
DECLARE
CURSOR
IS
SELECT XH,KCH,CJ
FROM XS_KC
Cj_rec c1%ROWTYPE;
当执行下面的语句时
FETCH c1 INTO cj_rec;
在 XS_KC 表的 XH 列的值就是赋于 cj_rec 的 XH 域
变量的作用域 : 位于 BEGIN END 之间
PL/SQL 常量定义 :
< 常量名 >CONSTANT< 数据类型 >:=< 值 >
PL/SQL 常用数据类型 :
VARCHAR 类型
NUMBER 类型
DATE 类型
BOOLEAN 类型
* 用户自定义数据类型
语法格式 :
TYPE typename IS system_data_type
Typename 是用户自定义的数据类型名称 ,system_date_type 是自定义类型依赖的基类型
定义一个记录类型
TYPE xs_rec IS RECORD
{
Xh number(2) not null:=1;
Xm char(8)
}
数据类型转换 :
1) TO_CHAR( 将 NUMBER,DATE 转换成 VARCHAR2 类型 )
2) TO_DATE( 将 CHAR 转换成 DATE 类型 )
3) TO_NUMBER: 将 CHAR 转换成 NUMBER 类型
PL/SQL 的自动转换 :
1) 字符型和数字型
2) 字符型和日期型
8. PL/SQL 基本程序控制结构 :
1. 条件结构 :
IF 逻辑结构 (3 种表达式 )
1)IF-THEN
语法结构 :
IF boolean_expression THEN
Run_experssion;
ENDIF;
2)IF-THEN-ELSE
语法格式 :
IF boolean_expression THEN
Run_expression;
ELSE
Run_expression2;
ENDIF;
3)IF-THEN-ELSIF-THEN-ELSE
语法格式 :
IF boolean_expression1 THEN
Run_expression1;
ELSIF boolean_expression2 THEN
Run_expression2;
ELSE
Run_expression3;
ENDIF;
2. 循环结构
1.LOOP – EXIT –END 循环
语法格式 :
LOOP
Run_expression ;
IF boolean_expression THEN
EXIT;
ENDIF;
END LOOP;
2.LOOP – EXIT-WHEN-END
语法格式 :
LOOP
Run_expression
EXIT WHEN boolean_expression
ENDLOOP
3.WHILE-LOOP-END
语法格式 :
WHILE boolean_expression
LOOP
Run_expression
END LOOP
4.FOR – IN –LOOP – END
语法格式 :
FOR count IN count_1 ..count_n
LOOP
Run_expression
END LOOP
说明 :
Count 是循环变量 ,IN 确定循环变量的初始值 count_1 和终值 count_n, 在循环变量之间的范围之间的是分隔符
发表评论
-
Oracle插入数据时获取自增ID
2010-12-07 13:09 1377自增字段: 表atable(id,a) id需要自增 首先建立 ... -
ORACLE JOB 设置
2010-11-27 23:52 1321Job的参数: 一:时间间隔执行(每分钟,每天,每 ... -
Oracle创建删除用户、角色、表空间、导入导出、...命令总结
2010-11-27 22:25 1330//创建临时表空间 create temporary tabl ... -
为Oracle增加计划任务
2010-11-27 22:20 897经常在SQL Server上创建作业去定时执行某些任务,在Or ... -
在Oracle中实现定时操作
2010-11-27 22:16 779常要oracle数据库定时的 ... -
定时自动操作数据库——Oracle JOB 用法小结
2010-11-27 20:25 891Sql代码 一、设置 ... -
Oracle 常用SQL技巧收藏
2010-11-27 20:10 6701. SELECT子句中避免使用 “*” 当你想在SE ... -
oracle命令集合
2010-11-25 22:47 1575Oracle 命令集合 制作人: 陈杉 1、 创建表空 ... -
Oracle导入/导出数据库的语法
2010-11-25 22:46 900oracle中除了在Oracle编辑器中用图形化的方式导入文理 ... -
java中调用ORACLE存储过程
2010-11-25 20:20 534一:无返回值的存储过程 存储过程为: CREATE OR ... -
如何把数据导入不同的表空间
2010-07-27 21:25 577文章来源:http://blog.csdn.net/jimho ... -
sql 中 case when 语法
2010-06-29 09:54 895sql语言中有没有类似C语言中的switch case的语句? ... -
in 和 Exists的用法区别
2010-06-18 10:48 7161. EXISTS的执行流程 select * ... -
Oracle常用经典SQL查询
2010-05-16 13:56 663oracle常用经典SQL查询 常用SQL查询: 1、查看表 ... -
oracle 游标以及游标变量
2010-05-14 13:23 798ORACLE 游标 一. PL/SQL 是用游标来管理 ... -
ORACLE存储过程
2010-05-14 13:22 6361 、创建存储过程 create or replace p ... -
oracle中的四种连接
2010-05-14 13:20 7471. 连接 : 将两 ... -
oracle过程,函数,程序包
2010-05-13 23:47 677过程,函数,程序包 之前学习的PL/SQL块是匿名的,不能将 ... -
ORACLE 数据库名、实例名、ORACLE_SID的区别
2010-05-13 23:45 1067数据库名(DB_NAME)、实例名(Instance_name ... -
Oracle手工创建数据库的步骤
2010-05-13 23:41 1562Oracle除自带的DBCA可以创建数据库以为,还有另外一种创 ...
相关推荐
Topics covered: How to use Oracle PL/SQL in all its manifestations through Oracle9i. Fundamentals of program structure (loops, cases, exceptions, etc.) and execution get attention, as do data types, ...
《Oracle PL/SQL程序设计(第5版)(套装上下册)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何...
Considered the best Oracle PL/SQL programming guide by the Oracle community, this definitive guide is precisely what you need to make the most of Oracle’s powerful procedural language. The sixth ...
Oracle PL/SQL实例精解 student模式 数据库建立代码 包括数据库的建立、索引等。样本数据的插入。
oracle pl/sql实例精讲student数据库模式
PL/SQL是Oracle对标准数据库语言的扩展,Oracle公司已经将PL/SQL整合到Oracle 服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本教程将以循速渐进的方式讲述PL/SQL基础语法,结构和组件、以及...
Oracle PL/SQL实例编程 Oracle PL/SQL实例编程 Oracle PL/SQL实例编程
oracle pl/sql从入门到精通 配套源代码
Oracle PL/SQL专家指南-高级PL/SQL解决方案的设计与开发
Oracle PL/SQL学习官方教材,英文版,覆盖了PL/SQL的所有知识,适合入门者或作为参考资料.
这是我自己根据书本《ORACLE PL/SQL从入门到精通》何明,写的笔记,有目录。
oracle PL/SQL pdf学习资料oracle PL/SQL pdf学习资料oracle PL/SQL pdf学习资料oracle PL/SQL pdf学习资料oracle PL/SQL pdf学习资料
Oracle PL/SQL程序设计,经典书籍,既可以当教材学习,也可以当手册查询。
《精通Oracle PL/SQL》书中示例源码
oracle pl/sql 编程大全,希望能对想学oracle或者oracle新手以及需要用到这方面知识的朋友有点帮助。
英文版Oracle PL/SQL by Example(4th Edition)
《Oracle PL/SQL程序设计(第5版)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何有效地使用它。...
oracle pl/sql最佳实践
ORACLE PL/SQL编程之八ORACLE PL/SQL编程之八ORACLE PL/SQL编程之八ORACLE PL/SQL编程之八
This PPT is about the most important features and critical best practices presented by Steven Feuerstein, a guru of Oracle PL/SQL language.