SQL检测空值并更改查询

问题描述:

我正在使用c#和mssql。我发送参数从C#到SQL并执行查询,但有时它会出现空值。我使用SQL函数。它对字符串值很好,但是对bool有问题。例如 bool b = NULL 查询的执行方式如下:.... WHERE B LIKE'%%' 它永远不会返回值。 我想检测空值和更改查询如果B为空查询必须是这样的 ......在哪里B不是空 我可以改变这在C#代码,但也有一些其他参数,如它可以在SQL更容易,如果有可能SQL检测空值并更改查询

感谢

SQL服务器支持标准的SQL COALESCE函数;尝试在coalesce调用中包装你的布尔值,例如WHERE COALESCE(bool_value,'')LIKE'%%'

+0

多数民众赞成在伟大的! 非常感谢 – bilal 2010-08-09 13:44:52

+0

不客气。 – 2010-08-10 01:10:17

使用parameterized queries而这一切是照顾你。