Vraag : opslag waarden van opgeslagen procedure in variabelen

Hallo heeft iedereen,

I opgeslagen procedures die een recordset met veelvoudige gebieden, maar slechts één rij terugkeert. Btw, ik Sql Server 2005.

I zou willen gebruik dit SP van een ander SP roepen en zijn output opnieuw gebruiken daar, door het in verschillende variabelen op te slaan. De enige manier kan ik met succes doen die een tijdelijke lijst met de zelfde kolommen moet creëren zoals de die door origineel SP zijn teruggekeerd, dan vulling die tijdelijke lijst met de originele output van SP, als dit:

INSERT IN #mytbl (field1, field2, field3)
EXECT spMyOriginalSP @par1, @par2

Then zou ik elk van de tijdelijke lijstgebieden aan variabelen in nieuw SP, als dit toewijzen:

SELECT
@var1 = field1,
@var2 = handelt,
@var3 = field3
FROM #mytbl

Is daar een manier af om de tijdelijke lijstverwezenlijking te mijden, en direct de originele output van SP op te slaan in variabelen in nieuw SP?

Hope ik kon daar verklaren…: -)

Thanks vooraf voor uw hulp!

Antwoord : opslag waarden van opgeslagen procedure in variabelen

bekijk dit
http://www.sommarskog.se/share_data.html

Ook, als u tot het een functie in plaats van SP kunt maken, kunt u een lijstvariabele terugkeren.

verklaar @tablename sysname
verklaar @colname sysname

selecteer hoogste 1 @tablename = tablename, @colname = ColumnName VAN dbo.TestTableList ()
selecteer @tablename, @colname
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
CRE�ëR FUNCTIE TestTableList ( 
) @TABLELISTLIJST VAN DE WINST (
  DE IDENTITEIT VAN IDENTITEITSKAART INT. (1, 1),
  TableName SYSNAME,
  ColumnName SYSNAME
) ZOALS BEGINNEN  
	TUSSENVOEGSEL IN @TABLELIST
	SELECTEER TABLE_NAME, COLUMN_NAME
	VAN INFORMATION_SCHEMA.COLUMNS
	
	TERUGKEER 
EIND
Andere oplossingen  
 
programming4us programming4us