Problème de création de fonction [SQL Server 2005] - SQL/NoSQL - Programmation
Marsh Posté le 04-08-2006 à 14:03:56
En fait, je crois que tu as exactement le même problème que moi avec mon IN(@variable).
Si je trouve la solution, je le poste ici.
Marsh Posté le 04-08-2006 à 16:36:34
euh, une petite chose :
select count(...) from unetable
=> quel que soit le "...", tu auras le même résultat. donc tu n'as pas besoin de te prendre la tête avec ça, à moins de faire un "count(distinct ...)"
ensuite, tu devra passer par l'instruction "execute" pour exécuter une requête dynamique de la sorte.
Marsh Posté le 04-08-2006 à 11:54:21
Bonjour,
Je ne pariviens pas à créer ma fonction :
CREATE FUNCTION countField (@tableName VARCHAR(80), @fieldName VARCHAR(80))
RETURNS NUMERIC (18) AS
BEGIN
DECLARE @returnValue NUMERIC (18)
SELECT @returnValue = COUNT (@fieldName)
FROM @tableName
RETURN @returnValue
END
J'ai l'erreur suivante :
Server: Msg 1087, Level 15, State 2, Procedure countField, Line 7
La variable de table '@tableName' doit être déclarée.
Pourquoi SQL Server 2005 n'accepte-il pas de nom de tables en variable ? J'en ai besoin car j'aurais besoin d'ajouter dans la fonction de quoi récupérer le nom de la table au lieu de l'avoir en paramètre.
Merci d'avance...
---------------
"Colère et intolérance sont les ennemis d'une bonne compréhension." Gandhi