procedimientos almacenados

8
INSTITUTO TECNOLOGICO SUPERIOR DE LERDO RAFAEL A. QUINTANA HERRADA TEMA: PROCEDIMIENTOS ALMACENADOS MATERIA: TALLER DE BASES DE DATOS 21 de marzo de 2010

Upload: rafa

Post on 13-Jun-2015

12.982 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Procedimientos Almacenados

INSTITUTO TECNOLOGICO SUPERIOR DE LERDO

RAFAEL A. QUINTANA HERRADA

TEMA:

PROCEDIMIENTOS ALMACENADOS

MATERIA:

TALLER DE BASES DE DATOS

21 de marzo de 2010

Procedimientos almacenados

(Proc. 1)

Page 2: Procedimientos Almacenados

Mediante este proceso almacenado, veremos la tabla productos de nuestra base de datos ya creada en SQL, en este proceso almacenado arrojara parámetros de salida. La cual mostrara el precio_compra de la tabla anteriormente mencionada.

Una vez finalizado el procedimiento almacenado nos arrojara el precio_compra de la tabla productos.

Procedimientos almacenados

(Proc. 2)

CREATE PROCEDURE ObtenerPreciocompra @Nombre nchar (20),@precio_compra nchar (10) Output AS BEGINSELECT @Nombre = NOMBREFROM Productos WHERE PREC_COMPRA = @precio_compra

END

DECLARE @precio_compra nchar (10) EXEC ObtenerPreciocompra '200700000001', @saldo output PRINT @precio_compra

Page 3: Procedimientos Almacenados

El siguiente ejemplo muestra un procedimiento almacenado que devuelve valores. Utilizando la instrucción return.

En esta ocacion utilizaremos la tabla facturas de la base de datos negocio de SQL.

Posteriormente mente mostraremos el resultado de las anteriores codigos

Procedimientos almacenados

(Proc. 3)

Mediante este procedimiento almacenado insertaremos un registro en la tabla clientes, el nombre del procedimiento lo llamaremos agregarregistro.

CREATE PROCEDURE regresarfactura @fecha varchar (20) AS BEGIN IF (SELECT id_venta FROM FACTURAS WHERE fecha = @fecha) =’marzo’ BEGIN RETURN 1 END ELSE RETURN 0

END

DECLARE @valor int EXEC @valor = regresarfactura 'tr01' PRINT @valor

create procedure agregarregistro @id_prod nchar(10),@Nombre nchar(19),@precio_vta nchar(10),@precio_compra,@Descripcion nchar(10),@id_prov nchar(10),stock nchar(10),@foto nchar(10),@redes nchar(20)

AS INSERT INTO CLIENTES

(id_prod,Nombre,precio_vta,precio_compra,Descripcion,id_prov,stock,foto,redes) values

(@id_prod,@Nombre,@precio_vta,@precio_compra,@Descripcion,@id_prov,@stock,@foto,@redes)

Page 4: Procedimientos Almacenados

El siguiente ejemplo muestra la ejecución del procedimiento almacenado anterior.

Procedimientos almacenados

(Proc. 4)

Mediante este proceso almacenado, veremos la tabla Garantías de nuestra base de datos ya creada en SQL, en este proceso almacenado arrojara parámetros de salida. La cual mostrara el Folio_garantia de la tabla anteriormente mencionada.

EXEC agregacliente 'Rafael', 'Quintana', 'Herrada'

CREATE PROCEDURE Obtenerfolio @folio_gar nchar (20),@Folio_fact nchar (10) Output AS BEGINSELECT @Folio_gar = Folio_garantiaFROM Garantias WHERE FOLIOFACT = @folio_fact

END

Page 5: Procedimientos Almacenados

Una vez finalizado el procedimiento almacenado nos arrojara el precio_compra de la tabla productos.

Procedimientos almacenados

(Proc. 5)

El siguiente ejemplo muestra un procedimiento almacenado que devuelve valores. Utilizando la instrucción return.

En esta ocacion utilizaremos la tabla ventas de la base de datos negocio de SQL.

DECLARE @Folio_garantia nchar (10) EXEC Obtenerfolio 'g123', @folio_fact output PRINT @folio_fact

CREATE PROCEDURE regresarventa @fecha varchar (20) AS BEGIN IF (SELECT id_venta FROM VENTAS WHERE total = @total) <=1000 RETURN 1 END ELSE RETURN 0

END

Page 6: Procedimientos Almacenados

En seguida se mostrara el resultado del anterior codigo

Procedimientos almacenados

(Proc. 6)

Mediante este procedimiento almacenado insertaremos un registro en la tabla ventas, el nombre del procedimiento lo llamaremos agregarregistro.

DECLARE @datos int EXEC @datos = regresarventa 'tr01' PRINT @datos

create procedure agregarregistro @id_venta nchar(10),@fecha nchar(19),@cantidad nchar(10),@id_prod,@id_cte nchar(10),@total

AS INSERT INTO VENTAS

(id_venta,fecha,cantidad,id_prod,id_cte,total) values

(@id_venta,@fecha,@cantidad,@id_prod,@id_cte,@total)

Page 7: Procedimientos Almacenados

El siguiente ejemplo muestra la ejecución del procedimiento almacenado anterior.

EXEC agregaregistro 'Beatriz', 'Gurrola', 'Garcia'