【提效工具开发】Python功能模块执行和 SQL 执行 需求整理

需求梳理


背景

当前我们在IDE或MySQL查询工具中只能进行个人使用,缺乏共享功能,且在查询及数据统计上有一定的不便。为了改善这种情况,计划搭建一个Web平台,通过后台交互来提升效率。此平台需要兼容Python工具和SQL工具的管理、执行与记录。


需求概述
  1. 工具管理模块

    • 平台支持Python和SQL工具的管理,包括工具的创建、更新、需求关联及执行记录保存。
    • 工具的基础信息包括:
      • 工具名称
      • 创建人、更新人
      • 创建时间、更新时间
      • 工具类型:推荐用字符串(如"SQL", "Python")标识类型,便于扩展。
  2. 需求与工具的关联关系

    • 需求表中的需求 (也可以不关联,我们是和需求做强关联) 可以关联多个工具,采用一对多的外键约束。
    • 需求删除时将弹出确认,用户可选择是否删除关联工具。
  3. 代码管理模块

    • 设计与工具表关联的表来保存具体工具代码。
    • 表结构:
      • Python工具可关联多条Python文件记录,包含文件名称、路径和代码内容。
      • 必须指定一个文件为主文件 (main 文件),用于执行。
      • SQL工具关联一条SQL代码记录,无需文件名称。
    • Python代码存储于文件系统,并在表中保存路径。
  4. 执行记录管理

    • SQL工具执行记录
      • 记录执行的SQL语句、执行结果、错误信息、执行时间等。
      • 建议错误信息结构包括:错误代码、错误描述等。
    • Python工具执行记录
      • 记录执行人信息、执行结果(成功或失败)、执行日志(详细描述过程和结果)。
      • 记录主文件的路径和是否为main文件。
      • 记录执行开始和结束时间、执行消耗时间。

功能模块需求
  1. 工具执行模块(视图)
    • SQL工具执行

      • 支持接收SQL语句并执行,记录执行结果,包括执行SQL、结果和错误信息。
      • 增加执行安全性检查,如SQL注入防护、超时限制。
      • 异步执行,以避免页面卡顿。
    • Python工具执行

      • 从数据库中读取指定的main文件路径,确保有明确的执行入口。
      • 使用沙箱环境执行Python代码,隔离系统资源,防止安全风险。
      • 执行信息反馈到前端,包括详细结果和日志。
      • 异步执行,确保界面响应。

技术实现要求
  • 后端:使用Django REST Framework (DRF)实现API接口和数据管理功能。
  • 前端:element Vue2。

总结

在Python工具的代码管理中,明确了必须指定一个main文件作为执行入口,以确保执行过程中有明确的文件可供调用。同时在执行时从数据库中读取并验证main文件路径,确保安全执行。

歇后语

后边我会继续更新实现逻辑, 有需要的请关注我后续更新

相关推荐
程序猿炎义19 分钟前
【NVIDIA AIQ】自定义函数实践
人工智能·python·学习
THMAIL1 小时前
深度学习从入门到精通 - BERT与预训练模型:NLP领域的核弹级技术详解
人工智能·python·深度学习·自然语言处理·性能优化·bert
皆过客,揽星河1 小时前
mysql进阶语法(视图)
数据库·sql·mysql·mysql基础语法·mysql进阶语法·视图创建修改删除
中国胖子风清扬1 小时前
Rust 序列化技术全解析:从基础到实战
开发语言·c++·spring boot·vscode·后端·中间件·rust
我就是全世界1 小时前
【存储选型终极指南】RustFS vs MinIO:5大维度深度对决,95%技术团队的选择秘密!
开发语言·分布式·rust·存储
nuclear20111 小时前
Python 实现 Markdown 与 Word 高保真互转(含批量转换)
python·word转markdown·markdown转word·word转md·md转word
山烛2 小时前
深度学习:CNN 模型训练中的学习率调整(基于 PyTorch)
人工智能·pytorch·python·深度学习·cnn·调整学习率
Lris-KK2 小时前
【Leetcode】高频SQL基础题--180.连续出现的数字
sql·leetcode