Bagikan melalui


Menyisipkan rekaman baru ke dalam database di aplikasi .NET Framework

Catatan

Himpunan data dan kelas terkait adalah teknologi .NET Framework warisan dari awal 2000-an yang memungkinkan aplikasi untuk bekerja dengan data dalam memori saat aplikasi terputus dari database. Himpunan data tersebut sangat berguna untuk aplikasi yang mengaktifkan pengguna guna memodifikasi data dan mempertahankan perubahan kembali ke database. Meskipun himpunan data telah terbukti menjadi teknologi yang sangat sukses, sebaiknya aplikasi .NET baru menggunakan Entity Framework Core. Entity Framework menyediakan cara yang lebih alami untuk bekerja dengan data tabular sebagai model objek, dan memiliki antarmuka pemrograman yang lebih sederhana.

Untuk menyisipkan rekaman baru ke dalam database dengan ADO.NET dalam proyek .NET Framework, Anda dapat menggunakan TableAdapter.Update metode , atau salah satu metode DBDirect TableAdapter (khususnya TableAdapter.Insert metode ). Untuk informasi selengkapnya, lihat TableAdapter.

Jika aplikasi Anda tidak menggunakan TableAdapters, Anda dapat menggunakan objek perintah (misalnya, SqlCommand) untuk menyisipkan rekaman baru di database Anda.

Jika aplikasi Anda menggunakan himpunan data untuk menyimpan data, gunakan metode .TableAdapter.Update Metode mengirim Update semua perubahan (pembaruan, sisipan, dan penghapusan) ke database.

Jika aplikasi Anda menggunakan objek untuk menyimpan data, atau jika Anda ingin kontrol yang lebih baik atas pembuatan rekaman baru dalam database, gunakan metode .TableAdapter.Insert

Jika TableAdapter Anda tidak memiliki Insert metode, artinya TableAdapter dikonfigurasi untuk menggunakan prosedur tersimpan, atau propertinya GenerateDBDirectMethods diatur ke false. Coba atur properti TableAdapter GenerateDBDirectMethods ke true dari dalam Perancang Himpunan Data, lalu simpan himpunan data. Tindakan ini meregenerasi TableAdapter. Jika TableAdapter masih tidak memiliki Insert metode, tabel mungkin tidak menyediakan informasi skema yang cukup untuk membedakan antara baris individual (misalnya, mungkin tidak ada kunci utama yang diatur pada tabel).

Catatan

Artikel ini berlaku untuk pengembangan ADO.NET dan .NET Framework. Untuk tugas yang sama dengan Entity Framework 6, lihat Menambahkan entitas baru ke konteks. Untuk Entity Framework Core, lihat Menambahkan data.

Sisipkan rekaman baru dengan menggunakan TableAdapters

TableAdapters menyediakan berbagai cara untuk menyisipkan rekaman baru ke dalam database, tergantung pada persyaratan aplikasi Anda.

Jika aplikasi Anda menggunakan himpunan data untuk menyimpan data, Anda dapat menambahkan rekaman baru ke yang diinginkan DataTable dalam himpunan data, lalu memanggil TableAdapter.Update metode . Metode ini TableAdapter.Update mengirimkan perubahan apa pun dalam DataTable database (termasuk rekaman yang dimodifikasi dan dihapus).

Untuk menyisipkan rekaman baru ke dalam database dengan menggunakan metode TableAdapter.Update

  1. Tambahkan rekaman baru ke yang diinginkan DataTable dengan membuat baru DataRow dan menambahkannya ke Rows koleksi.

  2. Setelah baris baru ditambahkan ke DataTable, panggil TableAdapter.Update metode . Anda dapat mengontrol jumlah data yang akan diperbarui dengan meneruskan seluruh DataSet, array , DataRowatau satu DataRowDataTable.

    Kode berikut menunjukkan cara menambahkan rekaman baru ke DataTable lalu memanggil TableAdapter.Update metode untuk menyimpan baris baru ke database. (Contoh ini menggunakan Region tabel dalam database Northwind.)

    // Create a new row.
    NorthwindDataSet.RegionRow newRegionRow;
    newRegionRow = northwindDataSet.Region.NewRegionRow();
    newRegionRow.RegionID = 5;
    newRegionRow.RegionDescription = "NorthWestern";
    
    // Add the row to the Region table
    this.northwindDataSet.Region.Rows.Add(newRegionRow);
    
    // Save the new row to the database
    this.regionTableAdapter.Update(this.northwindDataSet.Region);
    

Untuk menyisipkan rekaman baru ke dalam database dengan menggunakan metode TableAdapter.Insert

Jika aplikasi Anda menggunakan objek untuk menyimpan data, Anda dapat menggunakan TableAdapter.Insert metode untuk membuat baris baru langsung di database. Metode Insert ini menerima nilai individual untuk setiap kolom sebagai parameter. Memanggil metode menyisipkan rekaman baru ke dalam database dengan nilai parameter yang diteruskan.

  • Panggil metode TableAdapter Insert , meneruskan nilai untuk setiap kolom sebagai parameter.

Prosedur berikut menunjukkan menggunakan TableAdapter.Insert metode untuk menyisipkan baris. Contoh ini menyisipkan data ke Region dalam tabel di database Northwind.

Catatan

Jika Anda tidak memiliki instans yang tersedia, buat instans TableAdapter yang ingin Anda gunakan.

NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
    new NorthwindDataSetTableAdapters.RegionTableAdapter();

regionTableAdapter.Insert(5, "NorthWestern");

Sisipkan rekaman baru dengan menggunakan objek perintah

Anda bisa menyisipkan rekaman baru langsung ke dalam database menggunakan objek perintah.

Untuk menyisipkan rekaman baru ke dalam database dengan menggunakan objek perintah

  • Buat objek perintah baru, lalu atur Connectionproperti , , CommandTypedan CommandText .

Contoh berikut menunjukkan menyisipkan rekaman ke dalam database menggunakan objek perintah. Ini menyisipkan data ke Region dalam tabel di database Northwind.

System.Data.SqlClient.SqlConnection sqlConnection1 = 
    new System.Data.SqlClient.SqlConnection("YOUR CONNECTION STRING");

System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand();
cmd.CommandType = System.Data.CommandType.Text;
cmd.CommandText = "INSERT Region (RegionID, RegionDescription) VALUES (5, 'NorthWestern')";
cmd.Connection = sqlConnection1;

sqlConnection1.Open();
cmd.ExecuteNonQuery();
sqlConnection1.Close();

Keamanan .NET

Anda harus memiliki akses ke database yang coba Anda sambungkan, dan izin untuk melakukan penyisipan ke dalam tabel yang diinginkan.