MySQL存储过程注意事项和利用存储过程实现复杂分区

本文介绍了MySQL存储过程的使用注意事项,包括分号冲突、格式规范、结束标记、语句块标签和注释方式。同时,阐述了存储过程在实现复杂分区中的应用,特别是时间分区的动态创建,提供了一个示例函数来演示如何通过存储过程自动创建年/月/日分区。
摘要由CSDN通过智能技术生成

MySQL 5.0 版本开始支持存储过程。存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。存储过程就是数据库 SQL 语言层面的代码封装与重用。

一、使用存储过程注意事项

1、存储过程程序中";"和mysql客户端解释用的“;”冲突。

因为存储过程是SQL 语言层面的代码封装,相当于是sql语义的一段程序代码块,而代码中往往含有“;”作为语句结束的标记,语句之间的分隔符,存储过程程序代码中的“;”会和mysql客户端解释的“;”有语义冲突;mysql本身因此在定义存储过程时,

使用DELIMITER “$$”命令(或者DELIMITER ||命令)将语句的结束符号从分号;临时改为两个$$

,使得过程体中使用的分号被直接传递到服务器,而不会被客户端(如mysql)解释。

2、存储过程格式

存储过程体包含了在过程调用时必须执行的语句,例如:dml、ddl语句,if-then-else和while-do语句、声明变量的declare语句等,存储过程体格式:以begin开始,以end结束(可嵌套)

3、结束标记

每个嵌套块及其中的每条语句,必须以分号结束,表示过程体结束的begin-end块(又叫做复合语句compound statement)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值