28 天瞎写的第二百二十九天:存储过程的故事
#挑战 28 天写作计划 第七季我的主题是 28 天 28 个故事。
现在还写存储过程的人应该不多了,大部分事务处理和业务逻辑应该都在程序代码中完成,而不是数据库函数、触发器、存储过程了。
曾经参与过一个项目,当时的分工是我为团队所有人负责数据库的 SQL 工作,可能是我炫技到了极致,也可能是合作的前端业务懒到了极致,所有的业务逻辑都是推给 SQL 的存储过程,所有的报表查询和输出也推给存储过程,甚至连报表表头字段的设置和样式都由存储过程输出....从分工上看,这些属于我的工作,当时还觉得挺好,来者不拒。
就这样,一边维护着独立的项目,一边参与这边“数据库”开发,前前后后发现为这个项目存储过程、触发器、函数写了有几百个,自以为还挺有成就感的。但结果是,业务调试的麻烦都在我这里,财务报表核对也在我这里,业务逻辑梳理还是在我这里,极度蛋疼。
一个功能,Java 代码不用写逻辑实现,只要校验请求合法、参数没问题,组合成一条调用数据库函数或者存储过程的 SQL 语句,然后就等着我写的 SQL 脚本返回结果,最后拿着结果稍作处理,返回给用户。
这个描述,现在看这特么的就是函数计算、serverless 啊!
不过这个世界总是公平的,经此一坑,打下了坚实的数据库基础,还凭借这个基础在 CSDN 上的问答就赚取不少积分,到现在都用不完,不过也没啥用了。
另外一个好处是,一通百通,对当时流行的 SQL Server、Oracle、DB2、Sybase 上手很快也很深入,顺便还考了个 OCP; 一点不吹牛,当时团队里对于主流数据库系统,我都是专家级的存在了。
版权声明: 本文为 InfoQ 作者【树上】的原创文章。
原文链接:【http://xie.infoq.cn/article/33ef81fec62cd2cac70b31f69】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论 (1 条评论)