在 MySQL 中,除了支持标准的存储过程和函数外,还引入了表达式表达式与其它高级语言的表达式一样,由变量、运算符和流程控制来构成。

变量是表达式语句中最基本的元素,可以用来临时存储数据

在存储过程和函数中都可以定义和使用变量。用户可以使用 DECLARE 关键字来定义变量,定义后可以为变量赋值。这些变量的作用范围是 BEGIN...END 程序段中。

下面将讲解如何定义变量和为变量赋值。

1. 定义变量

MySQL 中可以使用 DECLARE 关键字来定义变量,其基本语法如下:

DECLARE var_name[,...] type [DEFAULT value]

其中:

  • DECLARE 关键字是用来声明变量的;
  • var_name 参数是变量的名称,这里可以同时定义多个变量;
  • type 参数用来指定变量的类型;
  • DEFAULT value 子句将变量默认值设置为 value,没有使用 DEFAULT 子句时,默认值为 NULL。

例 1
下面定义变量 my_sql,数据类型为 INT 类型,默认值为 10。SQL 语句如下:

DECLARE my_sql INT DEFAULT 10;

2. 为变量赋值

MySQL 中可以使用 SET 关键字来为变量赋值,SET 语句的基本语法如下:

SET var_name = expr[,var_name = expr]...

其中:

  • SET 关键字用来为变量赋值;
  • var_name 参数是变量的名称;
  • expr 参数是赋值表达式。

注意:一个 SET 语句可以同时为多个变量赋值,各个变量的赋值语句之间用逗号隔开。

例 2
下面为变量 my_sql 赋值为 30。SQL 语句如下:

SET my_sql=30;

MySQL 中还可以使用 SELECT…INTO 语句为变量赋值。其基本语法如下:

SELECT col_name [...] INTO var_name[,...]
FROM table_name WEHRE condition

其中:

  • col_name 参数表示查询的字段名称;
  • var_name 参数是变量的名称;
  • table_name 参数指表的名称;
  • condition 参数指查询条件。

注意:当将查询结果赋值给变量时,该查询语句的返回结果只能是单行。

例 3
下面从 tb_student 表中查询 id 为 2 的记录,将该记录的 id 值赋给变量 my_sql。SQL 语句如下:

SELECT id INTO my_sql FROM tb_student WEHRE id=2;

8、MySQL变量的定义和赋值相关推荐

  1. php mysql变量赋值给变量_MySQL_mysql 存储过程中变量的定义与赋值操作,一、变量的定义 mysql中变量定 - phpStudy...

    mysql 存储过程中变量的定义与赋值操作 一.变量的定义mysql中变量定义用declare来定义一局部变量,该变量的使用范围只能在begin...end 块中使用,变量必须定义在复合语句的开头,并 ...

  2. Linux变量的定义、赋值、查看、删除(export、echo、unset)

    一.变量 概念:变量就是一个字符串,可以指向一个内容,该内容可以是路径.命令.数字.字符串等... 变量的分类: 环境变量:或者叫做全局变量 自定义变量:或者叫做局部变量 二.变量的定义与赋值 定义: ...

  3. mysql 存储过程 varchar 赋值,mysql 存储过程中变量的定义与赋值操作

    一.变量的定义 mysql中变量定义用declare来定义一局部变量,该变量的使用范围只能在begin...end 块中使用,变量必须定义在复合语句的开头,并且是在其它语句之前,也可以同时申明多个变量 ...

  4. mysql存储过程给多个变量赋值_MySQL存储过程如何进行变量的定义和赋值

    昨天我们讲了mysql存储过程创建修改与删除,下面我们这篇教程是讲关于mysql存储过程中变量的定义赋值操作哦. 一.变量的定义 mysql中变量定义用declare来定义一局部变量,该变量的使用范围 ...

  5. mysql定义shell变量_shell 变量的定义,赋值,运算

    一.变量类型 1.1.自定义变量 1.定义变量 不能使用纯数字命名,不能使用横杠命名 变量名=变量值 [root@localhost ~]# name=erha 2.引用变量 $变量名 或者 ${变量 ...

  6. oracle 序列赋值变量,Oracle变量的定义、赋值及使用

    首先,当在cmd里办入scott密码提示错误时,可以这样改一下,scott的解锁命令是: 以system用户登录: cmd sqlplus system/tigertiger alter user s ...

  7. Oracle变量的定义、赋值及使用

    首先我们来看看代码,然后我们在说明和解释代码: declarel_dept integer := 20;currtime date := sysdate;l_nam varchar2(20) := t ...

  8. c语言与指针——(二)指针变量的定义与赋值

    由上一节,我们知道了,指针就是地址,而变量的指针就是变量的地址,存放变量地址的变量就是指针变量.指针变量可以指向另一个变量,在程序中使用" * "来表示这种指向关系. 1.指针变量 ...

  9. oracle 的变量的定义和赋值

    第一种 :先定义后赋值 代码 : declare      V_AgeingType        varchar2(500); begin V_AgeingType :='111'; end 第二种 ...

最新文章

  1. 谈谈Linux下的数据流重定向和管道命令
  2. rhel6多台主机的HA集群,并实现增加仲裁盘和共享存储
  3. 鸢尾花识别问题,萼片有什么用?
  4. java 多线程数量_java多线程之计算数量
  5. 来吧学学.Net Core之登录认证与跨域资源使用
  6. Java微信公众平台获取签名
  7. python深拷贝_python 深拷贝与浅拷贝的区别
  8. java smtp pop3_POP3/SMTP指令
  9. UVA10473 Simple Base Conversion【进制转换】
  10. 如何才能真正的学会设计模式
  11. 多元相关性分析_SPSS分析问卷数据的流程------一篇带你学会SPSS
  12. 国内身份证号码的正则验证
  13. 424. Longest Repeating Character Replacement
  14. ORA-30926: unable to get a stable set of rows in the source tables
  15. AUTOSAR架构中的配置文件
  16. Python学习笔记_获取猫耳广播剧
  17. PLC控制电动机的顺序启动逆序停止
  18. Protel 99 SE使用心得
  19. 大公司病,太TM形象了!
  20. 交换机高级特性简介:MUX VLAN、端口隔离功能、端口安全功能简单原理与配置

热门文章

  1. Py之chatterbot-corpus:python包之chatterbot-corpus包简介、安装、使用方法之详细攻略
  2. Ubuntu16.04 安装R与RStudio
  3. 数据标准化的方法与意义
  4. 数据量庞大的分页穿梭框实现
  5. CentOS最小化系统,怎么安装图形界面
  6. 查看dll 的是32位还是64位
  7. BZOJ 2326 数学作业(分段矩阵快速幂)
  8. 蓝桥杯-打印十字图-java
  9. FZU 2214 Knapsack problem(背包问题)
  10. 在线 Sql Server 服务无法启动的解决办法