Chcę partii wielu instrukcji wyboru, aby zmniejszyć liczbę przejazdów w obie strony do bazy danych. Kod wygląda jak poniższy pseudo kod. Działa doskonale na SQL Server, ale nie działa na Oracle - Oracle skarży się na składnię sql. Rozejrzałem się i jedyne przykłady, jakie mogę znaleźć, zwracając wiele zestawów wyników z Oracle, używają procedur przechowywanych. Czy można to zrobić w Oracle bez używania procedur składowanych? Korzystam z dostawcy danych MS Oracle, ale w razie potrzeby mogę użyć ODP.Net.Batch wielu instrukcji SELECT podczas wywoływania Oracle z ADO.NET
var sql = @"
select * from table1
select * from table2
select * from table3";
DbCommand cmd = GetCommand(sql);
using(var reader = cmd.ExecuteReader())
{
dt1.Load(reader);
reader.NextResult();
dt2.Load(reader);
reader.NextResult();
dt3.Load(reader);
}
http://stackoverflow.com/questions/308963/how -to-split-oracle-sql-statement-for-ado-net – Kirtan
Dzięki. Spojrzałem na to, ale jest to nieco inny scenariusz, ponieważ instrukcje SQL nie zwracają żadnych zestawów wyników. –