关于存储过程的个人总结

阿里巴巴的开发手册中 1.5.0的版本 2019-06-19发布

SQL语句规约中第七条

禁止使用存储过程  难以调用和扩展性  更没有移植性

个人理解:存储过程实质就是一个函数 你调用函数的时候 可以进行传参,你可以把需要缓存下来的sql放到这个存储过程的方程式中间 如果通过程序来去调用存储过程的使用,暂时没有了解,不过个人很久之前写过一次存储过程,其实实际的去了解到存储过程的话,他其实并不难,之前写过一个MySQL的定时删除过期数据 ,业务场景是 我们没过一段时间就会产生数据 需要实时的记录到我们的MySQL的数据库,后期会让Hadoop去MySQL中间去抽取数据,时间久了的话 MySQL就会冗余大量的过期数据。当时自己设想的方案是在在MySQL中创建一个定时的任务调度 每天在指定时间去调用这个任务 这个任务就写一个存储过程,里面放一个DELETE的sql。判断条件是指定的时间字段小于系统的时间减三十天的条件,就认为他是一个过期数据 就删除。

第一步:需要在MySQL的配置文件中开启任务调度的配置,如果这个MySQL的搭建是你个人搭建的,你就应该会对这个MySQL的配置文件非常的了解。只需要在配置文件中添加一行开启任务调度的话即可。

第二步:编写DELETE的删除过期数据的sql。然后百度一下存储过程的语法 将这个sql放在存储过程的表达式中。

第三步:创建一个任务调度,中间可以配置一系列的参数。我们可以称之为一个定时的任务调度。每天都回去调这个任务。然后任务去调用这个存储过程。

下面是这个定时删除过期数据的全部语句

最后:个人总结存储过程没必要你个人理解和使用的非常熟练  在某些业务需求下如果真的要使用到了存储过程你能写出来,个人感觉就已经足够了。我们不能以能不能写存储过程来去判断你这个人的sql能力的强弱。Mysql中也会有许多的函数和类似与java代码相关的。但是你还是会基本上用不到这个东西。Sql的能力需要在完全满足业务需求就已经可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值