( 16 )MySQL中的变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了( 16 )MySQL中的变量相关的知识,希望对你有一定的参考价值。
变量
系统变量 和 自定义变量
系统变量
系统变量:系统定义好的变量,大部分系统变量,一般不需要用户控制,系统变量用来控制服务器的表现 如:autocommit , auto_increment 等.
查看系统变量
show variables;
查看具体变量的变量值:任何一个有数据返回的内容都是有 select 查看
查看系统变量的基本语法: select @@ 变量名;
eg: select @@version,@@autocommit, @@auto_increment_offset,@@character_set_results;
修改系统变量
修改系统变量分为两种方式: 会话级别和全局级别
set @@变量名 = 值;
set 变量名 = 值;
会话级别 : 临时修改,当前客户端有效,当次连接有效.
全局级别 : 一次修改,永久生效(对所有客户端都生效)
set global变量名 = 值;
别的客户端,需要重启客户端生效.
自定义变量
系统为了区分系统变量,规定自定义变量必须使用一个@符号.
set @变量名 = 值 ;
select 变量名;
在mysql中, "=" 会默认为比较符号处理,mysql为了区分比较和赋值的概念重新定义了一个新的赋值符号---- :=
MySql 中允许从数据表中获取数据然后赋值给变量:两种方式
方案1 : 边赋值,边查看结果
select @变量名 := 字段名 form 数据源 ; -- 从数据库表中取字段赋给变量.
方案2 : 只有赋值不查看结果,要求很严格: 最多只能获得一条数据记录,mysql不支持数据.
select 字段列表 from 表名 into 变量列表 ;
所用自定义的变量都是会话级别.变量不区分数据库,属于用户级别.
以上是关于( 16 )MySQL中的变量的主要内容,如果未能解决你的问题,请参考以下文章