日期:2014-05-17  浏览次数:20504 次

asp.net oracle数据库,模糊查询传参
asp.net 里用的oracle数据库,一个模糊查询,用Parameter传参的方式
C# code

OracleConnection conn = new OracleConnection(ConnectionString);
string str = "select * from table1 where name like '%:name%'";
OracleCommand cmd = new OracleCommand(str, conn);
OracleParameter name = new OracleParameter(":name", OracleType.Char, 50);
name.Value = TextBox1.Text;    
cmd.Parameters.Add(name);
conn.Open();
OracleDataReader dr = cmd.ExecuteReader();//到这里出错


错误:ORA-01036:非法的变量名/编号



------解决方案--------------------
试试
C# code
"select * from table1 where name like N'%'+:name+'%'";

------解决方案--------------------
%
业务逻辑层把:name值得百分号给加上试试,然后把引号去掉