请问大家,参数化查询中,like语句应该怎么写?
string sql1="select * from Table where Name like '%:Name%'";
string sql2="select * from Table where Name like :Name";;
string sql3="select * from Table where Name like N'%'+:Name+'%'"; //sql server写法
OracleParameter[] parameters=
{
new OracleParameter("",OracleType.VarChar,10)
}
parameters[0]=name;
以上三种 sql写法,都是错的,在.Net中,都会提示:无效字符或参数格式有误。
真的不知道,该怎么写。(没分了,真的很感谢大家)
试试这样的写法:
代码一
string sql2="select * from Table where Name like :Name";
代码二
parameters[0]="%"+name+"%";
string sql1="select * from Table where Name like :vName";
new OracleParameter("vName",OracleType.VarChar,10)
SQL Server:
string sql1="select * from Table where Name like @vName";
new SqlParameter("@vName",SqlDbType.VarChar,10)