Je voudrais appeler une procédure stockée "mise à jour" qui n'inclura pas nécessairement toutes les colonnes. Il y a probablement une meilleure façon de gérer cela .... Comme vous pouvez le voir, si je ne passe pas dans les paramètres de la colonne, leur valeur est NULL. Puis, en utilisant l'ISNULL, j'ai mis les colonnes soit à leurs nouvelles valeurs ou leurs valeurs existantes.Que se passe-t-il lorsque je mets à jour la colonne SQL? -OU- mises à jour conditionnelles simplifiées?
CREATE PROCEDURE [dbo].[spUpdateTable]
@pPKID bigint = NULL,
@pColumn1 int = NULL,
@pColumn2 int = NULL
AS
BEGIN
SET NOCOUNT ON;
UPDATE
TableName
SET
[Column1] = ISNULL(@pColumn1,[Column1]),
[Column2] = ISNULL(@pColumn2,[Column2])
WHERE
[PKID] = @pPKID
END
Je sais ce qui se passe dans la base de données, ce que je veux dire est-ce qu'il y a des problèmes de performance ou de meilleures façons de le faire? – Matthew