Bonjour,
je cherche à faire une fonction simple permettent de me renvoyer le premier identifiant libre comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 CREATE FUNCTION NextId( @Champ nvarchar(20), @Table nvarchar(20) ) RETURNS int AS BEGIN ...
Pour ce faire je dois donc créer ma requete sql que je stocke dans une variable de type nvarchar
Mais ensuite je n'arrive pas à exploiter le résultat de cette requete qui est correcte, j'ai essayé pas mal de choses (insertion dans une table tempo, création d'une procedure stockée avec parametre de retour, utilisation de EXEC sp_executesql...) sans succès...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 DECLARE @SQL NVARCHAR(200) DECLARE @RET int SET @SQL = 'Select Min([' + @Champ + ']-1) From ' + @Table + ' As T1 Where ((([' + @Champ + ']-1)>0) And (((Select [' + @Champ + '] From ' + @Table + ' T2 Where T2.[' + @Champ + ']=T1.[' + @Champ + ']-1)) Is Null))' ...
Comment récupérer le résultat d'une requete contenue dans une variable texte et le renvoyer en retour de fonction?
Partager