任何 Javascript/Jquery 库来验证 SQL 语句?
Posted
技术标签:
【中文标题】任何 Javascript/Jquery 库来验证 SQL 语句?【英文标题】:Any Javascript/Jquery Library To validate SQL statment? 【发布时间】:2012-10-21 14:38:21 【问题描述】:我的项目中有一个文本区域,用户可以在其中保存 SQL 查询,但要求之一是检查此查询是否有效
示例
如果用户输入了类似的内容:
SELECT ** FROM EMP
这应该返回 false 和一条错误消息,只是说 invalid
它不必给出任何理由
主要是查询将只是select
语句
通知 我现在不想使用任何服务器端
问题
是否有人知道具有此功能或任何类似功能的 javascript / jquery 库或插件
我有谷歌这个,它没有显示任何东西
谢谢
【问题讨论】:
您是否在 Google 上搜索过“javascript sql 解析器”?我刚刚发现:github.com/forward/sql-parser 解析器是否需要了解您的数据库?即你有哪些表/视图? 最好让数据库引擎为您解决这个问题。我想知道是否有办法对查询进行空运行...查看查询是否编译但不执行... 不,它也没有......我不认为javascript可以做到这一点 【参考方案1】:这是一个使用 JS SQL Parser 的小提琴示例:
http://jsfiddle.net/Hb6az/
如果遇到意外情况,解析器将抛出错误,因此您必须将检查代码包装在 try catch(error)
块中。
【讨论】:
描述中的注释:“目前它只能解析相当基本的 SELECT 查询” 它看起来不错,但正如 @MichaelMior 所说,它解析基本的 SELECT 查询,请参阅 jsfiddle.net/minagabriel/Hb6az/1 在本地机器上尝试一下,看起来 jsFiddle 遇到了外部资源问题,并且没有定义 SQLParser。 @Laurence - 我尝试从本地 WAMP 服务器安装 JS SQL Parser。我找不到工作。有没有更好的方法让它发挥作用? @ronquiq 好久没用了,不过它是一个 NPM 包,你需要用npm
或yarn
安装它以上是关于任何 Javascript/Jquery 库来验证 SQL 语句?的主要内容,如果未能解决你的问题,请参考以下文章
Javascript / jQuery - 隐藏字段时禁用验证