请帮我看一下下面这段代码的like用法有误吗?谢谢
string strFilter;
if (txbOne.Text.Trim().Length == 0)
{
if (txbTwo.Text.Trim().Length == 0)
{
if (txbThree.Text.Trim().Length == 0)
strFilter = "";
else
{
strFilter = "where 班级编号 = ";
strFilter += "'+txbThree.Text.Trim()+'";
}
}
else
{
strFilter = "where 年级 like '";
strFilter += txbTwo.Text.Trim() + "%'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += "and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
}
else
{
strFilter = "where 班级编号 like '";
strFilter += txbOne.Text.Trim() + "%'";
if (txbTwo.Text.Trim().Length != 0)
{
strFilter += "and 年级 like '";
strFilter += txbTwo.Text.Trim() + "%'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
else
{
if (txbThree.Text.Trim().Length != 0)
{
strFilter += "and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
}
}
string strFilter;
if (txbOne.Text.Trim().Length == 0)
{
if (txbTwo.Text.Trim().Length == 0)
{
if (txbThree.Text.Trim().Length == 0)
strFilter = "";
else
{
strFilter = "where 班级编号 = ";
strFilter += "'+txbThree.Text.Trim()+'";
}
}
else
{
strFilter = "where 年级 like '";
strFilter += txbTwo.Text.Trim() + "%'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += "and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
}
else
{
strFilter = "where 班级编号 like '";
strFilter += txbOne.Text.Trim() + "%'";
if (txbTwo.Text.Trim().Length != 0)
{
strFilter += "and 年级 like '";
strFilter += txbTwo.Text.Trim() + "%'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
else
{
if (txbThree.Text.Trim().Length != 0)
{
strFilter += "and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
}
}
strFilter += "'+txbThree.Text.Trim()+'";
这句是有错误的,在运行时+txbThree.Text.Trim()+是作为字符串出现,没有获取到文本框里的值
应该是
strFilter = "where 班级编号 = ";
strFilter += "'"+txbThree.Text.Trim()+"'";
private void btnSearch_Click(object sender, EventArgs e)
{
string strFilter;
if (txbOne.Text.Trim().Length == 0)
{
if (txbTwo.Text.Trim().Length == 0)
{
if (txbThree.Text.Trim().Length == 0)
strFilter = "";
else
{
strFilter = "where 班级编号 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
else
{
strFilter = "where 年级 like '";
strFilter += txbTwo.Text.Trim() + "%'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
}
else
{
strFilter = "where 班级编号 like '";
strFilter += txbOne.Text.Trim() + "%'";
if (txbTwo.Text.Trim().Length != 0)
{
strFilter += " and 年级 like '";
strFilter += txbTwo.Text.Trim() + "%'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
else
{
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 like '";
strFilter += txbThree.Text.Trim() + "%'";
}
}
}
}
private void btnSearch_Click(object sender, EventArgs e)
{
string strFilter;
if (txbOne.Text.Trim().Length == 0)
{
if (txbTwo.Text.Trim().Length == 0)
{
if (txbThree.Text.Trim().Length == 0)
strFilter = "";
else
{
strFilter = "where 班级编号 = ";
strFilter += "'" + txbThree.Text.Trim() + "'";
}
}
else
{
strFilter = "where 年级 =";
strFilter += "'" + txbTwo.Text.Trim() + "'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 =";
strFilter += "'" + txbThree.Text.Trim() + "'";
}
}
}
else
{
strFilter = "where 班级编号 =";
strFilter += "'" + txbOne.Text.Trim() + "'";
if (txbTwo.Text.Trim().Length != 0)
{
strFilter += " and 年级 =";
strFilter += "'" + txbTwo.Text.Trim() + "'";
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 =";
strFilter += "'" + txbThree.Text.Trim() + "'";
}
else
{
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 =";
strFilter += "'" + txbThree.Text.Trim() + "'";
}
}
}
}
2.没必要这么麻烦
string strFilter= "WHERE 1=1 ";
if (txbOne.Text.Trim().Length != 0)
{
strFilter += " AND 班级编号 ='" + txbOne.Text.Replace("'","''").Trim() + "'";
}
if (txbTwo.Text.Trim().Length != 0)
{
strFilter += " and 年级 LIKE '" + txbTwo.Text.Replace("'","''").Trim() + "%'";
}
if (txbThree.Text.Trim().Length != 0)
{
strFilter += " and 班级名称 like '" + txbThree.Text.Replace("'","''").Trim() + "%'";
}