Sie sind auf Seite 1von 10

Ingeniera en Sistemas de Computacin e

Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6
TTULO:
PROCEDIMIENTOS ALMACENADOS
1. OBJETIVO:

Utilizar variables e instrucciones de control de flujo para realizar operaciones sobre los datos.

Conocer y utilizar procedimientos almacenados para ejecutar una accin o conjunto de


acciones especficas en los datos cuando se cumple una condicin establecida al realizar una
operacin

2. DESARROLLO:
1. Para este laboratorio vamos a utilizar las sentencias de control de flujo SQL
a. Asignar un valor a una variable tipo VARCHAR con la instruccin SELECT:

b. Asignar un valor a una variable tipo INT con la instruccin SET:

c.

Realizacin de un bucle que se defina por una variable que imprima n valores:

Profesor: Ing. Jonathan Carrillo S.


Pgina 1 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6

2. Se va a crear una tabla que se llame Lugar y crear los siguientes procedimientos
almacenados:

a. Creacin de la tabla Lugar

b. Insertar tuplas:

c.

Actualizar datos vamos actualizar la ciudad de cuenca que anteriormente en la


imagen podemos ver su superficie es de 800 le vamos a cambiar por 850:
Profesor: Ing. Jonathan Carrillo S.
Pgina 2 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6

d. Eliminar Registros:

Profesor: Ing. Jonathan Carrillo S.


Pgina 3 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6

e. Insertar datos controlando que no se ingresen ciudades que existan en la base de


datos:

3. Crear la siguiente relacin en la base de datos Ventas con las siguiente descripciones que
se presentara en la imagen siguiente, siempre hay que tener en cuenta las restricciones de
los dominios.

Lo que primero que vams hacer es la creacin de las tablas con su respectivos atributos, y
relaciones.

Tabla producto:

Tabla pedido:

El siguiente paso que vamos hacer es insertar datos en la tabla producto:

Profesor: Ing. Jonathan Carrillo S.


Pgina 4 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6
A continuacin se va a crear un procedimiento que permita realizar un Pedido, se debera
verificar si el cdigo del producto ingresado, tambin la cantidad a pedir es mayor a la
exitencia del producto, el prodecimiento deber enviar un mensaje que contenga lo siguiente
Existencia del Producto Insuficiente. En caso que la cantidad sea menor o igual deber
modificar de la existencia.

Buscamos el pedido con el Id_Producto, con la cantidad del Pedido con el Lugar del Pedido.
Como explicamos anteriormente que la cantidad a pedir el mayor se tiene que mandar un
mensaje como podemos observar en la imagen siguiente

Y si la cantidad a pedir es menos se tiene que guardar en la tabla de datos de pedidos como
muestra en la siguiente imagen:

Profesor: Ing. Jonathan Carrillo S.


Pgina 5 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6

4. Realizar un procedimiento que nos permita realizar un programa para RealizarPedidos y que
nos desplegu los siguientes mensajes, Este programa va ser necesario utilizar sentencia de
control if:

3. CUESTIONARIO DE INVESTIGACIN:
Mediante ejemplos muestre la utilidad de la sentencias de control de flujo: IF, WHILE, BREAK;
CONTINUE, RETURN, y CASE del Transact-SQL.

If:

Profesor: Ing. Jonathan Carrillo S.


Pgina 6 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6

While

Profesor: Ing. Jonathan Carrillo S.


Pgina 7 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6

Break: produce la salida del bucle while ms interno. Se ejecuta las instrucciones que
aparecen despus de la palabra clave END, que marca el final del bucle.

Continue: hace que se reinicie el bucle while y omite las instrucciones que haya
despus de la palabra clave continue.
Return: sale incondicionalmente de una consulta o procedimiento, return es
inmediata y completa, y se puede utilizar en cualquier punto para salir de un
procedimiento, lote o bloque de instrucciones.

Case:

Profesor: Ing. Jonathan Carrillo S.


Pgina 8 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6
4. CONCLUSIONES:

Las sentencias de flujo nos ayuda a ser ordenados y a optimizar lo que deseamos buscar de
una forma ms rpida y sencilla.

Siempre hay que tener en cuenta el formato de la sentencia que se va a utilizar para no tener
errores.

Los case nos ayudan a elegir las opciones que deseemos.

Los return es un procedimiento para salir inmediatamente de una consulta y es utilizada para
salir de un procedimiento, loteo bloque.

Break sale del bucle ms interno en una instruccin while o una instruccin if.

5. BIBLIOGRAFA:

Microsoft. (2016). IF-ElSE (Transact-SQL). 02-01-2016, de Lenguaje de control de flujo Sitio


web: https://msdn.microsoft.com/es-es/library/ms182717(v=sql.120).aspx

Oracle.

(2013).

Sentencias

de

Control.

02-01-2016,

de

Sql-Pl

Sitio

web:

http://jeanmazuelos.com/es/biblioteca/cursos/oracle-plsql-basico/capitulo-4-sentencias-decontrol

6. ANEXOS:
CREATE TABLE [dbo].[Producto](
[Id_Producto] [int] IDENTITY(1,1) NOT NULL,
[DescripcionProducto] [varchar](25) NULL,
[FechaProducto] [date] NOT NULL,
[ExistenciaProducto] [int] NOT NULL,
PRIMARY KEY CLUSTERED
(
[Id_Producto] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

Profesor: Ing. Jonathan Carrillo S.


Pgina 9 de 10

Ingeniera en Sistemas de Computacin e


Informtica

BASES DE DATOS I
Michaela Salgado

Fecha de realizacin:
15 de Noviembre de
2015
Fecha de entrega:
4 de Enero de 2016

INFORME DE LABORATORIO # 6
) ON [PRIMARY]

GO
SET ANSI_PADDING OFF
GO
ALTER TABLE [dbo].[Pedido] WITH CHECK ADD FOREIGN KEY([Id_Producto])
REFERENCES [dbo].[Producto] ([Id_Producto])
GO
ALTER TABLE [dbo].[Pedido] WITH CHECK ADD CHECK (([CantidadPedido]>(0)))
GO
ALTER TABLE [dbo].[Pedido] WITH CHECK ADD CHECK (([LugarPedido]='S' OR [LugarPedido]='N'
OR [LugarPedido]='C'))
GO
ALTER TABLE [dbo].[Producto] WITH CHECK ADD CHECK (([ExistenciaProducto]>=(0)))
GO
USE [master]
GO
ALTER DATABASE [Ventas] SET READ_WRITE
GO

Profesor: Ing. Jonathan Carrillo S.


Pgina 10 de 10

Das könnte Ihnen auch gefallen