Bonjour je suis un peu bloqué quelqu'un aurait une idée de syntaxe pour une fonction qui échange les lignes d'une table quelconque???


avant


nom salaire
julien 454545
henry 121212
cedrick 1212121
franck 44521321
louis 445454
didier 1454545
nico 8778987

de telle facon qu'on ait julien a la place de nico.on echange les lignes i et j de la table de taille n

nom salaire

nico 8778987
henry 121212
cedrick 1212121
franck 44521321
louis 445454
didier 1454545
julien 454545


bien le prototype sql dynamique serait

Code : Sélectionner tout - Visualiser dans une fenêtre à part
create procedure(@nom_table varchar(200),@ligne_i,@ligne_j)............
de plus pour numéroter les lignes jai penser à row number qui donne


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
CREATE    Procedure Donne_row_id(@NOM_TABLE VARCHAR(200))
as 
declare @req as Varchar(8000) --variable de stockage
set @req='select *, ROW_NUMBER() OVER  (order by (select 1))  as RowNumber    from ' + @NOM_TABLE    
 
--on cree la colonne row    number numerote les ligne de la table suivant les 
 
 exec(@req)



nom salaire rowNumber

nico 8778987 1
henry 121212 2
cedrick 1212121 3
franck 44521321 4
louis 445454 5
didier 1454545 6
julien 454545 7