mysql数据库编程

2025-10-17 08:18:52

1、编程,就是一种“逻辑代码”,具有如下3个特点:

1,变量的使用;

2,流程控制结构的使用;

3,函数的使用;

语句块包含符

begin

。。。。

end

它相当于js或php中的“大括号”使用场合。

不过,mysql,它更灵活一些:

mysql数据库编程

2、该结构可以设定“标识符”,该标识符用于“代表”该语句块结构。则内部可以使用该标识符,以“退出”该语句块结构,比如:

AAA:  begin

.......

if  ( ... )  then

begin

leave  AAA;  //这里就是退出该AAA语句块。

end;

end  if;

end  AAA ;

3、流程控制

if分支结构

mysql数据库编程

4、case分支结构

有两种形式:

mysql数据库编程

5、示意性代码1(形式1):

set  @v1 = 1;  #定义变量并赋值

case  @v1

when  1 then

begin

分支1.。。。,可以做具体的各种计算,以及增删改查。。。

set @v2 = @v1*3 + 4;//计算

insert into  .....;

update  .....;

delete  .....;

select  ......

end;

when  2  then

begin

分支2.。。。

end;

......

else

begin

分支else.。。。

end;

end case;

示意性代码2(形式2):

set  @v1 = 5;

case

when  @v1 < 3 then

begin

......

end;

when @v1 >= 3 and @v1 <= 5 then

begin

......

end;

......

end  case;

1、BBB : loop

begin

这里才是循环体的语句,中间可以通过BBB标识符来退出该循环;

end;

end loop  BBB;

while循环结构

while  (条件判断)  do

begin

。。。。循环体语句

end;

end  while;

while语句:先判断,成立后进入循环;

repeat循环结构

repeat

begin

。。。。语句块。。。

end;

until  判断条件;

end  repeat;

repeat循环结构:第一次会无条件进入循环体中。其后,循环条件满足就又进入。

变量

分两种变量:

常规变量:

变量名直接写,但必须:先声明,后使用;

声明:

declare  变量名  变量类型  【default  初始值】;

使用:

赋值:set  变量名  = 值;

然后,在任何需要数据的场合都可以用它;

限制:

常规变量,只能在“定义函数”“定义存储过程”,“定义触发器”的3种情形下使用。

会话变量:

变量名前面必须带“@”符号,可以直接赋值,并使用——跟php很像。

可以在任何场合使用;

存储函数

存储函数就是函数!——只是规定:其必须返回一个数据值;

我们系统内部也有一些函数,比如:

md5(),  now(),  version(),  mid() .....

所有函数,都有一个返回值;

我们使用的时候,就要把该函数的调用当做一个值来看待并使用。

则:

我们自己定义的函数,也可以同样使用。

mysql数据库编程

2、定义形式:

mysql数据库编程

3、函数中语句,可以有:

变量定义和使用;

流程控制语句;

数据表的增删改操作; #不可以进行查询操作(select, show, desc)

举例:

mysql数据库编程

1、存储过程还是函数!——只是规定:存储函数不能返回数据值;

定义形式:

mysql数据库编程

2、补充说明:

1,该存储过程中,不能使用return语句返回数据;

2,而存储过程中,其中的select会返回结果集,只是作为“数据查询结果”(表的形式),而不是作为“存储过程”执行后得到的“单个数据”。

3,其中,形参前面可以带:in, 或out, 或inout修饰符,其含义分别为:

in:表示该形参是接收实参传过来的数据,也就是最常见的情形,默认不写就是它;

out:表示该形参是用于将函数内部的数据传出给对应的实参,此时实参必须是变量

inout:具有上述2个功能。此时,其对应实参也必须是变量。

存储过程调用形式:

call  存储过程名(实参1,实参2,....)

在php中,也可以调用它,类似这样:

<?php

$result = mysql_query(“call  getStuByGender(‘男’) ”);

?>

举例:

mysql数据库编程

mysql数据库编程

3、演示2:使用in,out,inout的形参:

mysql数据库编程

mysql数据库编程

4、再来验证@m2, @m3的值:

mysql数据库编程

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢