zoukankan      html  css  js  c++  java
  • MySQL的变量

    MySQL的变量

    变量分两种,系统变量和用户变量

    来源:https://blog.csdn.net/J080624/article/details/73828012

    【1】系统变量
    系统定义好的变量,大部分时候用户根本不需要使用系统变量。系统变量是用来控制服务器表现的。如:autocommit,auto_increment_increment等。

    ① 查看系统变量

    --查看所有变量
    show variables;

    --查看范围变量
    show variables like '%变量名%';
    修改系统变量

    修改系统变量有两种方式:会话级别和全局级别。

    会话级别
    临时修改,当前客户端当次连接有效,关闭将会恢复默认值。

    有说法称为会话变量,属于系统变量子集,区别与用户变量!

    set 变量名 = 变量值;

    or

    set @@变量名 = 变量值;
    1
    2
    3
    4
    5
    示例如下:

    set autocommit = 0;

    set @@ autocommit = 0;
    全局级别
    一次修改,永久生效(对所有客户端都生效)。

    set global 变量名 = 值;
    1
    示例如下:

    set GLOBAL autocommit = 1;
    1
    当前客户端修改后需要关闭连接重新打开,即可看到生效。

    如果对方(其他)客户端当前已经连接上服务器,那么当次修改无效,要退出重新登录才会生效。
    ④ 变量单位

    不同的变量的单位不同,比如table_cache是指缓存的表的个数,而key_buffer_size则是以字节为单位,另外还有以页或者百分比为单位的变量。

    许多变量可以通过后缀制订单位,比如1M表示一百万字节,在配置文件中或者在命令行下有效。但是在使用set命令的时候,这些单位就无效,必须使用数字,单位为字节。
    比如:

    set @@session.sort_buffer_size = 1024*1024
    或者
    set @@session.sort_buffer_size = 1048576
    1
    2
    3

    但是配置文件中设置的时候就不能使用表达式


    来源:https://blog.csdn.net/JesseYoung/article/details/40779631

    1 用户变量介绍
    用户变量即用户自己定义的变量,我们可以给用户变量分配值,并且可用在任何可以正常使用标量表达式的地方。
    引入用户变量之前我们必须使用set语句或select语句来定义它,然后为它赋一个值,否则变量就只有一个空值。
    用户变量与连接有关。也就是说,一个客户端定义的变量不能被其它客户端看到或使用。当客户端退出时,该客户端连接的所有变量将自动释放。
    2 用户变量定义
    set语句可用于向系统变量或用户变量赋值,针对用户变量的定义如下:
    SET @var_name = expr [, @var_name = expr] ...
    也可使用select语句来定义:
    SELECT @var_name := expr [, @var_name = expr] ...
    用户变量:以"@"开始,形式为"@var_name",以区分用户变量及列名。它可以是任何随机的,复合的标量表达式,只要其中没有列指定。
    一个变量名可以由当前字符集的数字字母字符和“_”、“$”和“.”组成。缺省字符集是ISO-8859-1 Latin1;这可以用mysqld 的--default-character-set 选项更改字符集。
    对于SET,可以使用=或:=来赋值,对于SELECT只能使用:=来赋值。、查看用户变量

    查看变量使用select语句

    select @name;
    

    用户变量没有删除指令,退出客户端自动释放。

  • 相关阅读:
    nuget包管理器控制台下的powershell脚本介绍
    MSSQL数据库链接字符串Asynchronous Processing=true不是异步查询吗,怎么是缓存
    .net mvc web api 返回 json 内容,过滤值为null的属性
    序列化与反序列化成XML
    ASP.NET WebForm中用async/await实现异步
    webapi集成owin使用Oauth认证时能获取accee_token仍无法登录的解决办法
    C#异常类相关总结
    从多个XML文档中读取数据用于显示webapi帮助文档
    VS代码段扩展Snippet Designer is a Visual Studio plug in which allows you to create and search for snippets inside the IDE
    【工具】CodeSmith Generator 7.0.2激活步骤
  • 原文地址:https://www.cnblogs.com/jiading/p/11748387.html
Copyright © 2011-2022 走看看