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

C# Masukkan ke dalam Tabel SQL dengan Daftar sebagai parameter

Siapkan jenis yang ditentukan pengguna yang mirip dengan.

CREATE TYPE [dbo].[tableOf_Ints] AS TABLE(
    [ID] [int] NULL
)
GO

Kemudian Anda dapat menggunakannya seperti ini.

public static SqlCommand CreateCommand(List<int> ints)
{
    var dt = new DataTable();
    dt.Columns.Add("ID",typeof(Int32));
    for (int i = 0; i < ints.Count; i++)
    {
        dt.Rows.Add(ints[i]);
    }

    SqlCommand cmd = new SqlCommand("SomeStoredProc");
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.CommandTimeout = 120;
    var param1 = cmd.Parameters.AddWithValue("@SomeParam", dt);
    param1.SqlDbType = SqlDbType.Structured;
    param1.TypeName = "dbo.tableOf_Ints";

    return cmd;
}

Dengan asumsi Anda memiliki proc tersimpan seperti ini.

CREATE PROCEDURE [dbo].[SomeStoredProc]  
    @SomeParam TableOf_Ints READONLY
AS
BEGIN
END


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

  2. Cara Mengotomatiskan Pengumpulan Data pada Pertumbuhan Database SQL Server

  3. Cara Mengekstrak data dari kolom xml di sql 2008

  4. Bagaimana saya bisa menghapus menggunakan INNER JOIN dengan SQL Server?

  5. CONCAT_WS() untuk SQL Server