Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Lulus Parameter Bernilai Jadual dari ADO.NET ke Prosedur Tersimpan Pelayan SQL?

Bagaimana untuk Lulus Parameter Bernilai Jadual dari ADO.NET ke Prosedur Tersimpan Pelayan SQL?

Linda Hamilton
Lepaskan: 2025-01-11 06:28:42
asal
690 orang telah melayarinya

How to Pass Table-Valued Parameters from ADO.NET to SQL Server Stored Procedures?

Menggunakan ADO.NET untuk Lulus Parameter Bernilai Jadual kepada Prosedur Tersimpan Pelayan SQL

Panduan ini menunjukkan cara menghantar data berstruktur, seperti jadual atau tatasusunan, ke prosedur tersimpan SQL Server menggunakan parameter bernilai jadual ADO.NET. Ikuti langkah ini:

  1. Tentukan Jenis Jadual Ditakrifkan Pengguna SQL Server: Gunakan pernyataan CREATE TYPE untuk menstruktur data bernilai jadual anda. Contohnya:
<code class="language-sql">CREATE TYPE [dbo].[MyDataType] AS TABLE
(
    ID INT,
    Name NVARCHAR(50)
)</code>
Salin selepas log masuk
  1. Buat Prosedur Tersimpan: Isytiharkan parameter nilai jadual sebagai parameter input baca sahaja dalam prosedur tersimpan anda. Contoh:
<code class="language-sql">CREATE PROCEDURE [dbo].[MyProcedure]
(
    @myData [dbo].[MyDataType] READONLY
)
AS
BEGIN
    SELECT * FROM @myData
END</code>
Salin selepas log masuk
  1. Isi Jadual Data dalam C#: Cipta DataTable dalam kod C# anda dan isikannya dengan data yang ingin anda hantar.
<code class="language-csharp">DataTable myDataTable = new DataTable("MyDataType");
myDataTable.Columns.Add("Name", typeof(string));
myDataTable.Columns.Add("Id", typeof(Int32));
myDataTable.Rows.Add("XYZ", 1);
myDataTable.Rows.Add("ABC", 2);</code>
Salin selepas log masuk
  1. Buat dan Tambah Parameter SQL: Cipta objek SqlParameter dan tetapkan sifatnya:
  • ParameterName: Mesti sepadan dengan nama parameter prosedur yang disimpan.
  • SqlDbType: Tetapkan kepada Structured.
  • Value: Tetapkan DataTable sebagai nilai.

Tambahkan parameter ini pada objek arahan anda:

<code class="language-csharp">SqlParameter parameter = new SqlParameter();
parameter.ParameterName = "@myData";
parameter.SqlDbType = System.Data.SqlDbType.Structured;
parameter.Value = myDataTable;
command.Parameters.Add(parameter);</code>
Salin selepas log masuk

Dengan mengikut langkah ini, anda boleh menghantar parameter bernilai jadual dengan cekap daripada aplikasi ADO.NET anda kepada prosedur tersimpan SQL Server.

Atas ialah kandungan terperinci Bagaimana untuk Lulus Parameter Bernilai Jadual dari ADO.NET ke Prosedur Tersimpan Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan