MySQL变量部分

一、系统变量

系统变量:1、全局变量  2、会话变量

--全局变量的作用范围是针对整个服务器的,服务器每次启动将为所有的全局变量赋予初始值,针对于所有的会话连接有效,但是不能跨重启,如果想要每次重启都要使用更改过后的变量,这时候需要改变配置文件

--会话变量只对当前的会话有效,与全局变量只区别于作用域上面

自定义变量:1、用户变量  2、局部变量

系统变量是由系统提供的,不是用户定义的,属于服务器层面,根据作用域不同,分为全局和绘画

因为不用定义,所以声明语法就没有,只有赋值和使用

  1. 查看所有的变量
-- 查看全局变量
show global variables;
-- 查看会话变量
show session variables;
-- 不指定默认会话变量

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

-- 查看满足条件的部分系统变量
show global [session] variables like '%char%'

-- 查看指定的某个系统变量的值
select @@global[session].系统变量名;

    3. 为某个系统变量赋值

-- 两种方式
set gloabal [session] 系统变量名 = 值

set @@global [session].系统变量名 = 值

     4.演示

-- 查看指定的全局变量的值
select @@global.autocommit;
select @@tx_isolation;

-- 为某个指定的全局变量赋值
set @@global.autocommit = 0;

--全局变量的作用范围是针对整个服务器的,服务器每次启动将为所有的全局变量赋予初始值,针对于所有的会话连接有效,但是不能跨重启
-- 如果想要每次重启都要使用更改过后的变量,这时候需要改变配置文件

二、自定义变量

使我们自己定义的。

声明

赋值

使用(查看、比较、运算等)

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

 

-- 1、声明并初始化
set @用户变量名 = 值;
set @用户变量名 := 值;  推荐
select @用户变量名:=值;

-- 2、更新用户变量值

-- 方式一:通过set或select
set @用户变量名 = 值;
set @用户变量名 := 值;  推荐
select @用户变量名:=值;

# 案例
set @name = 'join'
set @name = 100
# 虽然类型不同但可以更改,因为是弱类型

-- 方式二:通过select into
select 字段 into 变量名 from 表; 前提是查询的这个字段是一个值,如果是一组值将不能赋值给变量

-- 比如查询个数,将员工表的员工个数赋值给count这个变量
set @count = 1
select count(*) into @count from employee;
-- 查询
select @count;


2、局部变量:仅仅作用于他的begin end中有效,而且是begin end中的第一句话

第一步:可以只声明,不用初始化,但是必须制定类型

--声明
declare 变量名 类型;
declare 变量名 类型 default 值;

第二步:赋值

-- 方式一:通过set或者select;这时候set需要加上@
set 局部变量名=值;
set 局部变量名:= 值;
select @局部变量名:=值;

--方式二:通过select into
select 字段 into 变量名 from 表

第三步:查询

select 局部变量名

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值