| |
|
开发:
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高级:存储过程 |
存储过程
而存储过程是多条SQL语句的执行者,这是它们的本质区别。 定义存储过程与定义函数极为相似,它也可以包含参数,函数中使用的语句这里也能使用,但是它没有返回值:
我们可以在存储过程中编写多条SQL语句,但是注意,MySQL的存储过程不具有原子性,当出现错误时,并不会回滚之前的操作,因此需要我们自己来编写事务保证原子性。 接着我们来看看如何执行存储过程:
通过使用 比如现在我们想要实现查询用户表,如果包含用户
这里其实只需要一个简单的IF判断即可实现。 那么如果我们希望遍历一个SELECT语句查询的结果呢?我们可以使用游标来完成:
游标的使用分为4个步骤:
我们这里利用了一个while循环来多次通过游标获取查询结果,但是最后是因为出现异常才退出的,这样会导致之后的代码就无法继续正常运行了。 我们接着来看如何处理异常:
我们可以声明一个异常处理器(句柄),格式如下:
我们还可以限定存储过程的参数传递,比如我们只希望用户给我们一个参数用于接收数据,而不是值传递,我们可以将其设定为OUT类型:
所有的参数默认为 如果我们既希望参数可以传入也可以被重新赋值,我们可以将其修改为 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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/23 9:55:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |