018.PL-SQL编程—包

news2024/11/24 19:28:55

无奋斗不青春

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈
入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈
虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈
PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)文章合集 👈👈
Oracle数据库教程:👉👉 Oracle数据库文章合集 👈👈
优 质 资 源 下 载 :👉👉 资源下载合集 👈👈
优 质 教 程 推 荐:👉👉 Python爬虫从入门到入狱系列 合集👈👈

分隔线
在这里插入图片描述

PL-SQL编程—包

  • 创建包

    • 包用于在逻辑上组合过程和函数,它由包规范和包体两部分组成

    • 可以使用create package命令来创建包

    • 实例

      -- 创建一个包sp_package
      create or replace package sp_package is
          -- 声明该包有一个过程update_sal
          procedure update_sal(name varchar2,newsal number);
          -- 声明该包有一个函数annual_income
          function annual_income(name varchar2) return number;
      end;
      
      • 在这里插入图片描述

      • 在这里插入图片描述

    • 此时只是有包规范,并没有包体。也就是该包里面声明的过程和函数都没有具体的执行代码

    • 包规范:只包含了过程和函数的说明,但是没有过程和函数的实现代码

    • 包体:用于实现包规范中的过程和函数

    • 创建包体可以使用create package body命令

    • 创建包体实例

      -- 给包sp_package实现包体
      create or replace package body sp_package is
        procedure update_sal(name varchar2,newsal number) is
          begin
            update emp set sal=newsal where ename=name;
          end;
        function annual_income(name varchar2) return number is annual_salary number;
          begin
            select (sal+nvl(comm,0))*12 into annual_salary from emp where ename=name;
            return annual_salary;
          end;
      end;
      
      • 在这里插入图片描述
  • 调用包里面的过程和函数

    • 调用包的过程或函数时,再过程和函数名前需要带包名,如果要访问其他方案的包,则在包名前加方案名
    • 如:
       call sp_package.update_sal('SCOTT',1500);exec sp_package.update_sal('SCOTT',1500);
      
      • 在这里插入图片描述

      • 在这里插入图片描述

  • 特别说明

    • 包是PL/SQL中非常重要的部分,我们在使用过程分页时,将会体验到包的威力!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2120705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Prompt Engineering提示:Active-Prompt、方向性刺激提示、PAL(程序辅助语言模型)】

Active-Prompt 思维链(CoT)方法依赖于一组固定的人工注释范例。问题在于,这些范例可能不是不同任务的最有效示例。为了解决这个问题,Diao 等人(2023)(opens in a new tab)最近提出了一种新的提示方法&…

Python的情感词典情感分析和情绪计算

一.大连理工中文情感词典 情感分析 (Sentiment Analysis)和情绪分类 (Emotion Classification)都是非常重要的文本挖掘手段。情感分析的基本流程如下图所示,通常包括: 自定义爬虫抓取文本信息;使用Jieba工具进行中文分词、词性标…

015.PL-SQL编程—块

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉&…

Python专项进阶——初步认识Numpy库

NumPy是Numeric Python的缩写,一个优秀的开源科学计算库。 个人理解,NumPy是一个主要围绕着数值数组对象(ndarray)(或叫做矩阵)进行各种操作的对象、函数集合。提供很多实用的数学函数,涵盖线性…

【大数据】Hadoop里的“MySQL”——Hive,干货满满

【大数据】Hadoop里的“MySQL”——Hive,干货满满 文章脉络 Hive架构 HQL 表类型 创建表语法 分区 数据导入导出 函数 内置函数 UDF Java Python 在阅读本文前,请确保已经对Hadoop的三大组件(HDFS、MapReduce、YARN)有…

启动动效流程梳理(一)

因为项目涉及一些启动相关的方案,以及平常处理问题的时候会遇到很多启动响应的问题,所以对启动动效的拉起流程进行一个全面的梳理,同时也借此即会对U版本的动效流程做一个初步的了解吧。 startActivityUnchecked: 启动的流程就先不…

Windows10 如何配置python IDE

Windows10 如何配置python IDE 前言Python直接安装(快速上手)Step1.找到网址Step2.选择版本(非常重要)Step3. 安装过程Step4. python测试 Anaconda安装(推荐)Step1. 找到网址Step2. 下载anacondaStep3. 安装…

动手学深度学习(pytorch)学习记录25-汇聚层(池化层)[学习记录]

目录 汇聚层(池化层):填充和步幅多通道 汇聚层(池化层): 降低卷积层对位置的敏感性,同时降低对空间降采样表示的敏感性。 汇聚层和卷积层的运动方式一样,从左上角向右下角移动指定步幅,汇聚层执行的是“采样”操作。…

【观察】联想数据网络产品线全新升级,构建高质量的AI网络底座

毫无疑问,数字经济时代,算力已成为推动千行百业数字化转型,赋能经济蓬勃发展的重要引擎,同时也成为衡量国家综合实力的重要指标之一。特别是随着以ChatGPT、GPT4为代表的AI大模型的发布,不仅对数据中心基础设施提出了巨…

ZBrush与Blender雕刻功能哪个更好些?

选择正确的3D软件首先会让你的创作过程更加轻松,尤其是在动画或大片电影制作方面。不同的软件提供不同的功能,并倾向于专注于特定领域,如绘画、动画或雕刻。如果你选择了适合你风格和目标的软件,你可以创作出极具创意的作品。 在…

数据结构:浅谈树的遍历方式

遍历的含义就是把树的所有节点(Node)按照某种顺序访问一遍。包括前序,中序,后续,广度优先(队列),深度优先(栈)5 种遍历方法。之所以叫前序、中序、后序遍历&a…

python 学习一张图

python学习一张图,python的特点的是学的快,一段时间不用,忘记的也快,弄一张图及一些入门案例吧。 写一个简单的测试: #!/usr/bin/python # -*- coding: UTF-8 -*- import osdef add_num(a, b):return a bif __name__…

【AIGC】探索超凡记忆:SuperMemory,你的私人智能书签助手!

🧠 构建你的第二大脑:SuperMemory 在这个信息爆炸的时代,我们每天都在互联网上浏览和保存大量的信息,但往往这些宝贵的数据就像被扔进了黑洞,再也没有被回顾和利用。 SuperMemory 开源项目应运而生,旨在解…

深度学习基础案例4--运用动态学习率构建CNN卷积神经网络实现的运动鞋识别(测试集的准确率84%)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 前言 前几天一直很忙,一直在数学建模中,没有来得及更新,接下来将恢复正常这一次的案例很有意思:在学习动态调整…

Nexus基本介绍

Nexus是Sonatype公司发布的一款强大的仓库(Repository)管理软件,常被用来搭建Maven私服,因此也被称为“Maven仓库管理器”。 Nexus 的Web界面: Nexus的主要功能与优势 仓库管理: Nexus支持多种仓库类型…

初识Verilog HDL其一

VerilogHDL是一种硬件描述语言,以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。 1.1 Verilog基础语法 1.11 逻辑值 0: 逻辑低电平,条件为假&am…

【信号发生器】连续模式和扫描模式下,示波器呈现出来的波形有何区别

信号发生器在“连续模式”和“扫描模式”下输出的波形在示波器中呈现出的波形形状有显著不同,这与它们各自的工作方式密切相关。 1、连续模式(Continuous Mode) ①工作方式:信号发生器在连续模式下输出固定频率、固定幅度的信号…

[AHK]编写Dialog类代替内置的InputBox命令

更灵活的自定义的Dialog类,可以用来平替内置的InputBox命令 AHK v1代码 #requires Autohotkey v1.0 answer : Dialog("输出结果:", "good") MsgBox, % "you answered: " answer ExitAppDialog(Question, DefaultValue :…

Java面试篇基础部分-垃圾回收算法

大厂面试垃圾回收算法详解内容。 JVM内存垃圾对象的确定? Java开发过程中,使用引用计数和可达性分析。来确定一个对象是否是需要被回收的对象,如果是需要被回收的对象则,对其进行垃圾回收,如果不是则说明是存在引用的对象,则不能清理 首先来分析一下引用算法,如果这个时…

web防火墙技术措施有哪些?防火墙主要类型有哪些

网络安全已经成为了一个不可忽视的重要议题。web防火墙是入侵检测系统,入侵防御系统的一种。web防火墙技术措施有哪些?Web应用防火墙,正是守护网络安全的一道坚实屏障。今天就跟着小编一起了解下关于web防火墙。 web防火墙技术措施有哪些&…