相关文章推荐
路过的帽子  ·  .Net ...·  4 周前    · 
气宇轩昂的豆腐  ·  Apache ...·  2 月前    · 
MySQL视图、索引
10 MySQL存储过程和触发器
10.1 MySQL存储过程
10.2 MySQL创建存储过程
10.3 MySQL查看存储过程
10.4 MySQL修改存储过程
10.5 MySQL删除存储过程
10.6 MySQL存储函数
10.7 MySQL调用存储过程和函数
10.8 MySQL变量的使用
10.9 MySQL定义条件和处理程序
10.10 MySQL游标
10.11 MySQL流程控制语句
10.12 MySQL触发器到底是什么?
10.13 MySQL创建触发器
10.14 MySQL查看触发器
10.15 MySQL修改和删除触发器
10.16 MySQL如何周期性执行某一命令或SQL语句
10.17 MySQL如何创建并执行事件?
10.18 MySQL查看事件状态信息
10.19 MySQL修改和删除事件
MySQL事务和字符集 MySQL用户管理 MySQL数据库备份与恢复 MySQL日志 MySQL性能优化
在 MySQL 中,除了支持标准的存储过程和函数外,还引入了表达式。表达式与其它高级语言的表达式一样,由变量、运算符和流程控制来构成。
变量是表达式语句中最基本的元素,可以用来临时存储数据。在存储过程和函数中都可以定义和使用变量。用户可以使用 DECLARE 关键字来定义变量,定义后可以为变量赋值。这些变量的作用范围是 BEGIN...END 程序段中。
下面将讲解如何定义变量和为变量赋值。
1. 定义变量 MySQL 中可以使用 DECLARE 关键字来定义变量,其基本语法如下:
DECLARE var_name[,...] type [DEFAULT value]

DECLARE 关键字是用来声明变量的; var_name 参数是变量的名称,这里可以同时定义多个变量; type 参数用来指定变量的类型; DEFAULT value 子句将变量默认值设置为 value,没有使用 DEFAULT 子句时,默认值为 NULL。 下面定义变量 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 语句可以同时为多个变量赋值,各个变量的赋值语句之间用逗号隔开。
下面为变量 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 参数指查询条件。 注意:当将查询结果赋值给变量时,该查询语句的返回结果只能是单行。
下面从 tb_student 表中查询 id 为 2 的记录,将该记录的 id 值赋给变量 my_sql。SQL 语句如下: SELECT id INTO my_sql FROM tb_student WEHRE id=2;

关注公众号「 站长严长生 」,在手机上阅读所有教程,随时随地都能学习。本公众号由 C语言中文网站长 亲自运营,长期更新,坚持原创。

微信扫码关注公众号