按参数过滤 sql vb.net

Posted

技术标签:

【中文标题】按参数过滤 sql vb.net【英文标题】:Filter by parameters sql vb.net 【发布时间】:2016-04-20 06:37:16 【问题描述】:

我有以下疑问:

Dim anything as oledbcommand ("select * from table where col1=@a0 , col2=@a1")

我将使用此查询进行过滤。

因此,我需要 col1 中的记录,但没有创建新的选择命令。

所以问题是: @a0获取所有记录的值是多少?

【问题讨论】:

我不明白你的问题“@a0 获取所有记录的价值是什么?”请提供更多信息 一个 Select 语句是不可能的。但这很接近:select = "Select * from table Where 0 and col2=@a1" 然后根据过滤器设置条件:query = string.format(select, if(filter = "all", "1=1", "col1=@a0") 谢谢..但是为什么你在 where 后面使用 0 而不是 col1=@a0 我亲爱的@pirvu georgian ..我想要一个参数时的所有记录......所以我不知道那个参数的值,它给出了所有记录,就像我一开始没有使用这个参数一样...... ...原因是我有很多条件,例如 col1=first one or col1=second one or col1=all names 因为没有值可以放入参数@a0 中,这将为您提供所有结果。它只是不存在于 sql 中。 【参考方案1】:

您应该使用like 运算符和'%' 字符。 '%' 表示匹配所有项目的任何字符的任何计数。

例子:

SELECT * FROM MyTable WHERE [_Items] LIKE '%' 

【讨论】:

很好的答案,但我必须得到一个参数来过滤我的结果 salam @Ahmed Ramdan 需要尝试一下!使用参数名称而不是 '%' 和 ... ` SELECT * FROM MyTable WHERE [_Items] LIKE @Param command.Parameters.AddWithValue("@Param","%")

以上是关于按参数过滤 sql vb.net的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server - 按可变数量的参数过滤查询

VB.NET Dataview Rowfilter 按时间

如何使用来自 msaccess 表的过滤数据填充 vb.net 中的组合框

使用 VB.Net 在 Excel 中使用 WHERE SQL 命令

在 vb net 中显示从 1 个平板电脑到 2 个过滤后的 datagridview 的数据

当我在 VB.NET 中修改 SQL 查询时,.tag 返回 Nothing