Sql 转换varchar值时转换失败';是';到数据类型位

Sql 转换varchar值时转换失败';是';到数据类型位,sql,Sql,我使用了一个案例,将布尔列值更改为实际有意义的文本字符串。首先,在对这些列执行WHERE语句时,我是使用布尔值还是更新的文本字符串 我用过: WHERE TrainingProgram.blnInCatalogue = 'Yes' AND TrainingProgram.blnActive = 'Inactive' 但我得到了一个错误: 将varchar值“是”转换为数据类型位时,转换失败 我做错什么了吗?如果是真的,请尝试使用: WHERE TrainingProgram.blnInC

我使用了一个案例,将布尔列值更改为实际有意义的文本字符串。首先,在对这些列执行
WHERE
语句时,我是使用布尔值还是更新的文本字符串

我用过:

WHERE TrainingProgram.blnInCatalogue = 'Yes' 
  AND TrainingProgram.blnActive = 'Inactive'
但我得到了一个错误:

将varchar值“是”转换为数据类型位时,转换失败

我做错什么了吗?

如果是真的,请尝试使用:

WHERE TrainingProgram.blnInCatalogue <> 0 
WHERE TrainingProgram.blnInCatalogue = 0 

blnincalog
列是一个位字段,它不理解字符串“Yes”的含义。它只知道0或1。

尽管可以使用case将位列显示为可读字符串,但它们的内部值仍然是
。它们只能与
0
1
进行比较