Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर संग्रहीत प्रक्रिया में सरणी पास करना

SQL Server 2008 और बाद में

SQL सर्वर में इस प्रकार एक प्रकार बनाएँ:

CREATE TYPE dbo.ProductArray 
AS TABLE
(
  ID INT,
  Product NVARCHAR(50),
  Description NVARCHAR(255)
);

SQL सर्वर में अपनी प्रक्रिया बदलें:

ALTER PROC INSERT_SP
@INFO_ARRAY AS dbo.ProductArray READONLY
AS
BEGIN
    INSERT INTO Products SELECT * FROM @INFO_ARRAY
END

फिर आपको एक DataTable बनाना होगा C# में पास करने के लिए मान वाली वस्तु:

DataTable dt = new DataTable();
//Add Columns
dt.Columns.Add("ID");
dt.Columns.Add("Product");
dt.Columns.Add("Description");
//Add rows
dt.Rows.Add("7J9P", "Soda", "2000ml bottle");

using (conn)
{
    SqlCommand cmd = new SqlCommand("dbo.INSERT_SP", conn);
    cmd.CommandType = CommandType.StoredProcedure;
    SqlParameter dtparam = cmd.Parameters.AddWithValue("@INFO_ARRAY", dt);
    dtparam.SqlDbType = SqlDbType.Structured;
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में char, nchar, varchar और nvarchar में क्या अंतर है?

  2. .mdf डेटाबेस को अपडेट करने में विफल क्योंकि डेटाबेस केवल पढ़ने के लिए है (Windows अनुप्रयोग)

  3. SSMS के लिए शॉर्टकट कैसे बनाएं और डिफ़ॉल्ट SQL सर्वर से स्वचालित रूप से कनेक्ट करें - SQ:सर्वर / TSQL ट्यूटोरियल भाग 4

  4. SQL सर्वर त्रुटि लॉग नेविगेट करना

  5. मैं रोज़ाना SQL क्वेरी चलाने के लिए किसी कार्य को कैसे शेड्यूल कर सकता हूँ?