Menggunakan parameter bernilai jadual untuk melaksanakan sisipan baris berparameter kelompok C#
Dalam operasi pangkalan data, adalah keperluan biasa untuk memasukkan berbilang baris data dengan cekap sambil memastikan keselamatan data. Dalam C#, ini boleh dicapai menggunakan parameter bernilai jadual dan prosedur tersimpan.
Untuk mengelakkan penggunaan berulang pernyataan "INSERT INTO" dan masukkan baris data berparameter dalam kelompok, sila ikuti langkah di bawah:
Buat jenis jadual takrif pengguna (UDT): Tentukan struktur jadual untuk mewakili baris yang akan disisipkan. Contohnya:
CREATE TYPE MyTableType AS TABLE ( Col1 int, Col2 varchar(20) ) GO
Buat prosedur tersimpan: Buat prosedur tersimpan yang akan menerima UDT sebagai parameter.
CREATE PROCEDURE MyProcedure ( @MyTable dbo.MyTableType READONLY -- 注意:表值参数必须是只读的! ) AS INSERT INTO MyTable (Col1, Col2) SELECT Col1, Col2 FROM @MyTable GO
Sediakan data: Buat jadual data dan isikannya dengan baris untuk disisipkan.
Melaksanakan prosedur tersimpan: Gunakan objek SqlCommand untuk melaksanakan prosedur tersimpan dan lulus jadual data sebagai parameter.
using (var con = new SqlConnection("ConnectionString")) { using(var cmd = new SqlCommand("MyProcedure", con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@MyTable", SqlDbType.Structured).Value = dt; con.Open(); cmd.ExecuteNonQuery(); } }
Dengan kaedah ini, anda boleh memasukkan berbilang baris dengan cekap ke dalam pangkalan data sambil memastikan keselamatan data melalui pertanyaan berparameter. Ini mengelakkan pernyataan sisipan individu pendua dan berkemungkinan tidak cekap.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan Berbilang Baris Berparameter dengan Cekap ke dalam Pangkalan Data SQL Menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!