对一个存储过程语法的解读

create or replace package body SY_USER_PKG1 is//创建一个存储过程的声明,在package body就是存储过程的实现体所放的包,SY_USER_PKG1是存储过程的名字,is固定格式

PROCEDURE T_CHCODE1 //存储过程的具体名字
(
v_phone IN VARCHAR2,//传入参数1
v_userType IN NUMBER,//传入参数2
v_type IN NUMBER,//传入参数3
v_err_code OUT NUMBER //输出参数
)
IS
v_userCount NUMBER; //相当于声明一个变量,类似于js中的var a = dfg
BEGIN //存储过程开始

IF v_type=1 THEN
SELECT COUNT(1) INTO v_userCount FROM t_user_register_info A WHERE A.ACCOUNT=v_phone and a.user_type_id=v_userType;//INFO相当于as吧
IF v_userCount=1 THEN
v_err_code:=1;
else
v_err_code:=0;
END IF;
end if;

IF v_type=2 THEN
SELECT COUNT(1) INTO v_userCount FROM t_user_register_info A WHERE A.ACCOUNT=v_phone and a.user_type_id=v_userType;
IF v_userCount=0 THEN
v_err_code:=2;
else
v_err_code:=0;
END IF;
END IF;

end T_CHCODE1; 结束存储过程,固定格式
end SY_USER_PKG1; //整个包结尾,固定格式

整体上,传入三个参数 v_phone IN VARCHAR2,//传入参数1
                             v_userType IN NUMBER,//传入参数2
                             v_type IN NUMBER,//传入参数3

输出一个结果:v_err_code OUT NUMBER //输出结果

时间: 2024-08-03 23:27:40

对一个存储过程语法的解读的相关文章

oracle的存储过程语法(转)

1.ORA-00942: table or view does not exist 指的你要操作的表尚未存在,需要先create出来先. 2.ORA-00922: missing or invalid option 指的是有语法错误.遗漏了分号什么的 3.Warning: Procedure created with compilation errors 比如  create or replace procedure p_test_pro1 is     begin       insert i

mysql存储过程语法及实例

存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. --------------------基本语法-------------------- 一.创建存储过程create procedure sp_name()begin.........end 二.调用存储过程1.基本语法:call sp_name()注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递 三.删除存储过程1.基本语法:drop procedure sp_name// 2.注意事项(1

SQLSERVER存储过程语法具体解释

SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ]     [ { @parameter data_type }         [ VARYING ] [ = default ] [ OUTPUT ]     ] [ ,...n ] [ WITH     { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sq

存储过程语法及实例

存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. --------------------基本语法-------------------- 一.创建存储过程create procedure sp_name()begin.........end 二.调用存储过程1.基本语法:call sp_name()注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递 三.删除存储过程1.基本语法:drop procedure sp_name// 2.注意事项(1

SQLSERVER存储过程语法详解

SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ]     [ { @parameter data_type }         [ VARYING ] [ = default ] [ OUTPUT ]     ] [ ,...n ] [ WITH     { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sq

SQLSERVER存储过程语法的具体解释

SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ]     [ { @parameter data_type }         [ VARYING ] [ = default ] [ OUTPUT ]     ] [ ,...n ] [ WITH     { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sq

DB2 存储过程语法(翻译)

语法说明 1.procedure-name: 存储过程的名字,在同一个数据库的同一模式下,不能存在存储过程名相同参数数目相同的存储过程,即使参数的类型不同也不行. 2.(IN | OUT | INOUT parameter-name data-type,...) :传入参数     IN:输入参数 OUT:输出参数 INOUT:作为输入输出参数     parameter-name:参数名字,在此存储过程中唯一的标识符. data-type:参数类型,可以接收SQL类型和创建的表.不支持LONG

查询MS SQL Server数据库死锁的一个存储过程

查询Sqlserver数据库死锁的一个存储过程 使用sqlserver作为数据库的应用系统,都避免不了有时候会产生死锁.死锁出现以后,维护人员或者开发人员大多只会通过sp_who来查找死锁的进程,然后用sp_kill杀掉. 利用sp_who_lock这个存储过程,可以很方便的知道哪个进程出现了死锁,出现死锁的问题在哪里. --创建或修改sp_who_lock存储过程 CREATE procedure sp_who_lock --ALTER procedure sp_who_lock as beg

一个存储过程

USE [MainDb] GO /****** Object: StoredProcedure [dbo].[pcPaChatOnLineUserLogSelect] Script Date: 06/20/2014 13:56:54 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --获取求职者的15日内联系人列表,或者有留言的企业,按照未读消息个数以及联系时间倒序排列 ALTER PROCEDURE [dbo].[pcPaCha