我试图在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();
}
}
谢谢!