MySql变量说明
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变量说明的更多相关文章
- MySQL服务 - MySQL变量类型及变量设置
一.MySQL变量类型: MySQL通过变量来定义当前服务器的特性,保存状态信息等.我们可以通过手动更改变量的值来配置MySQL,也可以通过变量获得MySQL的当前状态信息.MySQL的变量类型可以从 ...
- mysql变量使用总结
set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...
- 十大最值得注意的MySQL变量
MySQL数据库中的变量非常多,下文为您整理出了十大最值得注意的MySQL变量,希望对您学习MySQL数据库能够有一些帮助. AD: MySQL变量很多,其中有一些MySQL变量非常值得我们注意,下面 ...
- mysql变量使用总结(转)
set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...
- MySQL变量的使用
在mysql文档中,mysql变量可分为两大类,即系统变量和用户变量. 但根据实际应用又被细化为四种类型,即局部变量.用户变量.会话变量和全局变量. 一.局部变量 mysql局部变量,只能用在begi ...
- MariaDB MySQL变量取值避免四舍五入的方法
MySQL变量取值避免四舍五入的方法 By:授客 QQ:1033553122 在一些对数据精确度要求比较高的场景(比如资金结算)下,变量取值时不能对变量值进行四舍五入操作,这时候就要做些预处理工作. ...
- [转]mysql变量使用总结
From : http://www.cnblogs.com/wangtao_20/archive/2011/02/21/1959734.html set语句的学习: 使用select定义用户变量的实践 ...
- [MySQL] 变量(参数)的查看和设置 [转]
[MySQL] 变量(参数)的查看和设置 类似于Oracle的参数文件,MySQL的选项文件(如my.cnf)用于配置MySQL服务器,但和Oracle叫法不一样,在MySQL里, 官方叫变量(Var ...
- Mysql 变量讲解
set语句的学习: 使用select定义用户变量的实践将如下语句改成select的形式: set @VAR=(select sum(amount) from penalties);我的修改: sele ...
- 黑马MySQL数据库学习day04 MySQL变量 存储过程 用户和授权管理
/* MySQL中的变量局部变量,用户变量,会话变量和全局变量. 用户变量不用定义,直接使用. 1.用户变量赋值 set @xxx = 值; 2.查询 select @xxx; 语法帮助: 过程保存在 ...
随机推荐
- 设计模式学习-使用go实现中介者模式
中介模式 定义 优点 缺点 适用范围 代码实现 参考 中介模式 定义 中介模式(Mediator):用一个中介对象来封装一系列的对象交互.中介者使个各对象不需要显示的相互引用,从而使其藕合松散,而且可 ...
- 火山引擎ByteHouse:分析型数据库如何设计列式存储
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 列式存储通过支持按列存储数据,提供高性能的数据分析和查询.作为云原生数据仓库的 ByteHouse,也采用列式存储 ...
- Xcode常用环境变量与常见使用场景
在Xcode的工程配置中,与路径相关的都是使用环境变量,这样可以避免使用决定路径时项目移植性差的问题. Xcode常用宏 __FILE__ 当前文件所在目录 __DATE__ 编译日期的字符串,格式为 ...
- ElasticSearch7.3学习(十)----采用restful风格对索引的增删改查
1. 为什么需要手动创建索引 直接put数据 PUT index/_doc/1,es会自动生成索引,并建立动态映射dynamic mapping.这样的话很大可能与实际的需求不服,在实际的应用上,我们 ...
- 零基础入门学习Java课堂笔记 ——day01
Java语法 1.注释.标识符.关键字 注释 不会被程序执行的代码或者块 //双斜杠表示单行注释 /*表示多行注释*/ 标识符.关键字 关键词系统事先定义好的,我们能直接拿来用的,不能作为变量名使用 ...
- JDK + Tomcat 安装 + 制作自定义镜像【第 2.1 篇 Tomcat 日志满问题】
更好的方法,跨平台(不依赖平台,比如阿里云的后台)的方法是:spring boot 定时任务,直接在程序里写定时清除日志的任务:以后再说: ============================== ...
- Oracle-报错信息显示问号或者乱码(Oracle 19c)
问题描述: 通过sqlplus登录Oracle19c时,执行SQL出现报错时,显示错误码出现问号: 解决方法: su - oracle vi .bash_profile 添加如下一行内容: ex ...
- 对称加密算法汇总:AES DES 3DES SM4 java 实现入门
密码的世界 如果你是黑帮老大,平时和手下沟通,如何保证自己的信息安全呢? 在神探夏洛克的第一季中,就讲述了一个如何侦破黑帮的加密交流的故事. 这种密码利用的是密码字典. 密码本身可以是一本书,比如常见 ...
- SpringBoot相关注解使用
@MapperScan注解和@Mapper @Mapper常用在相应的 *Mapper类上,但是每个类都使用相对麻烦,所以后来用@MapperScan替代 ,@MapperScan注解使用在启动类上. ...
- git bash走代理
git config --global http.proxy 'http://127.0.0.1:7890' git config --global https.proxy 'http://127.0 ...