变量分为: 一、系统变量:变量是由系统提供,不是用户定义,属于服务器层面的,不用我们定义,直接使用 全局变量 会话变量 二、自定义变量 用户变量 局部变量
一、 系统变量 1、 查看所有的系统变量 SHOW VARIABLES (不写关键字默认是会话变量) SHOW GLOBLE VARIABLES (查看全局变量) SHOW SESSION VARIABLES (查看会话变量) 2、 查看满足条件的部分系统变量 Show global [ session] variable like ' %char%’ 3、 查看指定某个系统变量的值 Select @@系统变量名; Select @@global.系统变量名;(全局) Select @@session.系统变量名;(会话 或者不写) 4、 为某个系统变量赋值 方式一: Set global [session] 系统比变量名 = 值; 方式二: Set @@globlal[session].系统变量名 = 值; 注意:如果是全局级别,则需要加global,如果是会话饥饿则需要加session,如果不写,则默认session 《一》 全局变量 (作用域:服务器每次启动将为所有的全局变量赋初始值,针对所有的会话和连接都有效,不能跨重启) 1、 查看所有的全局变量 Show global variables ; 2、 查看部分全局变量 Show global variables like '%char%’ 3、 查看指定的全局变量的值 Select @@global.变量名; 4、 为某个指定的全局变量赋值 Set @@global.autocommit=0; 《二》 会话变量(仅仅针对当前会话(连接)有效) 1、 查看所有的会话变量 Show session variables;(也可省略session) 2、 查看部分的会话变量 Show variable like '%char%’; Show session variables like '%char%’; 3、查看指定的某个会话变量值 Select @@tx_isolation; Select @@session.tx_isolation; 3、 为某个会话变量赋值 方式一: Set @@session.tx_isolation = ' read-uncommitted’; Set @@tx_isolation = ' read-uncommitted’; 方式二: Set session tx_isolation = 'read-uncommitted’ 二、 自定义变量 说明:变量是用户定义的,不是系统的 使用步骤:声明 赋值 使用 《一》用户变量 作用域:针对于当前会话(连接)有效,同于会话变量的作用域,应用在任何地方也就是begin end 里面或begin end 外面 1、 声明并初始化(说明:set 有两种声明方法,select只有一种申明方法) Set @用户变量名=值; Set @用户变量名:=值; Select @用户变量名:=值; 2、 赋值或者更新用户变量的值 方法一:再用一次声明初始化 Set @用户变量名=值; Set @用户变量名:=值; Select @用户变量名:=值; 方法二: 通过 select into Select 字段 into @变量名;
《二》局部变量 作用域:仅仅在定义它的begin end 中有效 应用在begin end 当中第一句话 1、 声明 DECLARE 变量名 类型 DECLARE 变量名 类型 DEFAULT 值(默认值要和前面定义的类型一致或者兼容)2、 赋值 方法一:再用一次声明初始化 Set 局部变量名=值; Set 局部变量名:=值; Select @局部变量名:=值; 方法二: 通过 select into Select 字段 into 局部变量名; 3、 使用 Select 局部变量 |
|
来自: songqengrwwxi3 > 《数据库》