mysql 存储过程,搞死人的语法

MySQL 真心不如sqlserver灵活

存储过程注意事项:

1.declare 依次声明

DECLARE MyAccountID VARCHAR (36);

DECLARE Balance DECIMAL (18, 2) DEFAULT 0.00;

DECLARE Operator VARCHAR (36) DEFAULT ‘168A65D2-7FF7-4865-84EF-C41560F4D8D5‘;

DECLARE TypeName VARCHAR (200);

如果有默认值 用default ,如果要赋值,在变量全部声明完之后,用set

SET TypeName = (
CASE Type
WHEN 1 THEN
‘充值‘
ELSE
‘扣款‘
END
);

尽量不要set之后,再declare,会有莫名的错误

2. 在一大段sql语句(select * from....  , insert into .....)之后,如果要给变量赋值用select

SELECT (
CASE Type
WHEN 1 THEN
Balance + Money
WHEN 0 THEN
Balance - Money
ELSE
0
END
) into Balance;

 此处我用set 赋值怎么搞都报错。。。

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 ‘‘ at line 186   

set  单独执行没有错,放在这里就不行了。。。。。反反复复试,才找到原因,真他妈坑比呀。

-- 判断账号资金是否异常
IF Type <> 3 THEN
SELECT
‘2‘;

ELSEIF Type = 3 THEN
SELECT
‘3‘;

ELSE
SELECT
‘1‘;

END
IF;

时间: 2024-07-30 10:53:56

mysql 存储过程,搞死人的语法的相关文章

MYSql存储过程的作用及语法

1.使用了存过程,很多相似性的删除,更新,新增等操作就变得轻松了,并且以后也便于管理! 2.存储过程因为SQL语句已经预编绎过了,因此运行的速度比较快. 3.存储过程可以接受参数.输出参数.返回单个或多个结果集以及返回值.可以向程序返回错误原因. 4.存储过程运行比较稳定,不会有太多的错误.只要一次成功,以后都会按这个程序运行. 5.存储过程主要是在服务器上运行,减少对客户机的压力. 6.存储过程可以包含程序流.逻辑以及对数据库的查询.同时可以实体封装和隐藏了数据逻辑. 7.存储过程可以在单个存

mysql存储过程详细教程

记录mysql存储过程中的关键语法:DELIMITER //  声明语句结束符,用于区分;CREATE PROCEDURE demo_in_parameter(IN p_in int)  声明存储过程BEGIN .... END  存储过程开始和结束符号SET @p_in=1   变量赋值 DECLARE l_int int unsigned default 4000000;  变量定义 什么是mysql存储例程? 存储例程是存储在数据库服务器中的一组sql语句,通过在查询中调用一个指定的名称来

MySQL:MySQL 存储过程

ylbtech-MySQL:MySQL 存储过程 1.返回顶部 1. MySQL 存储过程 MySQL 5.0 版本开始支持存储过程. 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象. 存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行. 存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用. 优点 存储过程可封装,并隐藏复杂的商业逻辑. 存储过

mysql存储过程。。

MySQL 5.0 版本开始支持存储过程. 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象. 存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行. 存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用. 优点 存储过程可封装,并隐藏复杂的商业逻辑. 存储过程可以回传值,并可以接受参数. 存储过程无法使用 SELECT 指令来运行,因为它是子程序,

mysql存储过程语法及实例

存储过程如同一门程序设计语言,同样包含了数据类型.流程控制.输入和输出和它自己的函数库. --------------------基本语法-------------------- 一.创建存储过程create procedure sp_name()begin.........end 二.调用存储过程1.基本语法:call sp_name()注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递 三.删除存储过程1.基本语法:drop procedure sp_name// 2.注意事项(1

Mysql 存储过程基本语法

delimiter //一般情况下MYSQL以:结尾表示确认输入并执行语句,但在存储过程中:不是表示结束,因此可以用该命令将:号改为//表示确认输入并执行. 一.创建存储过程 1.基本语法: create procedure sp_name() begin ......... end 2.参数传递 二.调用存储过程 1.基本语法:call sp_name() 注意:存储过程名称后面必须加括号,哪怕该存储过程没有参数传递 三.删除存储过程 1.基本语法: drop procedure sp_nam

MySQL 最基本的SQL语法/语句

MySQL 最基本的SQL语法/语句 MySQL 最基本的SQL语法/语句,使用mysql的朋友可以参考下. DDL—数据定义语言(Create,Alter,Drop,DECLARE) DML—数据操纵语言(Select,Delete,Update,Insert) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1.说明:创建数据库 Create DATABASE database-name 2.说明:删除数据库 drop databa

当PHP遇到MySQL存储过程

1.MySQL存储过程 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它. 一个存储过程是一个可编程的函数,它在数据库中创建并保存.它可以有SQL语句和一些特殊的控制结构组成.当希望在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的.数据库中的存储过程可以看做是对编

mysql存储过程、存储函数及流程控制

存储过程 一.基本语法 create procedure sp_name([proc_parameter[,...]]) [characteristic...]routine_body begin end sp_name 表示存储过程的名字 proc_parameter 存储过程参数例表[IN OUT INOUT]三个部分组成 其中IN 表示传进来的参数 其中OUT 表示传出去的参数 其中INOUT 表示传进来但最终传回的参数 routine_body 参数是SQL代码的内容(类似于触发器的fo