1 #变量
2 /*
3 系统变量:
4 全局变量
5 会话变量
6
7 自定义变量:
8 用户变量
9 局部变量
10
11 */
12 #一、系统变量
13 /*
14 说明:变量由系统定义,不是用户定义,属于服务器层面
15 注意:全局变量需要添加global关键字,会话变量需要添加session关键字,如果不写,默认会话级别
16 使用步骤:
17 1、查看所有系统变量
18 show global|【session】variables;
19 2、查看满足条件的部分系统变量
20 show global|【session】 variables like '%char%';
21 3、查看指定的系统变量的值
22 select @@global|【session】系统变量名;
23 4、为某个系统变量赋值
24 方式一:
25 set global|【session】系统变量名=值;
26 方式二:
27 set @@global|【session】系统变量名=值;
28
29 */
30 #1》全局变量
31 /*
32 作用域:针对于所有会话(连接)有效,但不能跨重启
33 */
34 #①查看所有全局变量
35 SHOW GLOBAL VARIABLES;
36 #②查看满足条件的部分系统变量
37 SHOW GLOBAL VARIABLES LIKE '%char%';
38 #③查看指定的系统变量的值
39 SELECT @@global.autocommit;
40 #④为某个系统变量赋值
41 SET @@global.autocommit=0;
42 SET GLOBAL autocommit=0;
43
44 #2》会话变量
45 /*
46 作用域:针对于当前会话(连接)有效
47 */
48 #①查看所有会话变量
49 SHOW SESSION VARIABLES;
50 #②查看满足条件的部分会话变量
51 SHOW SESSION VARIABLES LIKE '%char%';
52 #③查看指定的会话变量的值
53 SELECT @@autocommit;
54 SELECT @@session.tx_isolation;
55 #④为某个会话变量赋值
56 SET @@session.tx_isolation='read-uncommitted';
57 SET SESSION tx_isolation='read-committed';
58
59 #二、自定义变量
60 /*
61 说明:变量由用户自定义,而不是系统提供的
62 使用步骤:
63 1、声明
64 2、赋值
65 3、使用(查看、比较、运算等)
66 */
67
68 #1》用户变量
69 /*
70 作用域:针对于当前会话(连接)有效,作用域同于会话变量
71 */
72
73 #赋值操作符:=或:=
74 #①声明并初始化
75 SET @变量名=值;
76 SET @变量名:=值;
77 SELECT @变量名:=值;
78
79 #②赋值(更新变量的值)
80 #方式一:
81 SET @变量名=值;
82 SET @变量名:=值;
83 SELECT @变量名:=值;
84 #方式二:
85 SELECT 字段 INTO @变量名
86 FROM 表;
87 #③使用(查看变量的值)
88 SELECT @变量名;
89
90
91 #2》局部变量
92 /*
93 作用域:仅仅在定义它的begin end块中有效
94 应用在 begin end中的第一句话
95 */
96
97 #①声明
98 DECLARE 变量名 类型;
99 DECLARE 变量名 类型 【DEFAULT 值】;
100
101
102 #②赋值(更新变量的值)
103
104 #方式一:
105 SET 局部变量名=值;
106 SET 局部变量名:=值;
107 SELECT 局部变量名:=值;
108 #方式二:
109 SELECT 字段 INTO 具备变量名
110 FROM 表;
111 #③使用(查看变量的值)
112 SELECT 局部变量名;
113
114
115 #案例:声明两个变量,求和并打印
116
117 #用户变量
118 SET @m=1;
119 SET @n=1;
120 SET @sum=@m+@n;
121 SELECT @sum;
122
123 #局部变量
124 DECLARE m INT DEFAULT 1;
125 DECLARE n INT DEFAULT 1;
126 DECLARE SUM INT;
127 SET SUM=m+n;
128 SELECT SUM;
129
130
131 #用户变量和局部变量的对比
132
133 作用域 定义位置 语法
134 用户变量 当前会话 会话的任何地方 加@符号,不用指定类型
135 局部变量 定义它的BEGIN END中 BEGIN END的第一句话 一般不用加@,需要指定类型
136

MySql变量说明的更多相关文章

  1. MySQL服务 - MySQL变量类型及变量设置

    一.MySQL变量类型: MySQL通过变量来定义当前服务器的特性,保存状态信息等.我们可以通过手动更改变量的值来配置MySQL,也可以通过变量获得MySQL的当前状态信息.MySQL的变量类型可以从 ...

  2. mysql变量使用总结

    set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...

  3. 十大最值得注意的MySQL变量

    MySQL数据库中的变量非常多,下文为您整理出了十大最值得注意的MySQL变量,希望对您学习MySQL数据库能够有一些帮助. AD: MySQL变量很多,其中有一些MySQL变量非常值得我们注意,下面 ...

  4. mysql变量使用总结(转)

    set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...

  5. MySQL变量的使用

    在mysql文档中,mysql变量可分为两大类,即系统变量和用户变量. 但根据实际应用又被细化为四种类型,即局部变量.用户变量.会话变量和全局变量. 一.局部变量 mysql局部变量,只能用在begi ...

  6. MariaDB MySQL变量取值避免四舍五入的方法

    MySQL变量取值避免四舍五入的方法 By:授客 QQ:1033553122 在一些对数据精确度要求比较高的场景(比如资金结算)下,变量取值时不能对变量值进行四舍五入操作,这时候就要做些预处理工作. ...

  7. [转]mysql变量使用总结

    From : http://www.cnblogs.com/wangtao_20/archive/2011/02/21/1959734.html set语句的学习: 使用select定义用户变量的实践 ...

  8. [MySQL] 变量(参数)的查看和设置 [转]

    [MySQL] 变量(参数)的查看和设置 类似于Oracle的参数文件,MySQL的选项文件(如my.cnf)用于配置MySQL服务器,但和Oracle叫法不一样,在MySQL里, 官方叫变量(Var ...

  9. Mysql 变量讲解

    set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...

  10. 黑马MySQL数据库学习day04 MySQL变量 存储过程 用户和授权管理

    /* MySQL中的变量局部变量,用户变量,会话变量和全局变量. 用户变量不用定义,直接使用. 1.用户变量赋值 set @xxx = 值; 2.查询 select @xxx; 语法帮助: 过程保存在 ...

随机推荐

  1. SqlSugar删除数据

    1.根据实体删除 1.1 强类型实体 需要配置主键 ,根据主键删除需要给实体配置主键,参考文档实体配置 //单个实体 db.Deleteable<Student>(new Student( ...

  2. 手把手教学小型金融知识图谱构建:量化分析、图数据库neo4j、图算法、关系预测、命名实体识别、Cypher Cheetsheet详细教学等

    手把手教学小型金融知识图谱构建:量化分析.图数据库neo4j.图算法.关系预测.命名实体识别.Cypher Cheetsheet详细教学等 效果预览: 1. 知识图谱存储方式 知识图谱存储方式主要包含 ...

  3. 8.5 C++ 继承与多态

    C/C++语言是一种通用的编程语言,具有高效.灵活和可移植等特点.C语言主要用于系统编程,如操作系统.编译器.数据库等:C语言是C语言的扩展,增加了面向对象编程的特性,适用于大型软件系统.图形用户界面 ...

  4. 并发编程-JUC的三个常用工具类

    1.CountDownLatch:减法计数器 代码实例 public class CountDownLatchTest { public static void main(String[] args) ...

  5. centos多网卡时修改网卡的优先级

    我有个服务器有多个网卡,分别配置了多个网段的IP地址,发现有一个网段ping不通.最后发现是路由优先级的问题. 查看路由 查看本机路由route主要看Metric的值,值越小表示优先级越高,取值范围1 ...

  6. Vite4+Typescript+Vue3+Pinia 从零搭建(2) - ts配置

    项目代码同步至码云 weiz-vue3-template 关于tsconfig的配置字段可查看其他文档,如 typeScript tsconfig配置详解 tsconfig.json 文件修改如下: ...

  7. 源代码安装Nginx和PHP

    源代码安装Nginx和PHP 一.安装前准备: 有些工具在安装Nginx必备.譬如gcc用来编译C程序,gcc-c++ 用来编译C++程序,wget用来从网络下载文件. [root@localhost ...

  8. MySQL-报错提示:ERROR 2002 (HY000): Can't connect to local MySQL

     场景:通过mysql  -h localhost -u root -p 连接MySQL数据库时报错:ERROR 2002 (HY000): Can't connect to local MySQL ...

  9. Git操作--Pycharm

    声明: 1)仅作为个人学习,如有冒犯,告知速删! 2)不想误导,如有错误,不吝指教! 一--在idea中配置git: 1. 更改git的安装路径:file-->settings,找到versio ...

  10. JS 疫情宅在家,学习不能停,七千字长文助你彻底弄懂原型与原型链,武汉加油!!中国加油!!(破音)

    壹 ❀ 引 原型与原型链属于老生常谈的问题,也是面试高频问题,但对于很多前端开发者来说,组织语言去解释清楚是较为困难的事情,并不是原型有多难,稍微了解的同学都知道原型这一块涉及太多知识.比如我们可以灵 ...