Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Melewati DataTable ke prosedur tersimpan sebagai argumen

Anda dapat mengubah prosedur tersimpan untuk menerima tabel parameter yang dihargai sebagai masukan. Namun pertama-tama, Anda perlu membuat TYPE tabel yang ditentukan pengguna yang cocok dengan struktur C# DataTable:

CREATE TYPE dbo.PersonType AS TABLE
(
    Name NVARCHAR(50), -- match the length of SomeTable.Column1
    Age INT
);

Sesuaikan SPROC Anda:

CREATE PROCEDURE dbo.InsertPerson
    @Person dbo.PersonType READONLY
AS
BEGIN
  INSERT INTO SomeTable(Column1, Column2) 
     SELECT p.Name, p.Age
     FROM @Person p;
END

Di C#, ketika Anda mengikat datatable ke parameter PROC, Anda perlu menentukan parameter sebagai:

parameter.SqlDbType = SqlDbType.Structured;
parameter.TypeName = "dbo.PersonType";

Lihat juga contohnya di sini Melewati Tabel Bernilai Parameter ke Prosedur Tersimpan



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Membuat Database di SQL Server

  2. Apa ruang lingkup CONTEXT_INFO di SQL Server?

  3. Konfigurasikan SQL Server Always ON Availability Groups antara Dua Replika Sinkron. Bagian 2

  4. Pembaruan SQL permintaan baris top1

  5. Berfungsi seperti USE untuk menunjuk ke database SQL di server yang berbeda?