SQL Transaction in Generated DataAdapter in ASP.NET
Setiap transaksi Create, Update, dan Delete ke dalam database wajib menggunakan transaction untuk proses commit apabila proses berhasil dan melakukan rollback apabila salah satu proses gagal.
Jika kita menggunakan querystring, deklarasi sqltransaction pada umumnya biasa digunakan untuk melakukan input secara masal untuk banyak data.
Tetapi apabila kita memanfaatkan dataset dengan generated datatable dan dataadapter maka cara yang digunakan adalah menggunakan transaction scope.
Hal yang pertama yang perlu ditambahkan adalah referensi ke System.Transactions kemudian kita perlu menambahkan Imports System.Transactions.
Dibawah ini adalah contoh penerapan transaction scope pada generated dataadapter di ASP.NET.
Setelah semua transaksi insert dilakukan maka diakhir proses kita perlu memanggil prosedur complete untuk melakukan commit.
Jika prosedur commit tidak pernah dipanggil maka setelah selesai eksekusi prosedur secara otomatis akan dianggap rollback,
Semoga posting tentang SQL Transaction in Generated DataAdapter in ASP.NET diatas dapat bermanfaat.
Salam,
Jika kita menggunakan querystring, deklarasi sqltransaction pada umumnya biasa digunakan untuk melakukan input secara masal untuk banyak data.
Tetapi apabila kita memanfaatkan dataset dengan generated datatable dan dataadapter maka cara yang digunakan adalah menggunakan transaction scope.
Hal yang pertama yang perlu ditambahkan adalah referensi ke System.Transactions kemudian kita perlu menambahkan Imports System.Transactions.
Dibawah ini adalah contoh penerapan transaction scope pada generated dataadapter di ASP.NET.
Protected Sub BtnSave_Click(sender As Object, e As System.EventArgs) Handles BtnSave.Click Try Dim oDA As New ESSTableAdapters.TR_DETAILTableAdapter Dim oDT As DataTable = ViewState("ODT") Dim oRB1 As RadioButton Dim oRB2 As RadioButton Dim oRB3 As RadioButton Dim oRB4 As RadioButton Dim oRB5 As RadioButton Dim nVal As Int16 = 0 Using oScope As New TransactionScope() For i As Int16 = 0 To GvTaskList.Rows.Count - 1 oRB1 = GvTaskList.Rows(i).Cells(2).FindControl("RB1") oRB2 = GvTaskList.Rows(i).Cells(2).FindControl("RB2") oRB3 = GvTaskList.Rows(i).Cells(2).FindControl("RB3") oRB4 = GvTaskList.Rows(i).Cells(2).FindControl("RB4") oRB5 = GvTaskList.Rows(i).Cells(2).FindControl("RB5") If oRB1.Checked = True Then nVal = 1 End If If oRB2.Checked = True Then nVal = 2 End If If oRB3.Checked = True Then nVal = 3 End If If oRB4.Checked = True Then nVal = 4 End If If oRB5.Checked = True Then nVal = 5 End If oDA.Insert(G_Periode, "name", "address", oDT.Rows(i)("QID"), nVal, Date.Now) Next 'Commit oScope.Complete() End Using Catch ex As Exception InfoDiv.InnerHtml = ex.Message End Try End Sub
Setelah semua transaksi insert dilakukan maka diakhir proses kita perlu memanggil prosedur complete untuk melakukan commit.
Jika prosedur commit tidak pernah dipanggil maka setelah selesai eksekusi prosedur secara otomatis akan dianggap rollback,
Semoga posting tentang SQL Transaction in Generated DataAdapter in ASP.NET diatas dapat bermanfaat.
Salam,