QueryBuilder修改输入的查询

时间:2011-08-09 22:51:46

标签: c# .net vb.net ms-access-2007 query-builder

为什么QueryBuilder会修改我的查询?有解决方法吗?

当我输入下面的查询时,QueryBuilder会将查询修改为下面更复杂的版本,需要FillBy方法的其他参数。任何其他参数都会为修改后的查询添加指数级的复杂性。

已输入:

SELECT prop, lot, type, created_on, done
  FROM TestSelection
 WHERE (prop=? OR '_NO_PROP_'=?) AND (lot=? OR '_NO_LOT_'=?)

修改:

SELECT prop, lot, type, created_on, done
FROM   TestSelection
WHERE  (prop = ?) AND (lot = ?) OR
       (prop = ?) AND ('_NO_LOT_' = ?) OR
       (lot = ?) AND ('_NO_PROP_' = ?) OR
       ('_NO_LOT_' = ?) AND ('_NO_PROP_' = ?)

目标:允许用户按道具,抽签或两者进行搜索。我的实际程序将查询其他几个字段。

注意:

  • WinForms Project(VB.NET,如果适用)
  • TestSelection是Microsoft Access数据库中的查询

1 个答案:

答案 0 :(得分:0)

我决定删除QueryBuilder中的任何WHERE条件。相反,我只使用LINQ查询。