1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
-------------------- insertion des enregistrement dinamique
--- 1er cureseur des etudiant
DECLARE id_cursor CURSOR FOR
select distinct etu.id_etudiant ,count(id_e)
FROM mes_tables
group by etu.id_etudiant
OPEN id_cursor
FETCH NEXT FROM id_cursor INTO @id_etudiant,@nbr_evaluation
WHILE @@FETCH_STATUS = 0
BEGIN
set @i=1
set @requette1='update RETOUR set '
--- 2eme cureseur des evalutaion
DECLARE e_cursor CURSOR FOR
select distinct e.id_evalutaion,evalutaion.matierer,evalutaion.Note
mes_tables
where etu.id_etudiant=@id_etudiant
OPEN e_cursor
FETCH NEXT FROM ea_cursor INTO @id_evaluation,@matiere,@note
WHILE @@FETCH_STATUS = 0
BEGIN
--Update des données Dynamique
set @requette1=@requette1+'matiere'+convert(varchar,@i)+' = ' + isnull(dbo.quotestring(@entreprise),'''''''''')+',note'+convert(varchar,@i)+' = '+isnull(dbo.quotestring(@service),'''''''''')','
set @i=@i+1
FETCH NEXT FROM ea_cursor INTO @id_evaluation,@matiere,@note
end
CLOSE ea_cursor
DEALLOCATE e_cursor
set @requette1=SUBSTRING(@requette1,1,LEN(@requette1)-1) + ' where id_etudiant = ' + convert(varchar,@id_etudiant)
exec(@requette1)
FETCH NEXT FROM id_cursor INTO @id_etudiant,@nbr_ea
END
CLOSE id_cursor
DEALLOCATE id_cursor |
Partager