存储过程示例

存储过程示例存储过程示例:例1:创建不带参数的存储过程输出系统日期createorreplaceprocedureoutput_dateisbegindbms_output.put_line(sysd

大家好,又见面了,我是你们的朋友全栈君。

存储过程示例:

例1:创建不带参数的存储过程
输出系统日期
create or replace procedure output_date is
begin
dbms_output.put_line(sysdate);
end output_date;

例2 带参数in和out的存储过程
create or replace procedure get_username(v_id in number, v_username out varchar2)
as
begin
select username into v_username from tab_user where id=v_id; –变量赋值
exception
when no_data_found then
raise_application_error(-2001,’ID不存在!’);
end get_username;

 

例3:一个高效的数据分页的存储过程、
create procedure pageTest
(
@FirstId nvarchar(20)=null, –当前页面里的第一条记录的排序字段的值
@LastID nvarchar(20)=null, –当前页面里的最后一条记录的排序字段的值
@isNext bit=null, –true 1: 下一页; false 0:上一页;
@allCount int output, –返回总记录书
@pageSize int output, –返回一夜的记录数
@CurPage int –也好(第几页) 0:第一页;-1最后一页
)
AS
if @CurPage = 0 –第一页;
begin –统计总记录数
select @allCount=count(ProductId) from Product_test

set @pageSize = 10
–返回第一页的数据
select top 10
ProductId,
ProductName,
Introduction
from Product_test order by ProductId
end

else if @CurPage=-1 –表示最后一页

select * from
(select top 10 ProductId,
ProductName, Introduction

from Product_test order by ProductId desc ) as aa
order by ProductId
else

begin
if @isNext=1
–翻到下一页
select top 10 ProductId,
ProductName,
Intorduction
from Product_test where ProductId > @LastID order by ProductId
else
–翻到上一页
select * from
(select top 10 ProductId,
ProductName,
Introduction
from Product_test where ProductId<@FirstId order by ProductId desc)
as ProductId
end
)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155245.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月2日 下午3:00
下一篇 2022年7月2日 下午3:00


相关推荐

  • JVM——Java虚拟机架构

    JVM——Java虚拟机架构0 前言 Java 虚拟机 Javavirtualm 实现了 Java 语言最重要的特征 即平台无关性 平台无关性原理 编译后的 Java 程序 class 文件 由 JVM 执行 JVM 屏蔽了与具体平台相关的信息 使程序可以在多种平台上不加修改地运行 Java 虚拟机在执行字节码时 把字节码解释成具体平台上的机器指令执行 因此实现 Java 平台无关性 1 JVM 结构图

    2025年10月26日
    5
  • matlab fmincon 精度,fmincon与quadprog误差

    matlab fmincon 精度,fmincon与quadprog误差该楼层疑似违规已被系统折叠隐藏此楼查看此楼有没有人能帮我看看这两个程序的运行结果为什么会不一样啊??困扰了好久……程序一:%text1.mclearall;clc;a=[0.058,0.075,0.092,0.111,0.136,0.092]’;b=[0.062,0.085,0.128,0.149,0.164,0.148]’;alpha=[0.054,0.075,0.096,0.1…

    2022年6月10日
    44
  • Android 三重缓存

    Android 三重缓存文章目录内存缓存Bitmap内存复用在Android应用中不可避免地要显示很多图片,如果不做处理,不管图片是否显示过,每次启动时都需要从网络拉取,这就极大影响了图片加载速度和浪费用户流量,并且整个应用中的图片内存无法控制在一个总的范围内。因此,图片缓存在一个图片加载模块中很重要并且不可缺少。目前比较流行的图片框架,如Glide、Fresco等,都使用了“内存-本地-网络”三级缓存策略。首…

    2022年5月21日
    49
  • Python打包exe,以及解决闪退

    Python打包exe,以及解决闪退Python打包exe打开终端,中输入命令pipinstallpyinstaller后回车。安装失败尝试用管理员方式打开输入命令pyinstaller,回车显示安装成功。3.打开pycharm的底部的【Terminal】输入:pyinstaller–console–onefile······.py,或者在路径下按住shift右键单击空白打开powershel…

    2022年5月18日
    51
  • Pandas库基础知识(一)

    Pandas库基础知识(一)1Series 数据结构 1 1Series 介绍 Series 是一种类似于一维数组的对象 由一组数据和一组数据标签 索引值 组成 1 2Series 的操作 1 2 1 创建 Series 对象通过 Series 方法创建对象 也可以直接将列表 字典等序列类型转换成 Series 数据 importpandas pd Series a b c d e f s2 pd Series 1 2 3 4 5 6 index a b c d

    2026年3月17日
    2
  • Linux rename命令

    Linux rename命令

    2020年11月19日
    210

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号