Código:
ALTERPROCEDURE [dbo].[SP_CARGA_DE_DATOS_EN_DEPCIA]
@id int,
@dpcia varchar(255) --SI ACA INSERTO UN VALOR, POR EJEMPLO
-- @dpcia varchar(255) = xxxxx SE CARGA EL
--VALOR xxxx PERO COMO UN STRING, NO xxxx
--COMO xxxx QUE ES EL NOMBRE DE UN CAMPO DE
--UNA DE LA TABLA QUE QUIERO QUE MANTENGA EL
--VALOR
@area varchar(16),
@division varchar(70),
@dpto varchar(60),
AS
UPDATE DEPENDENCIAS
SET
DEPENDENCIA = isnull(@dpcia,Dependencia),
AREA_CORRESPONDIENTE = isnull(@area,AREA_CORRESPONDIENTE),
DIVISION = isnull(@division,DIVISION),
DEPARTAMENTO = isnull(@dpto,DEPARTAMENTO),
WHERE Id_Cod_Dpcia = @id
De esta forma, si no tienes a tu disposicion todos los campos de la tabla, envialos en nulo y cuando sea nulo el parametro enviado, se tomaria el valor que esta en la base de datos, es decir, solo se actualizarian aquellos campos cuyos parametros sean diferente de nulo...
Espero te sirva, saludos!..