MySQL变量原理及应用实例
作者:八英里 发布时间:2024-01-12 17:35:30
在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%';
来源:https://www.cnblogs.com/deepalley/p/13444609.html


猜你喜欢
- mysqladmin是MySQL官方提供的shell命令行工具,它的参数都需要在shell
- python字符串连接的方法,一般有以下三种:方法1:直接通过加号(+)操作符连接website = 'python' +
- 这篇文章主要介绍了python如何实现不用装饰器实现登陆器小程序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 本文实例讲述了MySQL使用外键实现级联删除与更新的方法。分享给大家供大家参考,具体如下:MySQL支持外键的存储引擎只有InnoDB,在创
- 直接将 视频的HTML网址存入models ,以字符串的形式#关于我们 CharFieldclass About(models.Model)
- 项目中使用的是vue+element实现的全局loading1.引入所需组件,这里主要就是router和element组件,element组
- PHP registerXPathNamespace() 函数实例为下一个 XPath 查询创建命名空间上下文:<?php $xml=
- 关于缓存剩下的问题是数据的隐私性以及在级联缓存中数据应该在何处储存的问题。通常用户将会面对两种缓存: 他或她自己的浏览器缓存(私有缓存)以及
- infer 这个关键字,整理记录一下,避免后面忘记了。有点难以理解呢。inferinfer 是在 typescript 2.8中新增的关键字
- 一、题目描述A:先输出提示语句,并接受用户输入的年、月。B:根据用户输入的年,先判断是否是闰年。C:根据用户输入的月来判断月的天数。D:用循
- CNN(Convolutional Neural Networks) 卷积神经网络简单讲就是把一个图片的数据传递给CNN,原涂层是由RGB组
- 通过go语言实现http请求http.Postimport (?? ?"net/http"?? ?"net/u
- 1、GET方式: # -*- coding: utf-8 -*-#!/usr/bin/python# filename
- 这是asp利用dictionary创建二维数组的例子,这样做的优点是:1、数组下标可以是字符串2、长度不是固定的<'% ’==
- 列表推导式你有一个list: bag = [1, 2, 3, 4, 5]现在你想让所有元素翻倍,让它看起来是这个样子: [2, 4, 6,
- pytorch中如果自己搭建网络并且加载别人的与训练模型的话,如果模型和参数不严格匹配,就可能会出问题,接下来记录一下我的解决方法。两个有序
- 一、表单控件绑定v-modelv-model 双向数据绑定;一般用于表单元素,会忽略表单元素的value、checked、selected的
- 不可否认,阿里巴巴走得越来越快也越来越好。技术的成熟让很多B2B B2C网站都在跟风学习它们。在这里我就来说一说它的搜索效果吧。如图所示:&
- 本文实例讲述了python文件操作之目录遍历的方法。分享给大家供大家参考。具体分析如下:Python的os模块,包含了普遍的操作系统功能,这
- 【译者的话】我们曾经在《透视色轮》一文中探讨过色轮的构成及作用,但你可能更多的只是将其作为了解颜色关系的一个工具,却不一定将其作为实际设计中