erstellen Ich verwende Oracle-Transaktion, um in Multi-Tabellen eine Master-Tabelle und zwei Details Tabellen zur gleichen Zeit einfügen. Also werde ich einen Datensatz in die Master-Tabelle und Multi-Datensätze in die anderen beiden Tabellen einfügen. Ich muss den Wert 1 zurückgeben, wenn der Operationserfolg in allen Tabellen, wenn ein Fehler auftritt, ich 0 und 3 zurückgeben werde, wenn die Daten bereits in der Master-Tabelle vorhanden sind. Ich brauche dies in C# zu tun, hier ist mein Code, und wie ich meinen Code auf andere Tabellen einfügen ändern können SchleifenOrakel-Transaktion mit C#
public int RunOracleTransaction(Student s, Marks[] m, Course []s)
{
using (OracleConnection connection = new OracleConnection(connectionString))
{
connection.Open();
OracleCommand command = connection.CreateCommand();
OracleTransaction transaction;
// Start a local transaction
transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted);
// Assign transaction object for a pending local transaction
command.Transaction = transaction;
try
{
// what i shall do to insert 1 record to master data and multi records //to details data as one transaction ?
}
catch (Exception e)
{
transaction.Rollback();
Console.WriteLine(e.ToString());
Console.WriteLine("Neither record was written to database.");
}
}
}
Sie werden sicherlich müssen Oracle Transaction instanziiert werden; Sie sollten auch einen using-Block verwenden, um sicherzustellen, dass er vollständig ist. Rufen Sie 'Commit' auf, um einen Rollback zu vermeiden. – Richard