码迷,mamicode.com
首页 > 数据库 > 详细

mysql变量

时间:2018-07-19 17:24:29      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:ade   ini文件   my.ini   variables   形式   code   全局变量   show   core   

1.局部变量

begin
    declare g_score int default 10;
end

仅在begin...end之间有效

2.用户变量

set @g_score = 10;
或者
set @g_score :=10;
或者
select @g_socre := 10;
或者
select @g_score := score from grade;

 用户变量以 @var_name的形式表示

select是查询语句。

select @g_score := 10的意思是查询10,将结果10赋值给@g_score变量

select @g_score := score from grade的意思是从grade表中查询score字段值,并将结果赋值给@g_score变量。由于select查询得到的结果可能是多条记录,那么会将最后一条记录值赋值给@g_score;

查询用户变量
select @g_score;

3.系统变量

会话变量 session variables

全局变量 global variables

每当成功连接mysql服务器,则表示建立一条会话。会话变量提供给当前连接用户使用,只要断开连接,那么当前用户的所有会话变量被回收。

全局变量是mysql读取my.ini配置文件后,对整个服务器创建的变量。

全局变量的值根据ini文件初始化,当有会话被创建时,则复制一份全局变量给新建的会话使用。当然全局变量和会话变量没有直接联系。修改会话变量不会影响全局变量。修改全局变量后,仅对以后新建的会话变量有影响。对当前已经存在的会话变量是没有影响的。

修改会话变量

set session auto_increment_increment = 2;
或者
set auto_increment_increment = 2;
或者
set @@session.auto_increment_increment = 2;
或者
set @@auto_increment_increment = 2

 先show variables或者show session variables查看有哪些会话变量,可别修改不存在的会话变量

查看会话变量

select @@session.auto_increment_increment;
或者
select @@auto_increment_increment;

 默认session可以省略,服务器知道这是会话变量

修改全局变量

set global auto_increment_increment = 2;
或者
set @@global.auto_increment_increment = 2;

 查看全局变量

select @@global.auto_increment_increment;

 

mysql变量

标签:ade   ini文件   my.ini   variables   形式   code   全局变量   show   core   

原文地址:https://www.cnblogs.com/bibiafa/p/9336625.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!