VS2010中的DataSet设计器可以支持可选参数吗?

发布于 2024-12-08 13:35:30 字数 197 浏览 0 评论 0原文

我喜欢 VS2010 中内置数据集设计器提供的许多内置功能,并且如果可能的话,不想更改为完全不同的功能。问题是,要具有可选参数,我需要为每个参数组合创建完全独立的函数。因此,对于 6 个参数,我需要 63 个不同的函数。这显然是完全无法管理的。

有没有一种方法可以让一个函数仅在 SQL 生成的 WHERE 子句有值的情况下将参数添加到该子句中,否则会忽略该参数?

I like a lot of the built in features the built-in DataSet designer provides in VS2010 and do not want to have to change to something entirely different if at all possible. The problem is, to have optional parameters, I need to create completely independent functions for each combination of parameters. So for 6 parameters, I would need 63 different functions. That's obviously completely unmanageable.

Is there a way to have one function which ONLY adds a parameter to the generated WHERE clause of my SQL if it has a value, and otherwise, it ignores it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

反话 2024-12-15 13:35:30

您可以使用 ISNULL 将这些可选参数添加到 WHERE 子句中

WHERE (YourTable.Column = ISNULL(@Column, YourTable.Column))

:这样,无论有没有(可选)参数,SQL 都可以工作。如果该值为空,则不会影响结果。
您只需将所有参数添加到 DataAdapter 的参数集合中(AllowDbNull=true 的可选参数)。但我相当确定它们会自动正确添加。

You could add these optional paremeters into the WHERE-Clause with ISNULL:

WHERE (YourTable.Column = ISNULL(@Column, YourTable.Column))

On this way the SQL works with or without the (optional) parameter. If the value is null it won't affect the result.
You only have to add all parameters into the DataAdapter's parameter-collection(the optional with AllowDbNull=true). But i'm fairly sure that they will be automatically added correctly.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文