Dans une proc=E9dure stock=E9e, je construit une cha=EEne SQL de=20
fa=E7on dynamique, la condition WHERE pouvant porter sur un=20
=E0 n crit=E8res :
SET @SQLString =3D 'SELECT * FROM TBLVARIETE' + @WHERE + '=20
ORDER BY CODEESPECE, NUMCLONE'
Ma question : comment utiliser cette cha=EEne pour cr=E9er un=20
curseur ?=20
SET @fiche_cursor =3D CURSOR LOCAL SCROLL STATIC SCROLL_LOCKS
FOR=20
SELECT...
OPEN @fiche_cursor
En vous remer=E7iant d'avance pour toute piste de recherche
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
nicogtturbo2
la solution, c'est de mettre ton curseur dans une variable sous forme d'une chaine de caractere, comme pour ta requete. et de l'executer a la fin. ca devrais te donner un truc de ce genre la :
SET @SQLString = 'SELECT * FROM TBLVARIETE' + @WHERE + ' ORDER BY CODEESPECE, NUMCLONE'
set @mon_cursor = ' declare @fiche_cursor cursor for ' + @SQLString + ' OPEN @fiche_cursor ......'
exec(@mon_cursor)
A+
-----Message d'origine----- Dans une procédure stockée, je construit une chaîne SQL
de
façon dynamique, la condition WHERE pouvant porter sur un à n critères : SET @SQLString = 'SELECT * FROM TBLVARIETE' + @WHERE + ' ORDER BY CODEESPECE, NUMCLONE' Ma question : comment utiliser cette chaîne pour créer un curseur ? SET @fiche_cursor = CURSOR LOCAL SCROLL STATIC
SCROLL_LOCKS
FOR SELECT... OPEN @fiche_cursor
En vous remerçiant d'avance pour toute piste de recherche .
la solution, c'est de mettre ton curseur dans une variable
sous forme d'une chaine de caractere, comme pour ta
requete. et de l'executer a la fin.
ca devrais te donner un truc de ce genre la :
SET @SQLString = 'SELECT * FROM TBLVARIETE' + @WHERE + '
ORDER BY CODEESPECE, NUMCLONE'
set @mon_cursor = '
declare @fiche_cursor cursor
for ' + @SQLString + '
OPEN @fiche_cursor
......'
exec(@mon_cursor)
A+
-----Message d'origine-----
Dans une procédure stockée, je construit une chaîne SQL
de
façon dynamique, la condition WHERE pouvant porter sur un
à n critères :
SET @SQLString = 'SELECT * FROM TBLVARIETE' + @WHERE + '
ORDER BY CODEESPECE, NUMCLONE'
Ma question : comment utiliser cette chaîne pour créer un
curseur ?
SET @fiche_cursor = CURSOR LOCAL SCROLL STATIC
SCROLL_LOCKS
FOR
SELECT...
OPEN @fiche_cursor
En vous remerçiant d'avance pour toute piste de recherche
.
la solution, c'est de mettre ton curseur dans une variable sous forme d'une chaine de caractere, comme pour ta requete. et de l'executer a la fin. ca devrais te donner un truc de ce genre la :
SET @SQLString = 'SELECT * FROM TBLVARIETE' + @WHERE + ' ORDER BY CODEESPECE, NUMCLONE'
set @mon_cursor = ' declare @fiche_cursor cursor for ' + @SQLString + ' OPEN @fiche_cursor ......'
exec(@mon_cursor)
A+
-----Message d'origine----- Dans une procédure stockée, je construit une chaîne SQL
de
façon dynamique, la condition WHERE pouvant porter sur un à n critères : SET @SQLString = 'SELECT * FROM TBLVARIETE' + @WHERE + ' ORDER BY CODEESPECE, NUMCLONE' Ma question : comment utiliser cette chaîne pour créer un curseur ? SET @fiche_cursor = CURSOR LOCAL SCROLL STATIC
SCROLL_LOCKS
FOR SELECT... OPEN @fiche_cursor
En vous remerçiant d'avance pour toute piste de recherche .