Mysql存储过程从0开始(上)

1、首先你要明白,mysql也是一种语言,他也可以编写程序,也是支持逻辑判断,if,elseif,else,switch,while等等的判断

2、mysql赋值一个变量的值操作:set @a = 1; 查看这个变量为select @a;

3、当你创建存储过程的时候你要先选择Mysql的数据库,然后才能进行操作,比如创建

(1)create procedure hanshuming() //方法体: select concat(@a,' world');

concat是链接字符串,set @a="Hello";

(2)调用是call hanshuming();

4、简单的入门的存储过程小例子

mysql > DELIMITER //    //首先你要转义,防止mysql把你的语句当成sql语句执行
mysql > CREATE PROCEDURE proc1 --proc1存储过程名  
-> (IN parameter1 INTEGER)   
-> BEGIN   
-> DECLARE variable1 CHAR(10);   --declare 是命名变量
-> IF parameter1 = 17 THEN   
-> SET variable1 = 'birds';   
-> ELSE 
-> SET variable1 = 'beasts';   
-> END IF;   
-> INSERT INTO table1 VALUES (variable1);  
-> END   
-> //  
mysql > DELIMITER ;  

5、查看当前的数据库下面的存储过程

(1)show procedure status where db='数据库名'\G; --\G的意思是格式化

(2)查看当前存储过程的详细的信息

show create procedure 数据库名.存储过程名\G;

(3)删除存储过程

drop procedure sp_name --存储过程的名称

DROP PROCEDURE --删除所有,别轻易用

6、定义的变量只是作用在存储过程里面,超出就没了,下图为例,也就是在end之后就没了。

7、inout的操作

当你调用这个存储过程的时候,你不能直接将数据放在方法里面,你要设置这个变量的值,然后把这个变量放进去

如果直接放会报错

应该是这样调用

以上只是一部分,接下来还会给大家更新,大家可以常来看看!

原文发布于微信公众号 - 思梦PHP(sm_php)

原文发表时间:2017-01-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2112
来自专栏魂祭心

原 canvas绘制clock

4024
来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3075
来自专栏我和未来有约会

Silverlight第三方控件专题

这里我收集整理了目前网上silverlight第三方控件的专题,若果有所遗漏请告知我一下。 名称 简介 截图 telerik 商 RadC...

3955
来自专栏落花落雨不落叶

canvas画简单电路图

58811
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2667
来自专栏张善友的专栏

Silverlight + Model-View-ViewModel (MVVM)

     早在2005年,John Gossman写了一篇关于Model-View-ViewModel模式的博文,这种模式被他所在的微软的项目组用来创建Expr...

2898
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4798
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

2000

扫码关注云+社区