当前位置: 首页 > 面试题库 >

有没有可以验证SQL语法的Java库?

慕高格
2023-03-14
问题内容

我不确定这是否存在,所以我想我会借鉴别人的智慧。

我想知道是否有任何Java库可用于验证SQL查询的语法。我知道与常见的SQL规范有许多差异,因此它可能仅适用于SQL:2006之类的东西,但这当然足够了。

我的目标是将其用于单元测试,而无需尝试对数据库执行。我知道它的用途有限,但仍然有用。

谢谢!


问题答案:

我认为没有这样的库。SQL语法派生太多。

可能的解决方案是使用开源纯Java
DBMS的一部分,例如SmallSQL。在此项目中,您可以创建SQLParser的实例。可以很容易地删除所需的连接参考。



 类似资料:
  • 问题内容: 我在我的项目中有一个textarea,用户可以在其中保存SQL查询,但要求之一是检查此查询是否有效 例子 如果用户输入类似: 这应该返回false并显示一条错误消息,提示您不必给出任何原因 主要是查询将只是语句 注意, 我现在不想使用任何服务器端 问题 是否有人知道具有此功能或类似功能的javascript / jquery库或插件 我有谷歌这个,它没有显示任何东西 谢谢 问题答案:

  • 问题内容: 我想构建一个PHP脚本来验证SQL查询,但不执行它。它不仅应验证语法,而且还应在可能的情况下让您知道是否可以通过查询中的命令来执行查询。这是我想要执行的操作的伪代码: 这样的事情。我希望它模拟查询而不执行它。那就是我想要的,对此我什么也找不到。 为什么我们不希望执行查询的一个示例是,如果查询向数据库中添加了一些内容。我们只希望它在不修改数据库的情况下对其进行仿真。 任何链接或示例将不胜

  • 我有一个组件,它基本上从输入中获取所有内容并呈现html: 现在,当我开始输入时,它显然会向我抛出错误,说输入值没有结束或结束标记。 有没有办法事先验证HTML?它适用于v-html,但第三方模块存在问题。 沙盒:https://codesandbox.io/s/vruntimetemplate-27bdz?fontsize=14

  • 我试图用Java来做这件事,但我认为这是一个一般的证书问题。我有根CA、根CA颁发的中间CA1、中间CA1颁发的中间CA2和中间CA2颁发的证书。 RootCA- 在不知道interCA2的情况下,是否可以通过interCA1验证证书?

  • 对 YAML 定义的 Azure DevOps 管道进行更改时,将更改推送到分支只是为了看到生成失败并显示分析错误(YAML 有效,但管道定义无效),然后尝试试错解决问题,这可能会非常繁琐。 如果反馈循环可以通过本地分析和验证管道定义来缩短,那就太好了;基本上是一个了解Azure管道中可以定义的各种资源等的linter。但是,我还没有找到任何可以做到这一点的工具。 在某个地方有这样的工具吗?

  • 是否有方法验证原始spark SQL查询的语法? 例如,我想知道spark是否提供了任何API调用?