用户变量的作用域要比局部变量要广。用户变量可以作用于当前整个连接,但是当当前连接断开后,其所定义的用户变量都会消失。
服务器为每个连接的客户端维护一系列会话变量。在客户端连接时,使用相应全局变量的当前值对客户端的会话变量进行初始化。设置会话变量不需要特殊权限,但客户端只能更改自己的会话变量,而不能更改其它客户端的会话变量。会话变量的作用域与用户变量一样,仅限于当前连接。当当前连接断开后,其设置的所有会话变量均失效。
白话一点就是,用户变量是用户在当前连接下自己设置的一个变量值(如set @name='小明'),一般用与存储过程等;会话变量是在客户连接数据库时自己所处的一个登录使用环境。
以上是自己的一点理解,可以用这个简单了解一下,有点抽象理解后再去查更具体的资料吧。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)