Mostrando entradas con la etiqueta Procedimientos. Mostrar todas las entradas
Mostrando entradas con la etiqueta Procedimientos. Mostrar todas las entradas

viernes, 13 de mayo de 2016

Procedimientos Almacenados (INSERT, UPDATE, DELETE)

Procedimientos Almacenados (INSERT, UPDATE, DELETE)

EJEMPLO PRACTICO INSERTAR, ACTUALIZAR Y ELIMINAR CON PROCEDIMIENTOS ALMACENADOS
--CREANDO LA BASE DE DATOS

CREATE DATABASE SEPELIOS

GO

--HACIENDO USO

USE SEPELIOS

GO

--CREANDO LA TABLA

CREATE TABLE TITULARES_SEPELIOS

(CODIGO_MUDULAR VARCHAR(4),

NUMERO_SOLICITUD VARCHAR(5),

APELLIDOS VARCHAR(35),

NOMBRES VARCHAR(35),

FECHA_INS DATETIME,

FECHA_ALTA DATETIME,

[PLAN] INT,

MONTO DECIMAL)
<!--more-->
GO

--FUNCION PARA LA FECHA DE ALTA

CREATE FUNCTION FECHA_ALTA(@FECHA_INS DATETIME)

RETURNS DATETIME

BEGIN

RETURN DATEADD(MONTH,2,@FECHA_INS)

END

GO

--PROBANDO LA FUNCION

SELECT DBO.FECHA_ALTA('01/01/2010')

GO

--PROCEDIMIENTO ALMACENADO (INSERTAR)

CREATE PROCEDURE USP_TITULARES_S_INSERTAR

@CODMOD VARCHAR(4),

@NOSOLI VARCHAR(5),

@APELLI VARCHAR(35),

@NOMB VARCHAR(35),

@FECINS DATETIME,

@PLAN INT,

@PAGO DECIMAL

AS

BEGIN

INSERT INTO TITULARES_SEPELIOS

VALUES(@CODMOD, @NOSOLI,@APELLI,@NOMB,@FECINS,DBO.FECHA_ALTA(@FECINS),@PLAN,@PAGO)

END

GO

--PROCEDIMIENTO ALMACENADO (ACTUALIZAR)

CREATE PROCEDURE USP_TITULARES_S_ACTUALIZAR

@CODMODU VARCHAR(4),

@NOSOL VARCHAR(5),

@APELL VARCHAR(35),

@NOM VARCHAR(35),

@FECIN DATETIME,

@P INT,

@PAG DECIMAL

AS

BEGIN

UPDATE TITULARES_SEPELIOS

SET NUMERO_SOLICITUD = @NOSOL, APELLIDOS = @APELL,NOMBRES = @NOM,FECHA_INS = @FECIN,FECHA_ALTA = DBO.FECHA_ALTA(@FECIN),[PLAN] =@P,MONTO = @PAG

WHERE CODIGO_MUDULAR = @CODMODU

END

GO

--PROCEDIMIENTO ALMACENADO (ELIMINAR)

CREATE PROCEDURE USP_TITULARES_S_ELIMINAR

@CODIGO VARCHAR(4)

AS

DELETE FROM TITULARES_SEPELIOS

WHERE CODIGO_MUDULAR= @CODIGO

GO

--DEMOSTRACION

--INSERTAR

GO

EXECUTE USP_TITULARES_S_INSERTAR 'S001','S1','VARGAS','LUIS','01/01/2011',1,700

--ACTUALIZAR

GO

EXECUTE USP_TITULARES_S_ACTUALIZAR 'S001','S2','JORGE','LUIS','01/01/2010',2,800

--ELIMINAR

GO

EXECUTE USP_TITULARES_S_ELIMINAR 'S001'

--MOSTRANDO LA TABLA

GO

SELECT * FROM TITULARES_SEPELIOS

ENTRADAS POPULARES