0
salut je fais une procédure stockée qui conatains un curseur ... curseur a une requête sql dynamique .. cette requête a une valeur dynamique..qui est @ industrie .. alors j'ai mis les résultats dans un temporaire table..but le problème est quand j'exécute les résultats de la procédure ne viennent pas ...curseur dynamique dans la procédure stockée
ceci est mon stroedproc dans SQLServer
ALTER PROCEDURE GETARTISTDETAIL AS
BEGIN
DECLARE @INDUSTRY VARCHAR(40)
DECLARE @ID INT
DECLARE @SQL1 VARCHAR(1000)
DECLARE @SQL VARCHAR(1000)
SET @INDUSTRY='''BollyWood'',''TollyWood'',''HollyWood'''
CREATE TABLE #TEMPTBL([NAME] VARCHAR(20),[AGE] INT ,[MAILID] VARCHAR(20))
--SET @SQL='SELECT ARTISTID FROM ARTIST WHERE INDUSTRY IN ('[email protected]+')'
DECLARE TEMPCRS CURSOR LOCAL SCROLL STATIC FOR SELECT ARTISTID FROM ARTIST WHERE INDUSTRY IN (@INDUSTRY)
--PRINT @SQL
--exec (@SQL)
OPEN TEMPCRS
FETCH NEXT FROM TEMPCRS INTO @ID
WHILE @@FETCH_STATUS=0
BEGIN
INSERT INTO #TEMPTBL SELECT [NAME],[AGE],[MAILID] FROM ARTIST WHERE [email protected]
FETCH NEXT FROM TEMPCRS INTO @ID
END
CLOSE TEMPCRS
DEALLOCATE TEMPCRS
SELECT * FROM #TEMPTBL
DROP TABLE #TEMPTBL
END
Pourquoi sur ea est-ce que tu utilises un curseur pour faire ça? Autre que l'instruction dynamique IN, il s'agit d'instructions SELECT simples. – LittleBobbyTables