总结MySQL中编写SQL语句容易出错的地方

本文针对MySQL5.1版本,详细介绍了存储过程中参数与变量的正确使用方法,包括名称前是否带“@”符号的规定;同时对比了CASE语句在独立与嵌套使用时的语法差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下经验总结基于MySQL 5.1。

 

在存储过程或函数中,对参数和变量的引用。

 

主要是牵涉到名称前是否带“@”符号。

  • 定义参数和变量时,都不能带。
  • 引用参数时不能带。
  • 引用变量时可带可不带,但建议带上,以区别于参数。

下面给出正确的示例:

CREATE PROCEDURE myPro (arg0 INT)
BEGIN
  DECLARE var0 INT;
  SELECT arg0 AS 参数, @var0 AS 变量;
END
 

 

CASE语句,独立语句与嵌套语句的差异。

 

独立语句应如下书写:

CASE arg0
WHEN 1 THEN SELECT 1;
WHEN 2 THEN SELECT 2;
END CASE;

 嵌套语句应如下书写:

SELECT
  CASE arg0
  WHEN 1 THEN 1
  WHEN 2 THEN 2
  END;

 这里关键是注意结束符“;”和"END"出现的形式。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值