首页 > 数据库 >MySQL变量的使用

MySQL变量的使用

时间:2024-08-25 11:14:41浏览次数:11  
标签:set 变量 -- MySQL session increment 使用 全局变量

在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%';

标签:set,变量,--,MySQL,session,increment,使用,全局变量
From: https://www.cnblogs.com/ataoxz/p/18378750

相关文章

  • MySQL常用字符串函数
    1、LOWER(column|str):将字符串参数值转换为全小写字母后返回mysql>selectlower('SQLCourse');+---------------------+|lower('SQLCourse')|+---------------------+|sqlcourse|+---------------------+ 2、UPPER(column|str):将字符串参数值转换为......
  • MySQL入门学习-对系统数据库的常用查询
        通常情况下,MySQL中的系统数据库有information_schema、mysql和performance_schema。这些数据库提供了有关数据库服务器的各种信息,例如表结构、用户权限、性能指标等。一、使用这些系统数据库进行常用查询的示例:1.查询表结构信息:  -使用information_sch......
  • MySQL入门学习-服务器优化.Sys数据库
    一、关于MySQL入门学习中服务器优化和Sys数据库的一些常见方面:1.服务器优化:  -硬件优化:    确保服务器具有足够的内存、CPU资源和快速的磁盘I/O。  -操作系统优化:    合理配置操作系统参数,如文件描述符限制、内核参数等。  -数据库......
  • Vue Router的使用和路由守卫
    VueRouter是Vue.js的官方路由库,用于在Vue应用中实现单页面应用(SPA)的客户端路由。它使得Vue应用能够在不重新加载页面的情况下实现不同的视图和状态切换。以下是VueRouter的详细介绍,包括基本概念、配置、路由导航以及高级用法。1基本概念路由(Route):路由是......
  • 使用HF Trainer微调小模型
    本文记录HugginngFace的Trainer各种常见用法。SFTTrainer的一个最简单例子HuggingFace的各种Trainer能大幅简化我们预训练和微调的工作量。能简化到什么程度?就拿我们个人用户最常会遇到的用监督学习微调语言模型任务为例,只需要定义一个SFTrainer,给定我们想要训练的模型和数据......
  • 【8.2 python中的使用re模块实现正则表达式操作】
    python中的使用re模块实现正则表达式操作Python中的re模块提供了对正则表达式的支持。正则表达式(RegularExpression,简称regex或regexp)是一种文本模式,包括普通字符(例如,a到z之间的字母)和特殊字符(称为"元字符")。正则表达式使用单个字符串来描述、匹配一系列符合某个句法......
  • 使用C#爬取快手作者主页,并下载视频/图集
    最近发现一些快手的作者,作品还不错,出于学习研究的目的,决定看一下怎么爬取数据。现在网上有一些爬虫工具,不过大部分都失效了,或者不开源。于是自己就写了一个小工具。先看一下成果:软件只需要填写作者uid以及网页版的请求Cookie,即可实现自动下载,下载目录在程序根目录下的Download......
  • 隧道代理ip使用
    简介隧道代理(TunnelProxy)是一种特殊的代理服务,它的工作方式是在客户端与远程服务器之间建立一条“隧道”。这种技术常被用来绕过网络限制或提高网络安全性。主要功能IP地址变换:隧道代理能够改变客户端的IP地址,使得客户端访问的目标服务器看到的是代理服务器的IP地址,而不是客......
  • swiftUI- @Observable的使用
    @Observable是Swift语言中的一个属性包装器(propertywrapper),用于将类的属性标记为可观察的。这意味着当这些属性的值发生变化时,依赖这些属性的视图或其他对象会自动更新。@Observable通常用于SwiftUI和Combine框架中,以实现响应式编程。然而,值得注意的是,@Observable并不......
  • swiftUI-extension的使用
    在Swift中,extension关键字用于为现有的类、结构体、枚举或协议添加新的功能,而无需修改原始源代码。扩展可以添加新的方法、计算属性、初始化器、下标、嵌套类型和遵循协议等。以下是一些常见的extension用法示例:为类添加方法extensionString{funcreversedString()......