my sql存储过程 基本使用
--------------创建不带参数的存储过程-----------------
DELIMITER;;
drop PROCEDURE if EXISTS selectStudent; create PROCEDURE 'selectStudent'()
BEGIN
select*from student;
end;;
DELIMITER; --------------带参数的存储过程--------------------
drop PROCEDURE if EXISTS selectCity; create PROCEDURE 'selectCity'(
in _cityID varchar(10)--输入参数--
)
BEGIN
select *from student where cityID=_cityID;
end; --------------带有输出参数的存储过程--------------------
drop PROCEDURE if EXISTS selectCity_Name;
CREATE PROCEDURE 'selectCity_Name'(
in _CityID varchar(10)--输入参数,
out _City varchar(10) --输出参数,
inout _CityIDName varchar(10) --输入输出参数
)
BEGIN
select*from student where cityID=_CityID and CityName=_CityName INTO _City;
end; set @_CityID='';
set @_CityIDName='郑州';
call selectCity_Name(@_CityID,@_City,@_CityIDName);
select @_CityIDName as ID,@_City; -----------带有通配符的存储过程------------
drop PROCEDURE if EXISTS selectCityLike;
create PROCEDURE 'selectCityLike'(
in _CityName varchar(10)
)
BEGIN set @exec_sql =CONCAT("select *from student where name like '%",_CityName,"%'");
PREPARE stmt from @exec_sql ; --定义
EXECUTE stmt;--执行预处理语句
DEALLOCATE PREPARE stmt;--删除定义 end -------循环语句:操作前检查结果----------
create PROCEDURE proc4()
BEGIN declare var int;
set var=0; WHILE var<6 DO
insert into t VALUES(var);
set var=var+1;
end while; end ----------循环语句:操作后检查结果------------
create PROCEDURE proc5()
BEGIN DECLARE v int;
set v=0; REPEAT
insert into t VALUES(v);
set v=v+1;
UNTIL v>=5
end repeat; end ----------循环语句:loop..endloop------------
create PROCEDURE proc6()
BEGIN declare v int;
set v=0; loop_lable:LOOP
insert into values(v); set v=v+1;
if v>=5 THEN
LEAVE loop_lable;
end if; end loop; end ----------循环语句:loop..endloop-------------
create PROCEDURE proc7()
BEGIN
DECLARE v int;
set v=0; loop_lable:LOOP if v=3 THEN
set v=v+1;
ITERATE loop_lable;--继续循环
end if; insert into t values(v);
set v=v+1;
if v>=5 THEN
leave loop_lable;--跳出循环
end if; end loop; end;
my sql存储过程 基本使用的更多相关文章
- PL/SQL存储过程编程
PL/SQL存储过程编程 /**author huangchaobiao *Email:huangchaobiao111@163.com */ PL/SQL存储过程编程(上) 1. Oracle应用编 ...
- SQL存储过程分页(通用的拼接SQL语句思路实现)
多表通用的SQL存储过程分页 案例一: USE [Community] GO /****** Object: StoredProcedure [dbo].[Common_PageList] Scrip ...
- SQL存储过程的调用及写法
调用函数: public class SqlProcess { ; public DataSet ReturnSet = null; public SqlDataAdapter adapter = n ...
- sql存储过程几个简单例子
导读:sql存储是数据库操作过程中比较重要的一个环节,对于一些初学者来说也是比较抽象难理解的,本文我将通过几个实例来解析数据库中的sql存储过程,这样就将抽象的事物形象化,比较容易理解. 例1: cr ...
- SQL存储过程生成顺序编码
一.第一种方式 USE [WJKC]GO/****** Object: StoredProcedure [dbo].[Address_GetCode1] Script Date: 2016/3 ...
- SQL 存储过程入门(事务)(四)
SQL 存储过程入门(事务)(四) 本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我 ...
- 在SQL存储过程中给条件变量加上单引号
在SQL存储过程中给条件变量加上单引号,不加语句就会出问题,以下就是在存储过程中将条件where设置成了动态变化的,给where赋完值再和前面的语句拼接,再execute(SQL) ), )), )+ ...
- SQL存储过程概念剖析
一.SQL存储过程的概念,优点及语法 定义:将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execut ...
- sql 解析字符串添加到临时表中 sql存储过程in 参数输入
sql 解析字符串添加到临时表中 sql存储过程in 参数输入 解决方法 把字符串解析 添加到 临时表中 SELECT * into #临时表 FROM dbo.Func_SplitOneCol ...
- 查询数据库后台Block 的Sql存储过程
查询数据库后台Block 的Sql存储过程 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER OFF GO /*记录SQL Server的阻塞情况 wang 200 ...
随机推荐
- nodejs 前端工具总结
htmlhint https://github.com/yaniswang/HTMLHint 使用 var HTMLHint = require("htmlhint").HTMLH ...
- xtrabackup三种备份和还原(一)
写这边博客心情不是太美好(博客已经停更2个多月了,实在是没心情学习新东西.2018我的黑暗年,呵呵)好了,不废话了,本文没有任何原理的部分,我也是刚开始接触xtrabackup这个工具.本文应该是一个 ...
- restframework api (二)权限
一 添加权限 (1)API/utils文件夹下新建premission.py文件,代码如下: message是当没有权限时,提示的信息 # utils/permission.py class SVIP ...
- oracle分区交换技术
交换分区的操作步骤如下: 1. 创建分区表t1,假设有2个分区,P1,P2.2. 创建基表t11存放P1规则的数据.3. 创建基表t12 存放P2规则的数据.4. 用基表t11和分区表T1的P1分区交 ...
- MongoDB驱动程序快速入门
http://mongodb.github.io/mongo-java-driver/3.6/driver/getting-started/quick-start/
- halcon之最小二乘拟合直线
如果不了解最小二乘算法 请先阅读: Least squares的算法细节原理https://en.wikipedia.org/wiki/Least_squares 通常在halcon中拟合直线会用ho ...
- 在ubuntu16上进行nginx+uwsgi+django部署的简要步骤
网上有很多部署教程,说了一大堆,遇到坑还是要自己一个个解决,这里有几个比较重要的坑大家一定要注意. 1.首先要安装python和python-dev环境,如果没有安装python-dev后面安装有些依 ...
- java基础11天
冒泡排序 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处,第二次比较厚,最大值放在了倒数第二的位置,一直到第二个元素确定了,整个数组的顺序也就确定了 public class Ar ...
- New Concept English Two 24 64
$课文62 大火之后 650. Firemen had been fighting the forest for nearly three weeks before they could get i ...
- 内存泄漏 之 MAT工具的使用
1 内存泄漏的排查方法 Dalvik Debug Monitor Server (DDMS) 是 ADT插件的一部分,其中有两项功能可用于内存检查 : · heap 查看堆的分配情况 · ...