如何在 C# 中获取包含字母,如 sql

How to get contain letter in c# like in sql

在 sql 中,我使用此查询来获取包含字母:

select users_id, users_name, users_phone, users_address, users_email from dbo.tblUser
             where users_name like 'usersname%'

但是当我在 C# 中使用相同的查询时,我得到了这个:

System.Data.SqlClient.SqlException: 'Incorrect syntax near '%'.'

在 C# 中查询:

select users_id, users_name, users_phone, users_address, users_email from dbo.tblUser
             where users_name like @usersname%

错误的原因是您在查询中添加了未知符号。它周围没有引号,也没有使用连接。

解决此问题的一种方法是将 % 字符添加到 C# 代码中的参数值。示例:

param.Value = userNameVariable + "%";
WHERE users_name LIKE @usersname

另一种选择是在查询中连接它。

WHERE users_name LIKE @usersname + '%'

WHERE users_name LIKE CONCAT(@usersname, '%')