mysql (declare,set,@)解析分析区别

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/caox_nazi/article/details/83790816

mysql (declare,set,@)解析分析区别

1.【局部变量与用户变量的区别】:

局部变量:(1):局部变量使用declare语句定义;(2):局部变量只在begin-end语句块之间有效;(3):局部变量中没有“@”符号。

用户变量:(1):用户变量是以”@”开头的 ;(2)用户变量使用set语句定义。

2.【declare用法】:

通过declare定义变量在BEGIN…END中,且在语句之前。并且可以通过重复定义多个变量​​​​​​​。

 3.【set用法】:

SET @t1=0, @t2=1, @t3=2;

SELECT @t1:=1;
RESULT:=> t1 = 1

SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;

RESULT:=> t2=1;
          t3=4;
          t1 = t2 + t3
          t1 = 1 + 4 = 5;
          
 

 4.【操作用法】: 

【4.1】: declare用来定义局部变量;

【4.2】: @用来定义会话变量(用户变量)

代表整个会话过程他都是有作用的,这个有点类似于全局变量一样。这种变量用途比较广,因为只要在一个会话内(就是某个应用的一个连接过程中),这个变量可以在被调用的存储过程或者代码之间共享数据。​​​​​​​​​​​​​​

 5.【参考文献】:  mysql变量定义(declare,set,@)使用实例讲解​​​​​​​

猜你喜欢

转载自blog.csdn.net/caox_nazi/article/details/83790816
今日推荐