Bonjour,
je chercher à créer une fonction qui me retourne le contenu de la colonne dont le nom est passée en paramètre de la fonction
A la compilation il me dit
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 CREATE FUNCTION [FN_GET_TERMES](@CODE_TERMES VARCHAR(30),@COLUMN_NAME VARCHAR(10)) RETURNS VARCHAR(50) AS BEGIN DECLARE @TERMES AS VARCHAR(50) DECLARE @sSql AS NVARCHAR(4000) DECLARE @sST AS VARCHAR(5) SET @sST='''' SET @sSql = 'SELECT @TERMES = ' + @COLUMN_NAME + + ' FROM TERMES ' + + ' WHERE CODE_TERMES = ' + @sST + @CODE_TERMES + @sST EXECUTE(@sSql) RETURN @TERMES END
N'est ce pas possible d'utiliser EXEC ou EXECUTE dans une fonction ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Serveur : Msg 443, Niveau 16, État 2, Procédure FN_GET_TERMES, Ligne 20 Utilisation incorrecte de 'EXECUTE' à l'intérieur d'une fonction.
Sinon comment puis-je faire car je voudrais utiliser cette fonction dans mes requêtes de procédure stockées (SELECT FN_GET_TERMES('SG_TOUTES',@COLNAME))
Merci par avance de votre aide
Partager