【发布时间】:2013-03-27 21:38:43
【问题描述】:
我希望能够检查 SQL 是否有效,例如
select * from contacts where id = 42
会通过但是
select * from contacts where id 42
会失败
有谁知道一个简单的 SQL 验证库 - 最好是免费的(或便宜的)?
我想将此作为单元测试的一部分,所以我想检查生成的 SQL 是否有效,但不想在服务器上执行它。
【问题讨论】:
-
你看到Need in SQL parser on Delphi 和它的答案了吗?还有,什么数据库?不同的 DBMS 使用不同的语法,因此任何 vaidator/parser 都需要知道您使用的是什么 DBMS 才能知道什么是有效的。
-
@KenWhite 基本 SQL92 语法很好,不需要对特定 DBMS 进行任何扩展
-
如果您正在使用 SQL Server 并且能够在查询验证时连接,您可以使用
SET PARSEONLY语句。 -
@TLama 仍然不适合单元测试。
标签: sql delphi validation