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

मैं संग्रहीत प्रक्रिया में पैरामीटर के रूप में सूची कैसे पास करूं?

SQL सर्वर में संग्रहीत कार्यविधि में मानों की एक सरणी पास करने के लिए पसंदीदा तरीका तालिका मान पैरामीटर का उपयोग करना है।

सबसे पहले आप इस प्रकार को परिभाषित करें:

CREATE TYPE UserList AS TABLE ( UserID INT );

फिर आप उस प्रकार को संग्रहीत कार्यविधि में उपयोग करते हैं:

create procedure [dbo].[get_user_names]
@user_id_list UserList READONLY,
@username varchar (30) output
as
select last_name+', '+first_name 
from user_mstr
where user_id in (SELECT UserID FROM @user_id_list)

तो इससे पहले कि आप उस संग्रहीत कार्यविधि को कॉल करें, आप एक तालिका चर भरें:

DECLARE @UL UserList;
INSERT @UL VALUES (5),(44),(72),(81),(126)

और अंत में SP को कॉल करें:

EXEC dbo.get_user_names @UL, @username OUTPUT;


  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 सर्वर कॉन्फ़िगर करें। भाग 2

  2. शीर्ष X संपादित करने के लिए मान कैसे बदलें और SQL सर्वर प्रबंधन स्टूडियो (SSMS) में शीर्ष X पंक्तियों का चयन करें - SQL सर्वर / TSQL ट्यूटोरियल भाग 20

  3. SQL सर्वर में रोलबैक ट्रंकेट करें

  4. NULL =NULL SQL सर्वर में गलत का मूल्यांकन क्यों करता है

  5. जब कोई 'आदेश' निर्दिष्ट नहीं किया जाता है, तो आपके रिकॉर्ड सेट के लिए एक क्वेरी किस क्रम को चुनती है?