利用存储过程方便日常查询

简介:

一.创建存储过程

1.存储过程创建语法:

CREATE PROCEDURE sp_name ([ proc_parameter ]) [ characteristics..] routine_body

2.参数详解:

sp_name:存储过程名字

proc_parameter:像存储过程传递参数( [IN|OUT|INOUT] param_name type ),其中in表示输入参数,out表示输出参数,inout表示既可以输入也可以输出;param_name表示参数名称;type表示参数的类型

routine_body :routine_body是SQL代码的内容,可以用BEGIN...END来表示SQL代码的开始和结束。

DELIMITER:重新设置mysql的结束符 DELIMITER //(将结束符表示为//)  存储过程  DELIMITER;(恢复默认结束符)

characteristics:对下面body申明部分和权限限制的定义


二.存储过程的日常操作

1.调用存储过程

(1).call sp_name()

(2).直接点击名称运行即可


2.查询procedure的status信息:show procedure status\G

3.查看创建的存储过程:show create procedure sp_name\G

4.删除存储过程 :drop procedure sp_name


三.存储过程实例

1.不带参数的存储过程查询区服信息

DROP PROCEDURE IF EXISTS sel;
DELIMITER //
CREATE PROCEDURE sel()
BEGIN
    SELECT * from gameserverinfo where isdelete!=1 ORDER BY zone;
END //
DELIMITER;
call sel()

运行结果:


2.根据平台和区服查询服务器ip:

DROP PROCEDURE IF EXISTS CHECKIP;
DELIMITER //
CREATE PROCEDURE CHECKIP(agent1 VARCHAR(30),zone1 INT)
BEGIN
    SELECT ip from gameserverinfo where agent=agent1 and zone=zone1;
END //
DELIMITER;

运行结果:


本文转自 luoguo 51CTO博客,原文链接:http://blog.51cto.com/luoguoling/1616620

相关文章
|
9月前
|
存储 SQL 开发框架
可视化查询(sp_helptext)——快速查询包含指定字符串的存储过程(附源码)
可视化查询(sp_helptext)——快速查询包含指定字符串的存储过程(附源码)
|
存储 关系型数据库 MySQL
|
4月前
|
存储 SQL 缓存
解锁MSSQL存储过程优化之道:参数化查询的技术深度探究
解锁MSSQL存储过程优化之道:参数化查询的技术深度探究
|
10月前
|
存储 SQL 数据库
【机房重构】组合查询—存储过程
【机房重构】组合查询—存储过程
28 0
|
存储 SQL
sql server 查询某个表被哪些存储过程调用
原文:sql server 查询某个表被哪些存储过程调用 sql server 查询某个表被哪些存储过程调用 select distinct object_name(id) from syscomments where id in (select id from sysobjects whe...
1301 0
|
SQL 存储 索引
SQL Server 存储过程中处理多个查询条件的几种常见写法分析,我们该用那种写法
原文:SQL Server 存储过程中处理多个查询条件的几种常见写法分析,我们该用那种写法   本文出处: http://www.cnblogs.com/wy123/p/5958047.html    最近发现还有不少做开发的小伙伴,在写存储过程的时候,在参考已有的不同的写法时,往往很迷茫,不知道各种写法孰优孰劣,该选用那种写法,以及各种写法优缺点,本文以一个简单的查询存储过程为例,简单说一下各种写法的区别,以及该用那种写法专业DBA以及熟悉数据库的同学请无视。
1012 0
|
存储 关系型数据库 MySQL
|
存储 Oracle 关系型数据库