MYSQL 储存过程和函数的表达式

一:操作变量

        (1):声明变量

            declare var_name[,...] type [default value]   (这种是局部变量,书上很坑,没说这种声明变量只能在储存过程中用且只能在begin/end中用!!!)

            例如:     declare a int default 1000;       

    delimiter $$

                create procedure pro()

                    begin

                        declare a int default 1000;   

                        select student_id into a         (表示把查询结果赋值给变量)

                          from students_info where student_id=1;

                        end$$            
             set @a =1000


二:操作条件

          在高级编程语言中为了提高语言的安全性,提供了异常处理机制。对于MYSQL软件,也提供了一种机制来提高安全性,即本节所要介绍的“条件”。条件的定义和处理可以用来定义处理过程中遇到的机制来提高安全性,即本节所要介绍的“条件”。条件的定义和处理可以用来定义在处理过程中遇到问题时相应的步骤。

    1.定义条件 

    declare condition_name condition for condition_value

            condition_value:   

                sqlstate[value] sqlstate_value

                |mysql_error_code

            在上述语句中,condition_name参数表示所要定义的条件名称;参数condition_value用来实现设置条件的类型;

参数sqlstate_value和mysql_error_code用来设置条件的错误。

    2.定义处理程序      

 declare handler_type handler for condition_value[,....] sp_statement

        handler_type:

                condition

                |exit

                |undo

        condition_value:

                sqlstate[value] sqlstate_value

                |condition_name

                |sqlwaring

                |not found

                |sqlexception

                |mysql_error_code

            在上述语句里,condition_name参数表示所要定义的条件名称;参数condition_value用来实现设置条件的类型;参数sqlstate_value和mysql_error_code用来设置条件的错误

            例如:书上也没有讲例子。。。。。。。多半不怎么用这个。。


       


你可能感兴趣的:(数据库)