MySQL定义和变量赋值

变量可以在子程序(性能、存储过程、匿名块)声明和使用。这些变量的范围是在BEGIN...END规划。

变量的定义

语法格式:

DECLARE var_name [, var_name]... data_type [ DEFAULT value ];

var_name为局部变量的名称;

DEFAULT value子句指定指定变量的默认值,value除了能够被声明为一个常量外,还能够被指定为一个表达式。假设没有DEFAULT子句,变量的初始值为NULL。

演示样例:

DECLARE myparam INT DEFAULT 100;

变量赋值

定义变量以后。为变量赋值能够改变变量的默认值。MySQL中使用SET语句为变量赋值。

在存储程序中的SET语句是一般SET语句的扩展版本号。被參考变量可能是子程序内声明的变量,或者是全局server变量。如系统变量或者用户变量。


语法1:

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

演示样例1:

声明3个变量,分别为var1, var2和var3。数据类型为INT,使用SET为变量赋值

DECLARE var1, var2, var3 INT;
SET var1=10, var2=20;
SET var3=var1+var2;

语法2:SELECT INTO为变量赋值

SELECT INTO语法把选定的列直接存储到相应位置的变量。

MySQL中还能够通过SELECT...INTO为一个或者多个变量赋值,语法例如以下:

SELECT col_name[,...] INTO var_name[,...] table_expr [WHERE...];

演示样例2:

声明变量v_employee_name和v_employee_salary,通过SELECT...INTO语句查询指定记录并为变量赋值:

DECLARE v_employee_name VARCHAR(100);
DECLARE v_employee_salary DECIMAL(8,4);

SELECT employee_name, employee_salary
INTO v_employee_name, v_employee_salary
FROM employees
WHERE employee_id=1;

------------------------------------------------------------------------------------------------------------------------

假设您们在尝试的过程中遇到什么问题或者我的代码有错误的地方,请给予指正。很感谢。

联系方式:david.louis.tian@outlook.com

版权的@:转载请注明出处!


版权声明:本文博主原创文章。博客,未经同意不得转载。

posted @   mengfanrong  阅读(33227)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2014-10-26 海茶3 らぶデス3 入门经典教程
2014-10-26 android:GLSurfaceView绘制bitmap图片及glViewport调整的效果
2014-10-26 IOS总结_IOS经常使用的方法集合、调用系统电话、设备区分、APP内永不锁屏
2014-10-26 huffman编码——原理与实现
2014-10-26 python字典构造函数dict(mapping)解析
2014-10-26 tomcat配置sqlserver数据库
2014-10-26 Tomcat全攻略
点击右上角即可分享
微信分享提示