一些oracle的经验

注:再写存储过程的时候,在for循环里要写begin和end,这样就可以写exception ,让这条错误数据回滚,然后记录错误日志,commit

关键字: oracle 存储过程

1.基本结构 
CREATE OR REPLACE PROCEDURE 存储过程名字 

    参数1 IN NUMBER, 
    参数2 IN NUMBER 
) IS 
变量1 INTEGER :=0; 
变量2 DATE; 
BEGIN

END 存储过程名字

2.SELECT INTO STATEMENT 
  将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条 
  记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND) 
  例子: 
  BEGIN 
  SELECT col1,col2 into 变量1,变量2 FROM typestruct where xxx; 
  EXCEPTION 
  WHEN NO_DATA_FOUND THEN 
      xxxx; 
  END; 
  ...

3.IF 判断 
  IF V_TEST=1 THEN 
    BEGIN 
       do something 
    END; 
  END IF;

4.while 循环 
  WHILE V_TEST=1 LOOP 
  BEGIN 
XXXX 
  END; 
  END LOOP;

5.变量赋值 
  V_TEST := 123;

6.用for in 使用cursor 
  ... 
  IS 
  CURSOR cur IS SELECT * FROM xxx; 
  BEGIN 
FOR cur_result in cur LOOP 
  BEGIN 
   V_SUM :=cur_result.列名1+cur_result.列名2 
  END; 
END LOOP; 
  END;

7.带参数的cursor 
  CURSOR C_USER(C_ID NUMBER) IS SELECT NAME FROM USER WHERE TYPEID=C_ID; 
  OPEN C_USER(变量值); 
  LOOP 
FETCH C_USER INTO V_NAME; 
EXIT FETCH C_USER%NOTFOUND; 
    do something 
  END LOOP; 
  CLOSE C_USER;

8.用pl/sql developer debug 
  连接数据库后建立一个Test WINDOW 
  在窗口输入调用SP的代码,F9开始debug,CTRL+N单步调试

时间: 2024-08-28 19:59:22

一些oracle的经验的相关文章

Oracle数据库经验系列---第一篇

1)改变oracle 11g r2 中sql developer中查询出来的结果的日期显示类型,即会话日期类型的设置: alter session set nls_date_format = 'YYYY-MM-DD HH24:MI:SS'; oracle加字段: alter table operator_daily add(op_type number(11)); 2)函数dense_rank()是连续排序,有两个第二名时仍然跟着第三名. 3)函数rank()是跳跃排序,有两个第二名时接下来就是

一旦配置oracle em经验

对oracle10grac构造em,原本很easy事儿,但它需要一个很长的时间,记录下来.MEMO. 首先,例如,报告了以下错误: [[email protected] admin]$ emca -config dbcontrol db STARTED EMCA at Aug 17, 2014 9:06:47 AM EM Configuration Assistant, Version 10.2.0.5.0 Production Copyright (c) 2003, 2009, Oracle.

深入理解Oracle RAC 12c

深入理解Oracle RAC 12c(顶尖专家权威指南唯一最新版数据库著作 Oracle第一社区技术大牛翻译 Amazon五星推荐) [美]Syed Jaffar Hussain(赛义德 贾法尔 侯赛因),Tariq Farooq(塔里克 法鲁克),Riyaj Shamsudeen(瑞亚吉沙姆斯丁),Kai Yu(于凯) 著   赵燚 梁涛 程飞 李真旭 译 ISBN 978-7-121-24066-9 2014年10月出版 定价:99.00元 488页 16开 编辑推荐 <深入理解 Oracl

个人经验,记忆力不行 有些还没有整理

8年PHP 9年JAVA 10年C++(已没用) 10年ASM(已没用 ) 4年C#求一份兼职 技能树:php,java,javascript,C#,delphi,c++/c,汇编,mysql,oracle框架经验:thinkphp,bootcss,jq,mfc,wsdk,jfinal项目经验:PHP:商城系统,网教系统,分分彩/时时彩,游戏道具销售系统java:银行中控系统 IM服务端C++/c:FTP客户端工具 FTP服务端工具 QQ离线挂机 QQ农场挂机 IOCP棋牌服务端(非接口部分)汇

【干货】ORACLE-AWR报告分析

1.什么是AWR? AWR (Automatic Workload Repository) 是自动负载信息库的英文缩写,AWR报告是Oracle 10g以后版本提供的一种性能收集和分析工具,能提供一个时间段内整个系统资源使用情况的报告,通过报告可以了解一个系统的整个运行情况,生成的报告包括多个部分. AWR每小时对v$active_session_history视图(内存中的ASH采集信息,理论为1小时)进行采样一次,并将信息保存到磁盘中,并且保留7天,7天后旧的记录才会被覆盖.这些采样信息被保

Windows环境下C#操作oracle 10g/11g心得

从8月份开始接到一个项目,业务逻辑不复杂,因为之前没有什么C#l连接oracle的经验,所以做起来磕磕绊绊的,到现在总算完成了.现在梳理下这一路走来的心得. 首先是oracle下载安装.开始直接从官网上下的11g,下载所需的之后要安装服务端和客户端.安装完成后首先要配置监听.dos下输入lsnrctl status查看当前监听状态.输入netca 进入 监听配置界面.注意一个服务端一般只要一个监听,2个监听会混乱的.配置监听的参数默认的就好.然后lsnrctl start命令启动监听.输入sql

RHEL5 X86-64上安装Oracle 11gR2示例与总结

进入Oracle DBA行业也有好几年了,但是说到安装Oracle的经验,我还真不是特别多,印象中刚开始每次安装都有点磕磕碰碰,随着接触Oracle的时间越来越长,各方面的原理.机制也都有一定的了解后,现在安装Oracle已经很少会遇到问题了.基本上我把自己安装Oracle的方式可以归为下面三个阶段 刚接触和学习Oracle,安装完全没有头绪,只能按照网上或者书上有截图的方式一步一步照样安装,出错后,只能协助,然后重新安装 接触Oracle一段时间以后,安装的基本原理.步骤也都了解了,一般都是再

风哥免费直播课来袭,手把手带你规划Oracle数据库工程师学习蓝图

时间:3月14号晚8点-10点 地点:QQ群直播 577062646 分享老师:风哥 51CTO学院特级讲师,MBA硕士学位,PMP国际项目管理师,ITPUX技术网创始人及站长,具有10年以上大型Oracle数据库服务经验. 实施项目数百个,先后就职国内大型上市软件公司.IT集成商.500强外企的Oracle资深技术专家.技术总监等职务,精通Oracle数据库与中间件应用技术,同时熟悉主机.存储.备份.网络等多方面技术,最擅长应用系统项目规划设计.处理各种综合性故障与疑难杂症. 同时获得Orac

【翻译自mos文章】How to Set or Switch Oracle Homes on Windows (Doc ID 969581.1)

参考原文: How to Set or Switch Oracle Homes on Windows (Doc ID 969581.1) 适用于: Oracle Database - Enterprise Edition - Version 9.2.0.1 to 11.2.0.1.0 [Release 9.2 to 11.2] Microsoft Windows (32-bit) Microsoft Windows Itanium (64-bit) Microsoft Windows x64 (