2011-08-03 2 views
0

Je me demande si c'est une bonne pratique ou non. J'ai une base de données avec quelques procédures stockées que je cours en utilisant l'application C#.Une procédure stockée renvoyant des valeurs de chaîne

Est-ce une bonne pratique de renvoyer des messages à partir de procédures stockées qui peuvent être directement affichées à l'utilisateur de l'application?

Par exemple:

CREATE PROCEDURE CheckParam 

@Param int, 
AS 
BEGIN 

IF (@Parem > 0) 
BEGIN    
    SELECT 'Parameter is greater than 0' 
END 
ELSE SELECT 'Parameter is smaller than 0' 
END 
+0

Ça me semble bien –

Répondre

2

Il serait généralement considéré comme la meilleure pratique de faire en sorte que la couche de code définisse le texte du message car cela permet aux futurs responsables du code de suivre clairement la logique prévue.

1

Il serait plus facile si vous aviez un meilleur exemple; celui que vous avez utilisé imposerait certainement un niveau de performance que je ne serais pas content!

En règle générale, les fonctions SQL conviennent mieux au renvoi de valeurs «scalaires». Je vous suggère de vous familiariser avec ceux-ci.

2

Non, ce n'est pas le cas. C'est une pratique horrible. Que faire si vous devez prendre en charge plusieurs langues ou plusieurs formats d'affichage. A côté de cela, quand le projet s'agrandit, vous commencez à être confus quand une partie de la logique de présentation réside sur BASE DE DONNEES !!! et certaines parties du côté client. Renvoyez juste les DATA de DATABASE et rien de plus.

Questions connexes