文档章节

MySQL_Procedure_Function_Cursor

大饼脸
 大饼脸
发布于 2016/05/09 22:13
字数 417
阅读 6
收藏 0

    1. Declare

delimiter ||
crate procedure usePro()
begin
declare a, b varchar(20);
insert into TesFun2 values(null, a, b);
end ||
delimiter;

call usePro();

   

    2. Set

delimiter ||
create procedure usePro2()
begin
declare a, b varchar(20);
set a='Linux C编程', b='123456';
insert into TesFun2 values(null, a, b);
end ||
delimiter;

call usePro2();


    3. Select into

delimiter ||
create procedure usePro3()
begin
declare a, b varchar(20);
select useName2, password2 into a, b from TesFun3 where id2=1;
insert into TesFun2 values(null, a, b);
end ||
delimiter;

call usePro3();


    4. Cursor

delimiter||
create procedure usePro4()
begin
declare a, b varchar(20);
declare cur4 cursor for select useName2, password2 from TesFun3;
open cur4;
fetch cur4 into a, b;
insert into TesFun2 values(null, a, b);
close cur4;
end ||
delimiter;

call usePro4();


    5. If

delimiter ||
create procedure tesPro5(in bookId int)
begin
select count(*) into @num from TesFun2 where id=bookId;
if @num>0 then update TesFun2 set useNam='Java12345' where id=bookId;
else
insert into TesFun2 values(null, '禾博士', 'heboshi');
end if;
end ||
delimiter;

call tesPro5(4);

call tesPro5(5);


    6. Case

delimiter ||
create procedure tesPro6(in bookId int)
begin
select count(*) into @num from TesFun2 where id=bookId;
case @num
when 1 then update TesFun2 set useNam='Java1234567' where id=bookId;
when 0 then insert into TesFun2 values(null, '禾博士2', 'heboshi2');
else insert into TesFun2 values(null, '禾博士3', 'heboshi3');
end case;
end ||
delimiter;

call tesPro6(3);

call tesPro6(8);


    7. Loop

delimiter ||
create procedure tesPro7(in totNum int)
begin
loo: loop
set totNum=totNum-1;
if totNum=0 then leave loo;
else
insert into TesFun3 values(totNum, '禾博士', 'heboshi');
end if;
end loop loo;
end ||
delimiter;

call tesPro7(10);


    8. Iterate

delimiter ||
create procedure tesPro8(in totNum int)
begin
loo: loop
set totNum=totNum-1;
if totNum=0 then leave loo;
elseif totNum=3 then iterate loo;
else
insert into TesFun3 values(totNum, '好玩的Java', 'mima');
end if;
end loop loo;
end ||
delimiter;

call tesPro8(11);


    9. Repeat

delimiter ||
create procedure tesPro9(in totNum int)
begin
rea: repeat
set totNum=totNum-1;
insert into TesFun3 values(totNum, '加油', 'jiayou');
until totNum=1;
end repeat rea;
end ||
delimiter;

call tesPro9(11);



    10. While

delimiter ||
create procedure tesPro10(in totNum int)
begin
whi: while totNum>0 do
insert into TesFun3 values(totNum, 'while', 'pwhile');
set totNum=totNum-1;
end while whi;
end ||
delimiter;

call tesPro10(5);

© 著作权归作者所有

大饼脸
粉丝 1
博文 34
码字总数 11606
作品 0
福州
私信 提问
MySQL数据库的常用命令语句记录——存储过程语句

CREATE EVENT 创建执行事件 CREATE [DEFINER = { user | CURRENT_USER }] EVENT [IF NOT EXISTS] event_name ON SCHEDULE schedule [ON COMPLETION [NOT] PRESERVE]--当完成事件时,服务器是......

无聊书生
2015/08/24
0
0
mysql show命令集合

a. show tables或show tables from databasename; -- 显示当前数据库中所有表的名称 b. show databases; -- 显示mysql中所有数据库的名称 c. show columns from tablename from databasename......

cgjcgs
2015/03/31
0
0
oracle一条语句递归查询父子关系

1 建表: CREATE TABLE test_tree ( test_id INT NOT NULL, pid INT, test_val VARCHAR(10), PRIMARY KEY (test_id) ); INSERT INTO test_tree VALUES(1, 0, '.NET'); INSERT INTO test_tree......

YaZi-Liu
2016/06/12
149
0
一点实例明白mysql数据库存储过程

mysql存储过程: 封装sql: create procedure p1()beginselect * from t_news;end $ //mysql存储过程 简单实例 显示存储过程信息: G (横向表格采用纵向表格输出) delimiter $ 改变执行符号,直...

zyt_1978
2016/09/19
3
0
《Oracle PL/SQL开发指南》学习笔记17——PL/SQL Basics (Review Section,Mastery Check)(第二部分)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hpdlzu80100/article/details/84454592 Exceptions Review Section This section has described the followin......

预见未来to50
2018/11/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Qt编写数据可视化大屏界面电子看板9-曲线效果

一、前言 为了编写数据可视化大屏界面电子看板系统,为了能够兼容Qt4和嵌入式linux系统,尤其是那种主频很低的,但是老板又需要在这种硬件上(比如树莓派、香橙派、全志H3、imx6)展示这么华...

飞扬青云
25分钟前
2
0
责任链模式

//这篇博客的博主真的不错,解析的都很清晰明了, https://blog.csdn.net/jason0539/article/details/45091639

南桥北木
51分钟前
3
0
Flutter -------- dio网络请求

dio是Flutter中文网开源的一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时等... 1.添加依赖# dependencies: dio: 2.1.x #...

切切歆语
今天
1
0
PHP的学习

PHP变量的命名必须以$符开始,如: $i;$j;$name; $符后面的第一个字符不可以是数字,只能是字母或者下划线(_)。 除了下划线(_)之外,变量中不能出现任何特殊字符,也就是变量只能包含...

墨冥
今天
3
0
一篇文章彻底搞懂Java虚拟机

概念: 虚拟机:指以软件的方式模拟具有完整硬件系统功能、运行在一个完全隔离环境中的完整计算机系统 ,是物理机的软件实现。常用的虚拟机有VMWare,Visual Box,Java Virtual Machine(Jav...

骚年锦时
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部