数据库之存储过程-- 基于MySQL
存储过程基本语法
create procedure procedure_name [;number]
[{@parameter data_type}[varying][=default][output]]
1.只返回单一记录集合的存储过程
drop Procedure if EXISTS proc_adder;-- 如果存在该存储过程即删除存储过程
CREATE PROCEDURE proc_adder() -- 创建存储过程
BEGIN
select * from base_card; -- 执行sql语句
END
call proc_adder --执行存储过程

2.含有输入输出参数
DROP PROCEDURE IF EXISTS proc_adder;
CREATE PROCEDURE proc_adder(IN a varchar(256),OUT card_id int)
BEGIN
select * from base_card where card_no = a;
set card_id = a;
END
set @a = '20170720';
call proc_adder(@a,@card_id);
select @card_id;
运行函数得到的结果如下:
可以通过两种途径执行存储过程:
1.通过call方法。
2.通过界面运行存储过程,直接输入参数


3存储过程中的控制语句
drop procedure if exists proc_if;
create procedure proc_if (in sum int)
begin
declare c varchar(500);
if sum >=100 then
set c = 'good';
elseif sum< 100 THEN
set c ='well';
else
set c = 'come on';
end if;
select c;
end
call proc_if(99)

数据库之存储过程-- 基于MySQL的更多相关文章
- C# 中的数据库操作~存储过程篇Mysql SqlServer
Mysql 存储过程查询方式 SQL server 普通数据库操作 EF 调用SQL SERVER存储过程 Mysql 存储过程查询方式: public NetPort GetNetdevicePor ...
- 在Jena框架下基于MySQL数据库实现本体的存取操作
在Jena框架下基于MySQL数据库实现本体的存取操作 转自:http://blog.csdn.net/jtz_mpp/article/details/6224311 最近在做一个基于本体的管理系统. ...
- 新浪微博基于MySQL的分布式数据库实践
提起微博,相信大家都是很了解的.但是有谁知道微博的数据库架构是怎样的呢?在今天举行的2011数据库技术大会上,新浪首席DBA杨海潮为我们详细解读了新浪微博的数据库架构——基于MySQL的分布式数据库实 ...
- 基于Mysql数据库亿级数据下的分库分表方案
移动互联网时代,海量的用户数据每天都在产生,基于用户使用数据的用户行为分析等这样的分析,都需要依靠数据都统计和分析,当数据量小时,问题没有暴露出来,数据库方面的优化显得不太重要,一旦数据量越来越大时, ...
- mysql数据库之存储过程入门
引用:百度百科 存储过程 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存 ...
- MySQL/MariaDB数据库的存储过程
MySQL/MariaDB数据库的存储过程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.存储过程概述 1>.存储过程优势 存储过程把经常使用的SQL语句或业务逻辑封装起 ...
- canal 基于Mysql数据库增量日志解析
canal 基于Mysql数据库增量日志解析 1.前言 最近太多事情 工作的事情,以及终身大事等等 耽误更新,由于最近做项目需要同步监听 未来电视 mysql的变更了解到公司会用canal做增量监 ...
- ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...
- 基于mysql的sakila数据库脚本分析
本例是基于mysql的sakila数据库脚本的复杂查询分析,大家可以去mysql官网上下载此脚本:也可以进入我的资源页进行下载: 关系图如下: 下面是查询的案例: 1.查询某部电影的所属类别,语言 S ...
随机推荐
- java 原始类与封装类 的区别
int是java提供的8种原始数据类型之一.Java为每个原始类型提供了封装类,Integer是java为int提供的封装类.int的默认值为0,而Integer的默认值为null,即Integer可 ...
- Ubuntu下CodeBlocks更改调试终端
Ubuntu下CodeBlocks更改调试终端 Ubuntu下的CodeBlocks自带的调试终端xterm不能进行复制粘贴操作,更换调试终端就可以解决了,就是把ubuntu下的gnome-ter ...
- JAVA学习笔记——(四)
今日内容介绍 1.流程控制语句switch 2.数组 3.随机点名器案例 01switch语句解构 * A:switch语句解构 * a:switch只能针对某个表达式的值作出判断,从而决定程序执行哪 ...
- jquery、javascript实现(get、post两种方式)跨域解决方法
一.实现get方式跨域请求数据 浏览器端 <script> $(document).ready(function(){ $.ajax({ url: "http://www.xxx ...
- 安装完SAP后BASIS的配置流程
安装完SAP后BASIS配置流程 安装完SAP后,配置流程. 1.升级kernel. 2.TCD SLICENSE: License Administration install > Syste ...
- Git 分支管理 创建与合并分支
分支在实际中有什么用呢? 假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了. 如果等代码全部写完再一次提交, ...
- linux文件重命名
rename 命令用字符串替换的方式批量改变文件名. 语法 rename(参数) 参数 原字符串:将文件名需要替换的字符串: 目标字符串:将文件名中含有的原字符替换成目标字符串: 文件:指定要改变文件 ...
- 微信分账功能与微信支付企业付款相关内容详解(payjs版)
PAYJS开通微信分账功能以来,有很多同学咨询相关情况.很多同学关心有没有什么办法,可以让自己的商户号快速开通企业付款功能.这里就介绍下微信分账的具体相关内容,可以完美解决问题. 一.什么是微信分账? ...
- Leetcode:单调数列
题目 如果数组是单调递增或单调递减的,那么它是单调的. 如果对于所有 i <= j,A[i] <= A[j],那么数组 A 是单调递增的. 如果对于所有 i <= j,A[i]> ...
- Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017) C
You are given set of n points in 5-dimensional space. The points are labeled from 1 to n. No two poi ...