begin

您所在的位置:网站首页 sql语句块 begin

begin

2024-07-14 11:00| 来源: 网络整理| 查看: 265

在最近在通过navicate连接mysql数据库时,进行查询操作:

delimiter $$BEGIN

SET @a=1;

if (@a > 0) THEN SELECT COUNT(*) from tb_public_effect_tmp;ELSE SELECT * from tb_effect_master;end if;

END $$

delimiter ;

直接报错[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @a =1

开始以为变量定义或者是if else语句出错,最后确定变量定义和if else语句都是没有错的。

后来发现以上语句在触发器或者存储过程中是可以正确执行的。

查看相关文档和网上资料中得知:

通常begin-end用于定义一组语句块,在各大数据库中的客户端工具中可直接调用,但在mysql中不可用。

begin-end、流程控制语句、局部变量只能用于函数、存储过程内部、游标、触发器的定义内部。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3