我有一个填充下拉列表的数据集,数据集后面的查询使用两个级联参数。
基本上它看起来像这样:
choose an engine: [drop down list] //defaults to 0
choose a transmission: [drop down list] //defaults to 0
list of choices: [drop down list]
如果用户不想使用这些参数,则两个级联参数的默认值均为零。
不应该默认值允许我的数据集查询"选项列表"下拉列表自动执行?
或者还有其他我需要做的事情吗?
由于
答案 0 :(得分:1)
我不确定我是否完全理解这个问题,但我会说每个数据集都需要一个参数,当空白时会给出所有结果。
这可以在查询所需结果的SQL脚本中实现,可能使用if @Param = "" SELECT * FROM tab ELSE SELECT * FROM tab WHERE col = @Param
类型脚本。这应该允许您依次填充每个参数空白,从而导致最后一个参数。
不幸的是,因为无论你做什么,第二个参数都依赖于第一个参数(即使仅在某些情况下),你必须在进入下一个参数之前输入空白值。但是,如果在填充第二个参数时使用与上面类似的东西,则第三个选择all时,第三个应该默认选择all,
答案 1 :(得分:1)
如果我理解正确,那么我看到的一个问题是0
数据集中不存在您的默认值list of choices
。如果数据集后面的查询类似于:WHERE engine IN (@engine) AND transmission IN (@Transmission)
,那么使用默认值0
可能不会返回任何内容。相反,如果您希望返回所有行,请尝试将查询更改为:
WHERE (@engine = 0 OR engine IN (@engine))
AND (@transmission = 0 OR transmission IN (@transmission))