@param text AS
SELECT count(id) from news where col = @param
执行上述存储过程时,发生错误:
数据类型文本和文本在等于运算符中不兼容
为什么?
是的,您应该避免使用text
数据类型,并且可以使用varchar(max)
或类似的其他数据类型。对于当前方案,不能将=
运算符与text
数据类型一起使用。取而代之的是,您可以尝试使用LIKE
,如下所示
SELECT count(id) from news where col LIKE @param
试试这个:
DECLARE @param VARCHAR(MAX) = 'YourValue';
SELECT COUNT(id) FROM news WHERE CAST(col AS VARCHAR(MAX)) = @param;