目前我正在开发一个自动构建过程,它也将执行一些数据库更改。这可以是任何类型的语句(ALTER; SELECT; UPDATE; CREATE; DROP ......) 如果这些SQL-Scripts中存在任何语法错误,我想提前失败。
在网上搜索了几个小时后,我终于决定向编程人员请求任何帮助。
我真的不想自己开发这个工具。自己开发它意味着维护它,甚至在某些情况下冒着数据松散的风险。 (如果我需要执行一个语句而无法回滚。)
我正在寻找的是一个仍然维护的(开源)工具。完美的是在一些Linux发行版的存储库中找到这个工具。
有人知道这样的工具吗?
我已经找到了一些在线SQL Checker,但我不想将内部数据发送到外部网络。
编辑: 也许我需要提供一些额外的背景信息。构建过程将由连续集成系统使用。我想保证提交的sql文件是可执行的。因此,我想在buildcript中添加一个像“testScript”这样的ant任务,它将采用SQL脚本,检查语法并在失败时失败。 例如,可能发生了开发人员已完成语句并复制将Statement粘贴到SQL脚本中但只选择了“TER TABLE”而不是“ALTER TABLE”。我正在搜索的语法检查器应该找到这些简单的错误,这些错误将在稍后阶段的构建失败,并导致构建提前失败。在最好的情况下,它可以输出错误的陈述和位置,以便在纠正错误时保持安全。
答案 0 :(得分:0)
查看dbForge Studio for MySQL,它有一个code complition feature,带有自动SQL语法检查功能。
打开新的SQL文档,编写一些代码或打开现有的SQL文件,如果有的话,你会看到语法错误。