SqlRowUpdatingEventArgs Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan data untuk peristiwa tersebut RowUpdating .
public ref class SqlRowUpdatingEventArgs sealed : System::Data::Common::RowUpdatingEventArgs
public sealed class SqlRowUpdatingEventArgs : System.Data.Common.RowUpdatingEventArgs
type SqlRowUpdatingEventArgs = class
inherit RowUpdatingEventArgs
Public NotInheritable Class SqlRowUpdatingEventArgs
Inherits RowUpdatingEventArgs
- Warisan
-
SqlRowUpdatingEventArgs
Contoh
Contoh berikut menunjukkan cara menggunakan RowUpdating peristiwa dan RowUpdated .
Peristiwa RowUpdating mengembalikan output ini:
event args: (command=Microsoft.Data.SqlClient.SQLCommand commandType=2 status=0)
Peristiwa RowUpdated mengembalikan output ini:
event args: (command=Microsoft.Data.SqlClient.SQLCommand commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)
using Microsoft.Data.SqlClient;
using System.Xml;
using System.Data.Common;
using System.Windows.Forms;
public class Form1 : Form
{
private DataSet DataSet1;
private DataGrid dataGrid1;
// handler for RowUpdating event
private static void OnRowUpdating(object sender, SqlRowUpdatingEventArgs e)
{
PrintEventArgs(e);
}
//Handler for RowUpdated event.
private static void OnRowUpdated(object sender, SqlRowUpdatedEventArgs e)
{
PrintEventArgs(e);
}
public static int Main()
{
const string CONNECTION_STRING = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer";
const string SELECT_ALL = "select * from Products";
//Create DataAdapter.
SqlDataAdapter rAdapter = new SqlDataAdapter(SELECT_ALL, CONNECTION_STRING);
//Create and fill DataSet (Select only first 5 rows.).
DataSet rDataSet = new DataSet();
rAdapter.Fill(rDataSet, 0, 5, "Table");
//Modify DataSet.
DataTable rTable = rDataSet.Tables["Table"];
rTable.Rows[0][1] = "new product";
//Add handlers.
rAdapter.RowUpdating += new SqlRowUpdatingEventHandler(OnRowUpdating);
rAdapter.RowUpdated += new SqlRowUpdatedEventHandler(OnRowUpdated);
//Update--this operation fires two events (RowUpdating and RowUpdated) for each changed row.
rAdapter.Update(rDataSet, "Table");
//Remove handlers.
rAdapter.RowUpdating -= new SqlRowUpdatingEventHandler(OnRowUpdating);
rAdapter.RowUpdated -= new SqlRowUpdatedEventHandler(OnRowUpdated);
return 0;
}
private static void PrintEventArgs(SqlRowUpdatingEventArgs args)
{
Console.WriteLine("OnRowUpdating");
Console.WriteLine(" event args: (" +
" command=" + args.Command +
" commandType=" + args.StatementType +
" status=" + args.Status + ")");
}
private static void PrintEventArgs(SqlRowUpdatedEventArgs args)
{
Console.WriteLine("OnRowUpdated");
Console.WriteLine(" event args: (" +
" command=" + args.Command +
" commandType=" + args.StatementType +
" recordsAffected=" + args.RecordsAffected +
" status=" + args.Status + ")");
}
}
Keterangan
Peristiwa RowUpdating dinaikkan sebelum baris Update ke baris.
Saat Anda menggunakan Update, ada dua peristiwa yang terjadi untuk setiap baris data yang diperbarui. Urutan eksekusi adalah sebagai berikut:
Nilai dalam DataRow dipindahkan ke nilai parameter.
Acara OnRowUpdating dinaikkan.
Perintah dijalankan.
Jika perintah diatur ke
FirstReturnedRecord
, dan hasil pertama yang dikembalikan ditempatkan di DataRow.Jika ada parameter output, parameter tersebut ditempatkan di DataRow.
Acara OnRowUpdated dinaikkan.
AcceptChanges dipanggil.
Konstruktor
SqlRowUpdatingEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping) |
Menginisialisasi instans baru kelas SqlRowUpdatingEventArgs. |
Properti
Command |
Mendapatkan atau mengatur SqlCommand untuk dijalankan saat melakukan Update(DataSet). |