Sql 自定义方法 和 自定存储过程
存储过程(Storage Procedure) declare
在方法或者存储过程中定义一个临时变量的方法
declare haha int default 20;
存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它
优点:增强SQL语言的功能和灵活性---标准组件式编程---较快的执行速度---减少网络流量----作为一种安全机制来充分利用
变量赋值
语法:SET 变量名 = 变量值;
用户变量
用户变量一般以@开头
参数
存储过程根据需要可能会有输入、输出、输入输出参数,如果有多个参数用","分割开。
MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT:
IN参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值
OUT:该值可在存储过程内部被改变,并可返回
INOUT:调用时指定,并且可被改变和返回
<1----条件语句----IF-THEN-ELSE语句
IF ... THEN
...
ELSE
...
END IF ;
<2----CASE-WHEN-THEN-ELSE语句
CASE var
WHEN 0 THEN
...
WHEN 1 THEN
...
ELSE
...
END CASE ;
<3---循环语句WHILE-DO…END-WHILE
WHILE var<6 DO
INSERT INTO t VALUES (var);
SET var=var+1;
END WHILE
自定义函数
create function nummm(num int)
returns int
begin
return num+80;
end
定义存储过程
DELIMITER $$
CREATE PROCEDURE 存储过程名称(参数类型 param 参数数据类型)
BEGIN
/**
IF (num<1000) THEN
update money set num=1000 where name='zixia';
END IF;
**/
END

在方法或者存储过程中定义一个临时变量的方法
declare haha int default 20;
存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它
优点:增强SQL语言的功能和灵活性---标准组件式编程---较快的执行速度---减少网络流量----作为一种安全机制来充分利用
变量赋值
语法:SET 变量名 = 变量值;
用户变量
用户变量一般以@开头
参数
存储过程根据需要可能会有输入、输出、输入输出参数,如果有多个参数用","分割开。
MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT:
IN参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值
OUT:该值可在存储过程内部被改变,并可返回
INOUT:调用时指定,并且可被改变和返回
<1----条件语句----IF-THEN-ELSE语句
IF ... THEN
...
ELSE
...
END IF ;
<2----CASE-WHEN-THEN-ELSE语句
CASE var
WHEN 0 THEN
...
WHEN 1 THEN
...
ELSE
...
END CASE ;
<3---循环语句WHILE-DO…END-WHILE
WHILE var<6 DO
INSERT INTO t VALUES (var);
SET var=var+1;
END WHILE
自定义函数
create function nummm(num int)
returns int
begin
return num+80;
end
定义存储过程
DELIMITER $$
CREATE PROCEDURE 存储过程名称(参数类型 param 参数数据类型)
BEGIN
/**
IF (num<1000) THEN
update money set num=1000 where name='zixia';
END IF;
**/
END
//自定义两个数相加