分享一个sql语句生成向导的源代码 https://Github.com/codefan/sqlWizard 。这是一个基于VUE的sql语句生成向导,生成的结果是一个带参数的sql语句。可以直接在线查看效果 https://codefan.github.io/sqlWizard/#/ ;向导分6步。
设置参数
设置SQL语句可能需要的参数,参数要有默认值便于查询调试。
选择查询列
选择查询列,这边需要提供数据库的元数据,如果跨表查询还需要提供表之间的关联关系。可以跨表选择查询数据,也可以通过内部函数对数据进行处理,如果选择统计函数向导将会自动生成分组查询。
添加查询条件
查询条件中可以引用第一步设置的参数。页面上可以添加条件语句,在下方的条件表达式中通过序号引用上面的条件语句 通过 添加括号和 可以多次引用统一条件的方式 能够生成复杂的条件表达式。
调整连接方式
跨表查询默认为内链接,可以在这个页面调整。
添加分组过滤
分组过滤对应的是sql语句中的having语句,这个页面操作类似条件语句。
结果排序
这个对应的是sql语句中的order 语句。
最后生成sql
通过这个向导可以生成常规的查询,目前参数只能用在where条件和having语句中,并且一些数据库方言也不能很好地支持,需要进一步优化。
源代码是开放的,分享出来和同仁共享,如果各位有改善的建议还望不吝赐教。