MySQL数据库8(二十五)变量作用域

变量作用域

变量作用域:变量能够使用的区域范围

局部作用域

使用declare关键字声明(在结构体内:函数/存储过程/触发器),而且只能在结构体内部使用。

declare关键字声明的变量没有任何符号修饰,就是普通字符串,如果在外部能够访问该变量,系统会自动认为是字段。

会话作用域

用户定义的:使用@符号定义的变量,使用set关键字。

会话作用域:在当前用户当次连接有效,只要在本连接之中,任何地方都可以使用(可以在结构内部,也可以跨库)

会话变量可以在函数内部使用

 

会话变量可以跨库

 

 

全局作用域

所有的客户端所有的连接都有效,需要使用全局符号来定义

set global 变量名 = 值;

set @@global.变量名 = 值;

通常在SQL编程的时候,不会使用自定义变量来控制全局。一般都是定义会话变量或者在结构中使用局部变量来解决问题。

posted @ 2018-09-09 11:08  LionelYee  阅读(1585)  评论(0编辑  收藏  举报