• MySQL变量的使用


    在mysql文档中,mysql变量可分为两大类,即系统变量和用户变量。

    但根据实际应用又被细化为四种类型,即局部变量、用户变量、会话变量和全局变量。

    一、局部变量

    mysql局部变量,只能用在begin/end语句块中,比如存储过程中的begin/end语句块。

    其作用域仅限于该语句块。

    -- declare语句专门用于定义局部变量,可以使用default来说明默认值
    declare age int default 0;
    
    -- 局部变量的赋值方式一
    set age=18;
    
    -- 局部变量的赋值方式二
    select StuAge 
    into age
    from demo.student 
    where StuNo='A001';

    二、用户变量

    mysql用户变量,mysql中用户变量不用提前申明,在用的时候直接用“@变量名”使用就可以了。

    其作用域为当前连接。

    -- 第一种用法,使用set时可以用“=”或“:=”两种赋值符号赋值
    set @age=19;
    
    set @age:=20;
    
    -- 第二种用法,使用select时必须用“:=”赋值符号赋值
    select @age:=22;
    
    select @age:=StuAge 
    from demo.student 
    where StuNo='A001';

    三、会话变量

    mysql会话变量,服务器为每个连接的客户端维护一系列会话变量。

    其作用域仅限于当前连接,即每个连接中的会话变量是独立的。

    -- 显示所有的会话变量
    show session variables;
    
    -- 设置会话变量的值的三种方式
    set session auto_increment_increment=1;
    set @@session.auto_increment_increment=2;
    set auto_increment_increment=3;        -- 当省略session关键字时,默认缺省为session,即设置会话变量的值
    
    -- 查询会话变量的值的三种方式
    select @@auto_increment_increment;
    select @@session.auto_increment_increment;
    show session variables like '%auto_increment_increment%';        -- session关键字可省略
    
    -- 关键字session也可用关键字local替代
    set @@local.auto_increment_increment=1;
    select @@local.auto_increment_increment;

    四、全局变量

    mysql全局变量,全局变量影响服务器整体操作,当服务启动时,它将所有全局变量初始化为默认值。要想更改全局变量,必须具有super权限。

    其作用域为server的整个生命周期。

    -- 显示所有的全局变量
    show global variables;
    
    -- 设置全局变量的值的两种方式
    set global sql_warnings=ON;        -- global不能省略
    set @@global.sql_warnings=OFF;
    
    -- 查询全局变量的值的两种方式
    select @@global.sql_warnings;
    show global variables like '%sql_warnings%';
  • 相关阅读:
    Struts2 helloWorld
    Python学习笔记基础汇总部分
    从控制台读入,典型的装饰者模式
    随机数产生方法小知识点
    Struts2基础知识
    面向对象原则之GOF是招式,九大原则才是精髓
    静态工厂方法
    单例模式singleton
    J2SE基础夯实系列之JDBC,链接数据库实例代码
    Ubuntu 12.04 下安装ssh 服务遇到的问题以及总结
  • 原文地址:https://www.cnblogs.com/Brambling/p/9259375.html
Copyright © 2020-2023  润新知