如何通过“?”符号作为表别名?

时间:2014-12-24 09:30:48

标签: c# .net oracle

我必须将问号符号(?)作为查询中的表别名从C#代码传递到oracle数据库。它给了我例外:

  

提供的参数数量(0)与SQL语句中的占位符数量(2)不匹配。

这是由于问号符号。请建议一种克服此解决方案的方法。 插入来自c#代码的数据也会遇到类似的问题。

示例:

SELECT SYSDATE AS "IS NEWYEAR ?" FROM DUAL;

1 个答案:

答案 0 :(得分:1)

这里工作正常,在C#中转义"

using (OracleConnection oc = new OracleConnection("..."))
{
    oc.Open();

    OracleCommand cm = oc.CreateCommand();
    cm.CommandText = "SELECT SYSDATE AS \"IS NEWYEAR ?\" FROM DUAL";

    object o = cm.ExecuteScalar();
}