MySQL定义变量建立存储过程以及与

湖南白癜风微信交流群 http://liangssw.com/bozhu/12747.html

1.declare

declare变量名变量类型default默认值;

DROPPROCEDUREIFEXISTStest1;delimiter//CREATEPROCEDUREtest1()BEGINDECLAREnintDEFAULT1;WHILEnDOinsertintouser(username,password,create_time)values(,,now());setn=n+1;ENDWHILE;END//delimiter;calltest1();

declare定义的变量相当于一个局部变量在end之后失效,而且declare只能在begin,end中定义。

2.set

set

变量名=值

DROPPROCEDUREIFEXISTStest2;delimiter//CREATEPROCEDUREtest2()BEGINSET

n=1;WHILE

nDOinsertintouser(username,password,create_time)values(,,now());SET

n:=

n+1;ENDWHILE;END//delimiter;CALLtest2();

此处的变量n不需要声明,MySQL会自动根据值类型来确定类型,这种变量要在其前面加上“

”符号,称之为会话变量,代表在整个会话过程起作用,有点类似于全局变量。

在set和update时,=和:=,是一样的,都有赋值的作用。

:=是赋值的作用,先执行

n+1,然后再赋值给

n




转载请注明:http://www.aierlanlan.com/rzfs/3088.html

  • 上一篇文章:
  •   
  • 下一篇文章: