我正在尝试使用ODP.NET运行查询。查询在LIKE
运算符右侧的文字中有一个参数。这是我的代码:
string query = @"select col1,col2,col3 from table where name like '%:cus_name%'";
OracleParameter p1 = new OracleParameter();
p1.OracleDbType = OracleDbType.Char;
p1.Value = name;
p1.ParameterName = "cus_name";
OracleCommand sql = new OracleCommand(query, conn);
sql.Parameters.Add(p1);
OracleDataReader ora = null;
我收到“无效参数”错误。请建议。
答案 0 :(得分:6)
更改您的
like '%:cus_name%'
到
like '%' || :cus_name || '%'
问题在于引用。在引号中,您的 rdms 会将其识别为 string literal ,从不将其视为参数。