我需要提供一个小型应用程序,允许客户端针对其本地数据库创建查询(或“规则”)并触发某些操作(发送邮件、短信和其他内容)。
由于他们将被允许为这项工作陈述实际的 SQL,我想知道我的数据层应该是什么样子。似乎我不需要实体和存储库,因为所有数据交互都是弱类型的。
那么我的数据层应该做什么呢?打开连接,接受输入的SQL,返回属性包列表?我什至需要一个数据层吗?
[更新]
这是客户希望在他的应用程序中拥有的,能够针对他们的数据库编写或构建查询。它将在他们的本地计算机上运行,这意味着恶意员工不需要 SQL 注入攻击。
但是即使我有一个可视化控件来构建查询、验证和清理它,这一层的最终结果是 SQL 代码,不是吗?如果我想测试它,我该如何抽象它?