没有BEGIN END的.NET查询在多个语句中?

时间:2014-07-25 20:59:20

标签: c# asp.net oracle ado.net

我试图在ADO.NET中进行一系列相互依赖的查询。我不能发布查询,因为表结构是专有的,但我需要知道的是,是否可以在一次调用数据库中运行许多查询而不将它们包装在BEGIN / END调用中并且不使用存储过程?

例如:

我的查询基本上如下:

Insert into temp table
Insert into temp table2
Select * from temp table2

然而,我遇到的问题是,由于它们是作为字符串的单独查询,如果我使用分号将它们分开,我会收到INVALID CHARACTER错误,并且我已经在线阅读了这个我需要使用BEGIN END语句。很好,但是一旦我使用BEGIN-END语句,我就会收到错误:

PLS-00428: an INTO clause is expected in this SELECT statement

我也发现使用PL / SQL的结果。我试图将INTO语句放入查询中,但它会更改结果,我给出的任务是在尽可能少地更改时运行此查询。

我可以在没有BEGIN-END语句的情况下运行上述查询模式吗?还有其他技术可以使用吗?我不是Oracle专家,并且徒劳无功地寻找答案。

可能的相关代码:

我在哪里运行查询。 (注意,我试图将请求链接起来并在一个连接中运行它们,没有运气。)

DataSet dsReturn = new DataSet();
using (OracleConnection conn = new OracleConnection(strConnection))
{
    try
    {
        conn.Open();
        OracleCommand cmd = new OracleCommand();
        OracleDataAdapter oraDA = new OracleDataAdapter(strSQL, conn);
        oraDA.Fill(dsReturn);
        conn.Close();
    }
    catch (Exception e)
    {
         _strError = e.Message;

    }
    finally
    {
         conn.Close();
    }
}

谢谢!

0 个答案:

没有答案