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

MySQL的四种变量类型

时间:2017-05-21 11:46:33      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:更改   table   区别   ble   变量   复合   结束   使用   bsp   

一.全局变量
在系统运行期间动态更改其参数,重启后失效.
SET GLOABL var=XXX;
SET @@global.var=XXX;(SET @@var=XXX)
以上两种方式等效

查看系统的全局变量
show global variables [like "%"];

 

二.用户变量
对当前回话有效,回话结束后,变量销毁
SET @var=XXX;
SELECT @var:=uid FROM table where id=10;
使用@作为前缀标识符,set可以使用=或=:赋值,select则只能用:=进行赋值


三.会话变量
对当前回话有效,回话结束后,变量销毁
set session var_name = value;
set @@session.var_name = value;
set var_name = value;
以上三种方式等效

会话变量和用户变量的区别在于,除了前缀标识符外,会话变量是系统预先定义的一组变量,你不可能定义一个不存在的用户变量.

set test=‘test‘;
[Err] 1193 - Unknown system variable ‘test‘;

查看当前会话的变量
show [session] variables [like "%"];(其中session为默认,可以不用写)

常见的如消除mysql默认的sql_mode模式,改为最为宽松的模式
set sql_mode=‘‘;


四.局部变量
DECLEAR var INTEGER DEFAULT 0;
一般定义在BEGIN和END语句块之间,语句块结束即消失.

ps:
begin和end之间用于定义一组sql复合语句;

MySQL的四种变量类型

标签:更改   table   区别   ble   变量   复合   结束   使用   bsp   

原文地址:http://www.cnblogs.com/itfenqing/p/6884193.html

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