zoukankan      html  css  js  c++  java
  • Mysql15—— 变量

    系统变量

    • 全局变量
    • 会话变量

    自定义变量

    • 用户变量
    • 局部变量

    一、系统变量

    变量由系统提供,不是用户定义,属于服务器层面

    使用的语法:

    1、查看所有的系统变量

    SHOW GLOBAL|SESSION VARIABLES;

    2、查看满足条件的部分系统变量

    show global|【session】 variables like '%char%';

     3、查看指定的某个系统变量的值

    select @@global|【session】.系统变量名;

     4、为某个系统变量赋值

    方式一:

    set global|【session】 系统变量名 = 值;

    方式二:

    set @@global|session.系统变量名 = 值;

    注意:

    如果是全局级别,则需要加global,如果是会话级别,则需要加session,如果不写,则默认session。

    1》全局变量

    作用域:服务器每次启动将为所有的全局变量赋初始值,针对于所有的会话(连接)有效,但不能跨重启

    查看所有的全局变量

    SHOW GLOBAL VARIABLES;

    查看部分的全局变量

    SHOW GLOBAL VARIABLES LIKE '%char%';

    查看指定的全局变量的值

    SELECT @@global.autocommit;

    SELECT @@tx_isolation;

    为某个指定的全局变量赋值

    SET @@global.autocommit=0;

    2》会话变量

    作用域:仅仅针对于当前的会话(连接)有效

    查看所有的会话变量

    SHOW VARIABLES 

    SHOW SESSION VARIABLES

    查看部分的会话变量

    SHOW VARIABLES LIKE '%CHAR%';

    SHOW SESSION VARIABLES LIKE ‘%char%’;

    查看指定的某个会话变量

    SELECT @@tx_isolation;

    SELECT @@session.tx_isolation;

    为某个会话变量赋值

    方式一:

    SET @@tx_isolation = 'read-uncommitted';

    方式二:

    SET SESSION tx_isolation = 'read-committed';

    二、自定义变量

    说明:变量是用户自定义的,不是由系统定义的

    使用步骤:

    • 声明
    • 赋值
    • 使用(查看、比较、运算等)

    1、用户变量

    作用域:针对于当前会话(连接)有效,同于会话变量的作用域,应用在任何地方,也就是begin end的里面或外面

    赋值的操作符: =或:=

    声明并初始化

    SET @用户变量名=值;

    SET @用户变量名:=值;

    SELECT @用户变量名:=值;

    赋值(更新用户变量的值)

    方式一:通过SET或SELECT

    • SET @用户变量名=值;
    • SET @用户变量名:=值;
    • SELECT @ 用户变量名:=值;

    方式二:通过SELECT INTO

    SELECT 字段 INTO 变量名

    FROM 表;

    使用(查看用户变量的值)

    SELECT @用户变量名;

    案例

    声明并初始化

    SET @name='john';

    SET @name=100;

    SET @count=1;

    赋值

    SELECT COUNT(*) INTO @count

    FROM employees;

    查看

    SELECT @count;

    2、局部变量

    作用域:仅仅在定义它的begin end中有效

    声明

    DECLARE 变量名 类型;

    DECLARE 变量名 类型 DEFAULT 值;

    赋值(更新用户变量的值)

    方式一:通过SET或SELECT

    • SET @用户变量名=值;
    • SET @用户变量名:=值;
    • SELECT @ 用户变量名:=值;

    方式二:通过SELECT INTO

    SELECT 字段 INTO 变量名

    FROM 表;

      作用域 定义和使用的位置 语法
    用户变量 当前会话 会话中的任何地方 声明的语法不同,必须加@符号
    局部变量 BRGIN END 中 只能在BEGIN END中,且为第一句话 一般不用加@符号,需要限定类型 
  • 相关阅读:
    ubuntu sudo 号令有效处理
    shell脚本的主笔、存储、实行
    Oracle 11gR1中细粒度访谒收集处事(4)
    Solaris效力经管工具 SMF快速入门指南(1)
    Solaris 10完成宁静Kerberos身份验证(2)
    高质量C /C编程指南第2章 程序的版式
    Solaris 10下设置EJB 3.0景遇(1)
    高质量C /C编程指南序言
    Java学习之路:不走弯路,就是捷径 www.51testing.com
    两个结构体可以直接赋值吗? 回复 "JohnsonAnother" 的问题
  • 原文地址:https://www.cnblogs.com/stu-jyj3621/p/14298731.html
Copyright © 2011-2022 走看看