bitsCN.com
MySQL一共有2种变量,用户的和系统的 用户的又分为局部变量和Session级变量 系统的分为Session级变量和Global级变量 系统: MySQL的大部分配置选项都有相应的Session级或Global级的变量可以用在客户端程序如mysql中来改变,从而影响MySQL对mysql连接的响应 设定Global级的变量,影响的是所有之后连接到服务器的mysql连接 设定session级的变量,影响的是服务器对当前连接的响应 设定系统级的这两种变量的方式是 set @@global.var_name = ; set @@session.var_name = ; 用户: 用户可以设置一些自定义的变量来存储将要重复使用的数据,方便后续程序的使用 局部变量:用declare声明,只能用在begin end语句块中,并且必须在begin end语句块的开始定义,通常用于存储程序中 如 01CREATE PROCEDURE sp1 (x VARCHAR(5))02 BEGIN03 DECLARE xname VARCHAR(5) DEFAULT 'bob';04 DECLARE newname VARCHAR(5);05 DECLARE xid INT;06 07 SELECT xname,id INTO newname,xid08 FROM table1 WHERE xname = xname;09 SELECT newname;10 END;session级变量:又叫会话变量,用set设定,设定之后,在后面的所有可以使用变量的地方都能使用它1SET @t1=0, @t2=0, @t3=0;2SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3; 作者 流云诸葛 bitsCN.com