IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MYSQL存储过程(一) -> 正文阅读

[大数据]MYSQL存储过程(一)

????????????????存储过程(Procedure)是大型数据库系统中,一组为了完成特定功能的SQL语句集,存储在数据库中,经过第一次编译后调用不需要在再次编译,用户→调用存储过程名字→来执行。

? ? ? ? ? ? ? ? 存储过程是数据库中的一个重要对象。

? ? ? ? ? ? ? ? ?它的特定:

? ? ? ? ? ? ? ? 1.能完成较复杂的判断和运算。

? ? ? ? ? ? ? ? 2.可编程行强,灵活、执行速度相对快一些

? ? ? ? ? ? ? ? 3.SQL编程的代码可重复使用、减少网络之间的数据传输,节省开销

? ? ? ? ? ? ? ?特定情况下使用,下面来创建存储过程(简单→复杂):

? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? 存储过程存在于库的函数中:

? ? ? ? ?我们可以通过 call? 来调用

? ? ???

?在存储过程中我们还需要掌握变量 等.....

????????

调用

?这里 我们的变量声明使用declare ,一句declare 只声明一个变量,变量必须先声明后使用,变量具有数据类型的长度,与mysql的SQL数据类型一致,因此甚至还能制定默认值,字符集和规则等,变量可以通过set来赋值 ,也可以通过select into的方式来赋值,变量需要返回,可以使用select?

在我们应用 的过程中,我们要知道变量的作用域范围,作用范围在begin ~ end 之间,end结束我们变量的作用范围即为结束,需要多块之间用使用全局变量,可以在多可块中传递。

?这种情况都会返回

这种情况就只范围count2

?

设置全局变量后就可以拿到你需要的返回参数

?存储过程中变量的作用域,作用范围在begin和end块之间,end结束变量的作用范围即结束

使用存储过程中 我们也可以加入参数 它的类型有:IN OUT INOUT?

写法:create procedure 名称([IN|OUT|INOUT] 参数名 参数数据类型)

? ? ? ? begin?

? ? ? ? ?/

? ? ? ? end ;

? ? ? ? 存储过程的参数IN类型使用

? ? ? ? ~:传入参数:类型为in,表示该参数的值必须在调用存储过程事指定,如果不显示指定为in,那么默认就是in类型。
? ? ? ?~ :、IN类型参数一般只用于传入,在调用过程中一般不作为修改和返回
? ? ? ? ~:、如果调用存储过程中需要修改和返回值,可以使用OUT类型参数

????????

? ? ? ? ?

? ? ? ? ?调用错误的时候,因为我们没IN类型的值传入

????????

? ? ? ? over~~~~

? ? ? ? 如果是OUT类型的时候

????????

调用一下?

?调用要先定义一个变量,set @变量名

总结 out 类型

? ? ????1、传出参数:在调用存储过程中,可以改变其值,并可返回;
?? ??? ?2、out是传出参数,不能用于传入参数值;
?? ??? ?3、调用存储过程时,out参数也需要指定,但必须是变量,不能是常量;
?? ??? ?4、如果既需要传入,同时又需要传出,则可以使用INOUT类型参数 ?

????????

INOUT 类型的使用

?

?总结:

????????1、可变变量INOUT:调用时可传入值,在调用过程中,可修改其值,同时也可返回值;
?? ??? ?2、INOUT参数集合了IN和OUT类型的参数功能;
?? ??? ?3、INOUT调用时传入的是变量,而不是常量;

?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-12-01 17:46:35  更:2021-12-01 17:48:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:52:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码