mysql存储过程的基础知识

news2024/9/25 19:20:37

本文来简单说下存储过程的基础知识

文章目录

  • 概述
  • 什么是存储过程
  • 存储过程的优缺点


概述

mysql官网提供的储存过程:https://www.mysqlzh.com/doc/225/499.html

在这里插入图片描述


什么是存储过程

简单的说,存储过程是一条或者多条SQL语句的集合,可视为批文件,但是其作用不限于批处理。

我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。

一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的。数据库中的存储过程可以看做是对编程中面向对象方法的模拟。它允许控制数据的访问方式。


存储过程的优缺点

MySQL 5.0 版本开始支持存储过程。

存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。

存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。

存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用。

优点

  • 存储过程可封装,并隐藏复杂的商业逻辑。
  • 存储过程可以回传值,并可以接受参数。
  • 存储过程无法使用 SELECT 指令来运行,因为它是子程序,与查看表,数据表或用户定义函数不同。
  • 存储过程可以用在数据检验,强制实行商业逻辑等。

缺点

  • 存储过程,往往定制化于特定的数据库上,因为支持的编程语言不同。当切换到其他厂商的数据库系统时,需要重写原有的存储过程。
  • 存储过程的性能调校与撰写,受限于各种数据库系统。

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

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

相关文章

SAP采购中不基于收货的发票校验的价差计算过程实例

年前最后一天上班了,我还在帮财务分析一个价差问题。源于财务用户头天的一个请求,在不基于收货的发票校验中,计算倒不难,难的是梳理数量的逻辑关系。不过总算时间也没白花,记录下来。下次就不算了,能解释清…

理解使用并查集

目录 一.并查集原理 1.概念: 2.性质 3.形式 4. 合并方式 二.并查集实现 1.成员变量 2.构造函数 3.查找根 4.合并集合 5.判断是否在一个集合 6.查看集合数量 三.并查集总代码 前言:理解并查集是为了接下来学习图要用,而会使用并查…

Linux:系统性能监控工具-tsar安装和使用

在上家公司做性能压力测试时就用过tsar,但总结文档留在了内部,正好借着最近工作内容又用上了tsar,总结起来 目录前言tsar介绍总体架构安装tasrtsar配置介绍配置文件定时任务配置日志文件tsar使用tsar实际使用参考查看可用的监控模块列表查看C…

本松新材创业板IPO终止:业绩下滑,客户较集中,周永松为实控人

撰稿|汤汤 来源|贝多财经 近日,深圳证券交易所披露的信息显示,杭州本松新材料技术股份有限公司(下称“本松新材”)提交了撤回上市申请文件的申请,保荐人财通证券也撤回对该公司的保荐。因此,深交所终止了…

目标检测:YOLOV3技术详解

目标检测:YOLOV3技术详解前言主要改进DarkNet53新的分类器正负样本的匹配损失函数前言 YOLOV3是V2的升级版,也是原作者的绝笔,V3主要还是把当时一些有用的思想融入了进来,没有什么创新型的突破,具体细节我们下面介绍。…

【安卓逆向】Frida入门与常用备忘

【安卓逆向】Frida入门与常用备忘前置知识什么是hook?hook的作用常见的逆向工具Frida使用入门简介与资料参考备忘前置环境配置执行hook常用hook脚本/API前置知识 什么是hook? hook,译为“钩子”,是指将方法/函数勾住,…

2022-CSDN的一年

前言 马上要到兔年的春节,年前最后一个版本顺利上线,闲下来两天,可以对过往一年进行一下总结,说起来这是入职CSDN之后第一次自己将自己所思所想以以博客的形式发布在CSDN网站上,也是比较奇特的体验。语言表达能力不强&…

利用华为路由器配置单臂路由功能,实现多个vlan间通信

单臂路由,是通过一台路由器使不同VLAN之间互通的数据通过路由器进行三层转发。 如果在路由器上为每个 VLAN分配一个单独的路由器物理接口,那么随着VLAN数量的增口,必然需要更多的接口,而路由器能提供的接口数量有限,所…

Kubernetes 基本概念

Kubernetes 是什么 Kubernetes 是一个可移植、可扩展的开源平台。用于管理容器化的工作负载和服务,可促进声明式配 置和自动化。是谷歌保密了十几年的秘密武器Borg的开源版本,谷歌一直通过Borg系统管理着数量庞大 的应用程序集群。由于Kubernetes是基于…

元素排序 Comparable 和 Comparator 有什么区别?

1.字面含义不同 我们先从二者的字面含义来理解它,Comparable 翻译为中文是“比较”的意思,而 Comparator 是“比较器”的意思。Comparable 是以 -able 结尾的,表示它自身具备着某种能力,而 Comparator 是以 -or 结尾,…

7. R语言【相关性分析函数】:cov、cor、cor.test 和 【相关性检验函数】:cor.test、corr.test、pcor.test

b站课程视频链接: https://www.bilibili.com/video/BV19x411X7C6?p1 腾讯课堂(最新,但是要花钱,我花99😢😢元买了,感觉讲的没问题,就是知识点结构有点乱,有点废话)&…

二、TortoiseGit的安装

1、TortoiseGit的安装 1.1、TortoiseGit简介 (1)TortoiseGit是一个基于TortoiseSVN的Git的Windows Shell接口。它是开源的,可以免费使用。 (2)TortoiseGit是git的比较好用的一个图形化工具。 1.2、软件下载 (1)下载地址 Download – TortoiseGit – Windows S…

84. 双向循环神经网络

1. 未来很重要 取决于过去和未来的上下文,可以填很不一样的词目前为止RNN只看过去在填空的时候,我们也可以看未来城 2. 双向RNN 两个隐状态层,并行计算隐状态,但是隐状态传播方向相反。 公式如下: 3. 推理 双向RNN不…

day16集合

1.Collection集合 1.1数组和集合的区别【理解】 相同点 都是容器,可以存储多个数据 不同点 数组的长度是不可变的,集合的长度是可变的 数组可以存基本数据类型和引用数据类型 集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类 1.2集合类体系结构【理解】…

web期末作业网页设计——APEX(网页源码)

大学生网页制作期末作业-HTMLCSSJavaScript(包含源码)-apex欢迎来到Apex英雄Apex-legends 充满各种机会的世界 边境远方 偏僻星球群 欢迎来到诸王峡谷 于2019年2月5日发行。玩家在游戏中将扮演外星战场上的星空战士。 《Apex英雄》是由《泰坦天降》制作组…

<栈>的概念结构实现【C语言版】

1.栈的概念及结构 栈存储数据的方式跟数组一样,都是将元素排成一行。只不过它还有以下 3 条约束。 ● 只能在末尾插入数据。 ● 只能读取末尾的数据。 ● 只能移除末尾的数据。 你可以将栈看成一叠碟子:你只能看到最顶端那只碟子的碟面&#xff0c…

微博图床挂了!

一直担心的事情还是发生了。作为hexo多年的使用者,微博图床一直是我的默认选项,hexotyporaiPic更是我这几年写文章的黄金组合。而图床中,新浪图床一直都是我的默认选项,速度快、稳定同时支持大图片批量上传更是让其成为了众多图床…

工具及方法 - 设计你的文件夹结构

电脑上资料总是很多,要如何管理,是每个人都需要处理的问题。 如果处理不好,时间一长,很多资料就可能不知所踪或者难以查找。 出现这种情况,让人头疼,还浪费了时间,降低了工作效率。 所以&…

springboot服务启动JMX监控

前言 java应用部署下在生产环境,肯定是少不了监控的,比如说我们想要监控JVM的线程使用情况,内存使用情况等等。这时候我们可以采用JMX来实现JVM监控,如果对JMX不熟悉,可以参见之前的 精通JVM监控,不知道J…

Java技能树-操作符(二)-练习篇

按位操作符 下面代码执行后的结果是: System.out.println(1 & 2); System.out.println(1 | 2);答案是:A 正确结果是: 0 3Process finished with exit code 0十进制:1 二进制:0000 0001 十进制:2 二进…