zoukankan      html  css  js  c++  java
  • 【小技巧】如何使上线前初始化数据的SQL脚本可测试?

    背景

    有时候,我们在上线某些特性时,可能需要提前初始化数据,才能使功能正常运作。
    初始化数据,常用的有以下两种途径:

    1. 单纯为了这个初始化数据,开发一个Excel文件导入功能
    2. 开发人员维护SQL语句初始化数据

    这两种途径都有优缺点:
    第1种途径,使用方便,可重复导入不同的数据,但是开发成本高
    第2种途径,开发人员维护SQL语句,成本低,但只能针对一批次的数据,第二次面对不同的数据无法复用,且SQL语句不经过测试人员验证,容易发生问题;

    最近,我们在遇到这个问题时,有位小伙伴提出:我们可以用Excel制作SQL脚本啊。

    用Excel制作SQL脚本

    假设,我们需要初始化“员工所拥有的角色”的数据,这数据主要有两列,分别是“员工号”和“角色编码”。

    那么,我们可以制作下图这样的Excel表格:

    “员工号”、“角色”两列为业务数据,分别表示“员工号”和“角色编码”;
    “SUB_SQL_1”、“SUB_SQL_2”、“SUB_SQL_3”分别是用于拼接的子SQL;
    “SQL”是结果列,它用CONCAT函数拼接前面几列的值形成最终的SQL
    比如,第2行的CONCAT函数表达式为:=CONCAT(C2,E2,A2,E2,D2,E2,B2,E2,F2)

    提测的时候,我们将制作好的Excel文件提测,测试人员验证是否能通过此文件生成符合预期的数据。

    生产环境初始化数据时,我们使用这个经过测试的Excel文件初始化数据。

    作者:Nick Huang 博客:http://www.cnblogs.com/nick-huang/
    本博客为学习、笔记之用,以笔记形式记录学习的知识与感悟。学习过程中可能参考各种资料,如觉文中表述过分引用,请务必告知,以便迅速处理。如有错漏,不吝赐教。
    如果本文对您有用,点赞评论哦;如果您喜欢我的文章,请点击关注我哦~
  • 相关阅读:
    复习总结
    python 之Tornado
    MySQL 同一Windows系统上安装多个数据库
    CSS 轻松搞定元素(标签)居中问题
    Linux 解决Deepin深度系统无法在root用户启动Google Chrome浏览器的问题
    Django Windows+IIS+wfastcgi 环境下部署
    Django RestFramework(DRF)类视图
    php+ajax实现拖动滚动条分批加载请求加载数据
    Jquery+php鼠标滚动到页面底部自动加载更多内容,使用分页
    jQuery+ajax实现滚动到页面底部自动加载图文列表效果
  • 原文地址:https://www.cnblogs.com/nick-huang/p/15400091.html
Copyright © 2011-2022 走看看