【ORACLE】常用脚本

--IFELSE

DECLARE

V_NUM NUMBER;

BEGIN

V_NUM := 100;

IF V_NUM > 100 THEN

--

ELSIF V_NUM > 50 THEN

--

ELSE

--

END IF;

END;


--带参数存储过程

CREATE OR REPLACE PROCEDURE DELETE_SUBSCRIBER(P_SUBID IN NUMBER) IS

V_MEM VARCHAR2(100) := ‘<SQL5.4.4.11R2.p14121911_6861>‘;

BEGIN

--。。。

END DELETE_SUBSCRIBER;

/

--不带参数存储过程

CREATE OR REPLACE PROCEDURE DELETE_SUBSCRIBER IS

V_MEM VARCHAR2(100) := ‘<SQL5.4.4.11R2.p14121911_6861>‘;

BEGIN

--。。。

END DELETE_SUBSCRIBER;

/

--带参数的函数

其中RETURN字句是必须存在的,一个函数如果没有执行RETURN字句就结束语句会发生错误

CREATE OR REPLACE FUNCTION GET_PRODUCTSTR(P_SUBID IN NUMBER, P_PAYDT DATE)

RETURN VARCHAR2 IS

RESULT VARCHAR2(1024);


BEGIN

MERGE_STR := ‘‘;

FOR V_P IN C_PRODUCTINFO LOOP

MERGE_STR := MERGE_STR || V_P.PRODUCTNAMESTR || ‘[R:‘ || V_P.MONTHFEE || ‘]. ‘;

END LOOP;

RETURN RESULT;

END;

/

--函数可以有默认值

CREATE OR REPLACE FUNCTION CountryNumber(n_max number default 10000,n_min number default 10)

RETURN VARCHAR2 IS

v_resultvalue vacharr2(50);

BEGIN

RETURN  v_resultvalue;

END;


--异常处理例子

DECLARE

V_NUM NUMBER(2) := 10;

V_ZERO NUMBER(2) := 0;

V_RESULT NUMBER(5);

BEGIN

V_RESULT := V_NUM / V_ZERO;

EXCEPTION

WHEN ZERO_DIVIDE THEN

DBMS_OUTPUT.PUT_LINE(‘DIVIDE ZERO‘);

END;

异常说明:

DUP_VAL_INDEX:违反唯一性

LOGIN_DENIED: 登陆失败,用户名密码错误

NO_DATA_FOUND:没有发现数据存在

TOO_MANY_ROWS:数据行太多,

ZERO_DIVIDE:除数为0错误

VALUE_ERROR: 算法或转换错误

CASE_NOT_FOUND: 在case语句中发现不匹配的when语句

DECLARE

E_OVERNUMBER EXCEPTION;

BEGIN

IF V_MAX < V_NUM THEN

-- deal....

RAISE E_OVERNUMBER;

END IF EXCEPTION

WHEN E_OVERNUMBER THEN DBMS_OUTPUT.PUT_LINE("ERR MSG");

END;

时间: 2024-08-27 20:46:27

【ORACLE】常用脚本的相关文章

Oracle 常用脚本整理

一.统计表所占空间大小(表容量) /*一般情况下,表所占空间分为三部分:表数据.表索引.表blob字段数据*/--1 统计含(blob字段)的单表所占用的空间 SELECT TABLE_NAME, SUM(SIZE_MB)  FROM (SELECT A.SEGMENT_NAME AS TABLE_NAME,               SUM(BYTES) / 1024 / 1024 SIZE_MB          FROM USER_SEGMENTS A         GROUP BY

ORACLE常用脚本示例

create table DBO.INDEX_POLICY_TBL( ID NUMBER(10) NOT NULL PRIMARY KEY, POLICY_ID NUMBER(10,0) default (-1) NOT NULL, ALARM_COUNT NUMBER(10) default (0) NOT NULL); ALTER TABLE DBO.INDEX_POLICY_TBL ADD(C_NAME_1 VARCHAR2(64 CHAR) NOT NULL, C_NAME_2 VARC

Oracle常用脚本

1.查看每周生成的归档量 select logtime, count(*), round(sum(blocks * block_size) / 1024 / 1024) mbsize from (select trunc(first_time, 'dd') as logtime, a.BLOCKS, a.BLOCK_SIZE from v$archived_log a where a.DEST_ID = 1 and a.FIRST_TIME > trunc(sysdate - 7)) group

oracle 常用安装脚本以及步骤

oracle 常用脚本以及语句 一.oracle 安装10G 单机初始化环境: #!/bin/bash #关闭selinuxsed -i 's\SELINUX=enforcing\SELINUX=disabled\' /etc/selinux/configsetenforce 0 #关闭防火墙service iptables stopchkconfig iptables off #配置/etc/hosts文件 添加cat >> /etc/hosts<<EOF 172.16.0.19

oracle常用密令大全

1.create user username identified by password;//建用户名和密码oracle ,oracle 2.grant connect,resource,dba to username;//授权 grant connect,resource,dba,sysdba to username; 3.connect username/password//进入. 4.select table_name,column_name from user_tab_columns

oracle常用SQL语句(汇总版)

Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象 一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSERT INTO 表名(字段名1, 字段名2, ……) SELECT (字段名1, 字段名2, ……) FROM 另外的表名; 字符串类型的字段值必须用单引号括起来, 例如: ’GOOD DAY’ 如果字段值里包含单引号’ 需要

oracle 常用的系统表查询

(转自:http://blog.csdn.net/marshalchen/article/details/6552103) select * from user_tab_cols where column_name=upper('xxxxx');查询哪些表中有某一列 select status from user_objects where object_name=upper('f_get_multicountry_from_code')  查询过程或函数是否编译完成 alter procedu

Oracle常用傻瓜问题1000问

大家在应用ORACLE的时候可能会遇到很多看起来不难的问题, 特别对新手来说, 今天我简单把它总结一下, 发布给大家, 希望对大家有帮助! 和大家一起探讨, 共同进步! 对ORACLE高手来说是不用看的. Oracle常用傻瓜问题1000问.... 18 1. Oracle安装完成后的初始口令?. 18 2. ORACLE9IAS WEB CACHE的初始默认用户和密码?... 18 3. oracle 8.0.5怎么创建数据库?. 18 4. oracle 8.1.7怎么创建数据库?. 18

表分区常用脚本

use SalesDB1 go -- 查看表是否已经分区 SELECT * FROM sys .tables AS t JOIN sys .indexes AS i ON t .[object_id] = i .[object_id] AND i .[type] IN ( 0,1 ) JOIN sys .partition_schemes ps ON i .data_space_id = ps .data_space_id WHERE t .name = 'table' ; -- 只加表名不需要

Oracle常用函数及其用法

01.入门Oracle 本章目标: 掌握oracle安装.启动和关闭 基本管理以及常用工具 简单备份和恢复 熟练使用sql,掌握oracle常用对象 掌握数据库设计和优化基本方法 http://jingyan.baidu.com/article/5d6edee228308899eadeec3f.html oracle数据库:一系列物理文件的集合 一个实例是对应一个数据库,但是在12c中(c代表云)RAC集群,可以多个实例对应一个数据库 03.SQL编程 1.oracle中between and