0% encontró este documento útil (0 votos)
32 vistas1 página

Procedimientos SQL para Trabajadores

El documento contiene instrucciones SQL para modificar la tabla 'TRABAJADOR', añadiendo una nueva columna de versión y definiendo dos procedimientos almacenados: 'AYUDA_TRABAJADOR', que busca trabajadores por nombre o apellidos, y 'ACTUALIZA_TRABAJADOR', que actualiza los datos de un trabajador si su versión no ha cambiado. Se implementa un control de concurrencia en 'ACTUALIZA_TRABAJADOR' para evitar modificaciones conflictivas. Las operaciones están en el contexto de la base de datos 'FINAL_TAD_2021_2'.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
32 vistas1 página

Procedimientos SQL para Trabajadores

El documento contiene instrucciones SQL para modificar la tabla 'TRABAJADOR', añadiendo una nueva columna de versión y definiendo dos procedimientos almacenados: 'AYUDA_TRABAJADOR', que busca trabajadores por nombre o apellidos, y 'ACTUALIZA_TRABAJADOR', que actualiza los datos de un trabajador si su versión no ha cambiado. Se implementa un control de concurrencia en 'ACTUALIZA_TRABAJADOR' para evitar modificaciones conflictivas. Las operaciones están en el contexto de la base de datos 'FINAL_TAD_2021_2'.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd

USE [FINAL_TAD_2021_2]

GO

ALTER TABLE TRABAJADOR


ADD TRAB_VERSION timestamp;

USE [FINAL_TAD_2021_2]
GO
/****** Object: StoredProcedure [dbo].[AYUDA_TRABAJADOR] Script Date:
17/12/2021 09:03:14 p.m. ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[AYUDA_TRABAJADOR]
@TRAB_APE_NOM VARCHAR(MAX)
AS
BEGIN
SELECT TRAB_ID, TRAB_DNI, TRAB_APE_PATERNO, TRAB_APE_MATERNO, TRAB_NOMBRE,
TRAB_VERSION
FROM TRABAJADOR
WHERE TRAB_APE_PATERNO LIKE '%' + @TRAB_APE_NOM + '%'
OR TRAB_APE_MATERNO LIKE '%' + @TRAB_APE_NOM + '%'
OR TRAB_NOMBRE LIKE '%' + @TRAB_APE_NOM + '%'
END

USE [FINAL_TAD_2021_2]
GO
/****** Object: StoredProcedure [dbo].[ACTUALIZA_TRABAJADOR] Script Date:
17/12/2021 09:15:24 p.m. ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[ACTUALIZA_TRABAJADOR]
@TRAB_ID int,
@TRAB_DNI varchar(10),
@TRAB_APE_PATERNO varchar(50),
@TRAB_APE_MATERNO varchar(50),
@TRAB_NOMBRE varchar(50),
@TRAB_VERSION timestamp
AS
BEGIN
IF @TRAB_VERSION = (SELECT TRAB_VERSION FROM TRABAJADOR WHERE TRAB_ID =
@TRAB_ID)
BEGIN
UPDATE TRABAJADOR
SET
TRAB_DNI = @TRAB_DNI,
TRAB_APE_PATERNO = @TRAB_APE_PATERNO,
TRAB_APE_MATERNO = @TRAB_APE_MATERNO,
TRAB_NOMBRE = @TRAB_NOMBRE
WHERE TRAB_ID = @TRAB_ID
END
ELSE
BEGIN
RAISERROR('EL REGISTRO FUE MODIFICADO POR OTRA PERSONA...',16,1)
END
END

También podría gustarte