mysql - 变量

Posted 不咬人的兔子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql - 变量相关的知识,希望对你有一定的参考价值。

1. 分类:

1)系统变量

全局变量

会话变量

2). 用户变量

用户变量

局部变量

 

系统变量

1. 查看变量

显示所有系统【会话】变量: show global【session】 variables          #session可以省略,默认是会话变量

显示满足条件的变量: show global【session】 variables like ‘%char%’  #显示变量名包含char的变量

查看指定的变量: select @@global【session】.系统变量名       # SELECT @@global.‘character_set_client‘;

 

2. 修改变量

set @@globa【lsession】.系统变量名 = 值

会话变量只对当前会话有效

系统重启后两种变量都会重置为默认值,想要永久生效需要修改配置文件

 

用户变量

作用于仅对当前会话有效

弱类型,变量不需要声明类型

1. 声明并初始化:

set @变量名 = 值    # 1个@,系统是2个

set @变量名 := 值

select @变量名 := 值

 

2.修改(赋值):   #和初始化一样。

set @变量名 = 值   

set @变量名 := 值

select @变量名 := 值

 

select 字段 into @变量名 from 表;   # 和oracle差不多,不过oracle不用带@

和常量使用方法类似。

SELECT userid INTO @uid FROM account WHERE id = 2; #赋值给uid
SELECT * FROM userinfo WHERE uid = @uid;           #使用uid , 因为有@区分,所以可以重名
SELECT @uid;                                       #显示uid的值

 

局部变量

不用加 @符号。

仅在作用域中有效(begin end之间)。

声明只能是在begin end之间的开始。

 

声明:

declear 变量名 类型 【default 默认值】;

使用:

使用方法和用户变量基本一样。

 

- -视频上的方法直接在begin end中试了不行,而且网上也没查到当前版本可以用的。。。直接在存储过程中试试。

 

 

 

 

 

 

以上是关于mysql - 变量的主要内容,如果未能解决你的问题,请参考以下文章

如何创建片段以重复变量编号中的代码行

如何使用Android片段管理器传递变量[重复]

部分代码片段

append() 在这个代码片段中是如何工作的?与特定变量混淆[重复]

linux中怎么查看mysql数据库版本

从mysql的片段中加载ListView