如图,在文本框输入之后进行模糊查询报错。
原来的查询数据库代码
/// <summary>
/// 模糊查询
/// </summary>
/// <param name="Name"></param>
/// <returns></returns>
public DataTable SelectReaderByName(string Name)
{
//创建连接对象
using (MySqlConnection connection = new MySqlConnection(strCon))
{
//准备sql语句
string sql = "SELECT * FROM Reader WHERE rdName LIKE '%' +@rdName+ '%'";
//准备参数
MySqlParameter[] parameters =
{
new MySqlParameter("@rdName", Name)
};
//创建查询对象
using (MySqlDataAdapter dataAdapter = new MySqlDataAdapter(sql, connection))
{
//添加参数
dataAdapter.SelectCommand.Parameters.AddRange(parameters);
//创建容器
DataTable dt = new DataTable();
dataAdapter.Fill(dt);
return dt;
}
}
}
更改sql语句和参数,模糊查询成功。
/// <summary>
/// 模糊查询
/// </summary>
/// <param name="Name"></param>
/// <returns></returns>
public DataTable SelectReaderByName(string Name)
{
//创建连接对象
using (MySqlConnection connection = new MySqlConnection(strCon))
{
//准备sql语句
string sql = "SELECT * FROM Reader WHERE rdName LIKE @rdName";
//准备参数
MySqlParameter[] parameters =
{
new MySqlParameter("@rdName", "%" + Name + "%")
};
//创建查询对象
using (MySqlDataAdapter dataAdapter = new MySqlDataAdapter(sql, connection))
{
//添加参数
dataAdapter.SelectCommand.Parameters.AddRange(parameters);
//创建容器
DataTable dt = new DataTable();
dataAdapter.Fill(dt);
return dt;
}
}
}