Rumah  >  Artikel  >  pangkalan data  >  MySQL存储过程快速入门

MySQL存储过程快速入门

巴扎黑
巴扎黑asal
2017-04-15 09:08:411359semak imbas

要在数据库中使用存储过程必须先了解数据库中如何使用变量和自定义函数,暴力入门开始。

变量

系统变量和用户自定义变量的区别是用户自定义变量在
查看时使用一个@,而系统变量使用两个@

  • 系统变量

  1. 介绍:用户不能定义系统变量,但是可以修改和使用

  2. 使用:使用select获取变量的值,但是因为select默认会将所有的字符串当做一个表的字段来查询,所以如果是变量需要使用@@符号来访问

查看所有系统内置变量命令:show variables;
查看某个系统变量 命令:select  @@变量名; ,如select @@version
修改变量(局部修改)命令:set 变量名 = 值 ,如set autocommit = 3;

  • 自定义变量

自定义变量语法:set @变量名 = 值; ,如`set @name = 'saboran';
查看自定义变量值:select @name;

  • 变量作用域

外部定义的变量叫做全局变量,全局变量与js中的全局变量一样,能够在函数内部被使用;

局部变量:declare 变量 数据类型
局部变量不能在函数外部访问。

自定义函数

语法

create function 函数名(参数列表) returns 数据类型
    begin
        // 函数体 
        // 返回值
    end

举个栗子

delimiter $$ 
create function avg(first int) returns int
    begin 
        declare value ;
        set value = first;
        return value;
    end
    $$

                                               


MySQL存储过程暴力入门

要在数据库中使用存储过程必须先了解数据库中如何使用变量和自定义函数,暴力入门开始。

变量

系统变量和用户自定义变量的区别是用户自定义变量在
查看时使用一个@,而系统变量使用两个@

  • 系统变量

  1. 介绍:用户不能定义系统变量,但是可以修改和使用

  2. 使用:使用select获取变量的值,但是因为select默认会将所有的字符串当做一个表的字段来查询,所以如果是变量需要使用@@符号来访问

查看所有系统内置变量命令:show variables;
查看某个系统变量 命令:select  @@变量名; ,如select @@version
修改变量(局部修改)命令:set 变量名 = 值 ,如set autocommit = 3;

  • 自定义变量

自定义变量语法:set @变量名 = 值; ,如`set @name = 'saboran';
查看自定义变量值:select @name;

  • 变量作用域

外部定义的变量叫做全局变量,全局变量与js中的全局变量一样,能够在函数内部被使用;

局部变量:declare 变量 数据类型
局部变量不能在函数外部访问。

自定义函数

语法

create function 函数名(参数列表) returns 数据类型
    begin
        // 函数体 
        // 返回值
    end

举个栗子

delimiter $$ 
create function avg(first int) returns int
    begin 
        declare value ;
        set value = first;
        return value;
    end
    $$


Atas ialah kandungan terperinci MySQL存储过程快速入门. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn