100% encontró este documento útil (1 voto)
120 vistas

S11 - Entity Framework - SQL Server

Este documento presenta una guía de laboratorio sobre Entity Framework y SQL Server. Explica que se utilizará una base de datos de ejemplo llamada BD_LATAM, la cual contiene tablas relacionadas para modelar vuelos, pasajeros, asientos de avión y tarifas. Luego, describe cómo crear esta base de datos en SQL Server y definir las tablas y relaciones mediante scripts SQL. Finalmente, indica que se aprenderá a conectarse a esta base de datos desde Visual Studio.
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
100% encontró este documento útil (1 voto)
120 vistas

S11 - Entity Framework - SQL Server

Este documento presenta una guía de laboratorio sobre Entity Framework y SQL Server. Explica que se utilizará una base de datos de ejemplo llamada BD_LATAM, la cual contiene tablas relacionadas para modelar vuelos, pasajeros, asientos de avión y tarifas. Luego, describe cómo crear esta base de datos en SQL Server y definir las tablas y relaciones mediante scripts SQL. Finalmente, indica que se aprenderá a conectarse a esta base de datos desde Visual Studio.
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 24

Guía de Laboratorio

Herramientas de Programación 1 – Entity framework – SQL Server


……….1
______________________________________________________________________
______________________

Herramientas de Programación 1
SQL SERVER ENTITY FRAMEWORK

Semana 11

OBJETIVO DEL LABORATORIO


 Reconoce las ventajas de implementar aplicaciones con ORM utilizando Entity Framework como tecnología de
accesos a información en una base de datos.

MARCO TEÓRICO
BASE DE DATOS DE EJEMPLO
Nuestra Base de Datos de ejemplo implementa la funcionalidad de venta de pasajes aéreos.
El nombre de la BD es: BD_LATAM.
Trabajaremos con esta BD durante las semanas 11, 12 y 13.

Diagrama de la BD_LATAM:

Antes de definir Entity Framework revisaremos sus orígenes, esto es, entender el concepto ORM (Mapeo de Objetos
Relacionales).

ORM
Cuando se tiene una aplicación compleja se necesita de una BD, esta permitirá organizar los datos en tablas relacionadas
entre sí con campos ya predefinidos en cada una de ellas. Los gestores que manejas este tipo de base de datos pueden ser
SQL Server, Oracle entre otros.
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….2
______________________________________________________________________
______________________
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….3
______________________________________________________________________
______________________
El Modelo son un conjunto de Clases que nos trae la estructura relacional de cata tabla perteneciente a la BD, por ejemplo,
una determinada Clase representa una tabla en específico donde los campos de esta pasan a ser las propiedades de la Clase.
El Modelo se encargara de generar todo el script SQL necesario para comunicarse con la BD simplificando las tareas
básicas de acceso de datos para el programador.

El Modelo se encargará de generar todo el script SQL necesario para comunicarse con la BD simplificando las tareas
básicas de acceso de datos para el programador.
El resto de la aplicación nunca tendrá acceso a la BD si no es a través del Modelo, en otras palabras, si la aplicación quiere
acceder y operar sobre la BD (consultar, crear, modificar y eliminar datos) lo hará a través del Modelo. Y esta es la ventaja
debido a que el Modelo estará escrito en el mismo lenguaje de programación que toda la aplicación (en nuestro caso C#).

ENTITY FRAMEWORK
Entendido todo lo anterior Entity Framework es un ORM que nos permite generar el Modelo, ventajas:
 Facilidad y velocidad de uso.
 Absorción de las BD usadas.
 Seguridad de la capa a acceso a datos contra ataques.
Desventajas:
En entornos con gran carga de información, por agregar una capa más en el proceso, puede mermar en el rendimiento.

RECURSOS
a. Hardware
 Una computadora con 4 GB e RAM y procesador de 2.0 GHz.
b. Software
 Visual Studio Professional 2015 / 2017
 SQL Server 2014 / 2017
En los ejemplos se utilizó la versión Express 2014, puede usar las versiones comerciales o la Developer.
 SQL Server Management Studio (SSMS)
Es la herramienta cliente más usada para gestionar las BD de SQL Server.
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….4
______________________________________________________________________
______________________
PROCEDIMIENTO

Laboratorio 11:

11.1 SQL Server.

Objetivos
 Crear Base de Datos de ejemplo en SQL Server.
 Hacer consultas básicas DML.

Introducción:
 Durante esta actividad, vamos a dar una rápida revisión a SQL Server, esto es:
o Crear la BD de ejemplo: BD_LATAM.
o Comprender la estructura y relaciones entre las tablas de la BD_LATAM.
o Revisar los procedimientos almacenados de la BD_LATAM.
 Desde Visual Studio aprenderemos a crear una conexión a la BD_LATAM.

Paso 1. Crear la Base de Datos BD_LATAM.

a. Abrimos SSMS.
b. Hacemos click derecho en la carpeta “Databases” y seleccionamos la opción “New Database…”
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….5
______________________________________________________________________
______________________
c. En la pantalla saliente ingresamos el nombre “BD_LATAM” y presionamos en el botón “OK”.

d. Validamos que se ha creado la BD_LATAM. Es una BD sin tablas, para crear las tablas vamos ejecutar un script
sql, para ello primero presionamos la opción “New Query”
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….6
______________________________________________________________________
______________________

e. Copiamos el siguiente script (DDL):


USE [BD_LATAM]
GO
/****** Object: Table [dbo].[AsientoAvion] Script Date: 24/08/2019 12:17:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[AsientoAvion](
[Id] [int] IDENTITY(1,1) NOT NULL,
[IdAvion] [int] NULL,
[Nombre] [nvarchar](10) NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_AsientoAvion] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Avion] Script Date: 24/08/2019 12:17:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Avion](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Modelo] [nvarchar](50) NULL,
[Matricula] [nvarchar](50) NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_Avion] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Ciudad] Script Date: 24/08/2019 12:17:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Ciudad](
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….7
______________________________________________________________________
______________________
[Id] [int] IDENTITY(1,1) NOT NULL,
[Nombre] [nvarchar](50) NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_Ciudad] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Pasaje] Script Date: 24/08/2019 12:17:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Pasaje](
[Id] [int] IDENTITY(1,1) NOT NULL,
[IdVuelo] [int] NULL,
[IdPasajero] [int] NULL,
[IdAsientoAvion] [int] NULL,
[Estado] [nvarchar](10) NULL,
CONSTRAINT [PK_Pasaje] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Pasajero] Script Date: 24/08/2019 12:17:24 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Pasajero](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Nombres] [nvarchar](50) NULL,
[ApellidoPaterno] [nvarchar](50) NULL,
[ApellidoMaterno] [nvarchar](50) NULL,
[Dni] [nvarchar](10) NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_Pasajero] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Tarifa] Script Date: 24/08/2019 12:17:25 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Tarifa](
[Id] [int] IDENTITY(1,1) NOT NULL,
[IdCiudadOrigen] [int] NULL,
[IdCiudadDestino] [int] NULL,
[IdTipoServicio] [int] NULL,
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….8
______________________________________________________________________
______________________
[Precio] [decimal](10, 2) NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_Tarifa] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[TipoServicio] Script Date: 24/08/2019 12:17:25 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[TipoServicio](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Nombre] [nvarchar](50) NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_TipoServicio] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Vuelo] Script Date: 24/08/2019 12:17:25 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Vuelo](
[Id] [int] IDENTITY(1,1) NOT NULL,
[IdTarifa] [int] NULL,
[Fecha] [nvarchar](10) NULL,
[Hora] [nvarchar](10) NULL,
[IdAvion] [int] NULL,
[Activo] [bit] NULL,
CONSTRAINT [PK_Vuelo] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[AsientoAvion] WITH CHECK ADD CONSTRAINT [FK_AsientoAvion_Avion] FOREIGN
KEY([IdAvion])
REFERENCES [dbo].[Avion] ([Id])
GO
ALTER TABLE [dbo].[AsientoAvion] CHECK CONSTRAINT [FK_AsientoAvion_Avion]
GO
ALTER TABLE [dbo].[Pasaje] WITH CHECK ADD CONSTRAINT [FK_Pasaje_AsientoAvion] FOREIGN
KEY([IdAsientoAvion])
REFERENCES [dbo].[AsientoAvion] ([Id])
GO
ALTER TABLE [dbo].[Pasaje] CHECK CONSTRAINT [FK_Pasaje_AsientoAvion]
GO
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….9
______________________________________________________________________
______________________
ALTER TABLE [dbo].[Pasaje] WITH CHECK ADD CONSTRAINT [FK_Pasaje_Pasajero1] FOREIGN
KEY([IdPasajero])
REFERENCES [dbo].[Pasajero] ([Id])
GO
ALTER TABLE [dbo].[Pasaje] CHECK CONSTRAINT [FK_Pasaje_Pasajero1]
GO
ALTER TABLE [dbo].[Pasaje] WITH CHECK ADD CONSTRAINT [FK_Pasaje_Vuelo] FOREIGN KEY([IdVuelo])
REFERENCES [dbo].[Vuelo] ([Id])
GO
ALTER TABLE [dbo].[Pasaje] CHECK CONSTRAINT [FK_Pasaje_Vuelo]
GO
ALTER TABLE [dbo].[Tarifa] WITH CHECK ADD CONSTRAINT [FK_Tarifa_Ciudad] FOREIGN
KEY([IdCiudadOrigen])
REFERENCES [dbo].[Ciudad] ([Id])
GO
ALTER TABLE [dbo].[Tarifa] CHECK CONSTRAINT [FK_Tarifa_Ciudad]
GO
ALTER TABLE [dbo].[Tarifa] WITH CHECK ADD CONSTRAINT [FK_Tarifa_Ciudad1] FOREIGN
KEY([IdCiudadDestino])
REFERENCES [dbo].[Ciudad] ([Id])
GO
ALTER TABLE [dbo].[Tarifa] CHECK CONSTRAINT [FK_Tarifa_Ciudad1]
GO
ALTER TABLE [dbo].[Tarifa] WITH CHECK ADD CONSTRAINT [FK_Tarifa_TipoServicio] FOREIGN
KEY([IdTipoServicio])
REFERENCES [dbo].[TipoServicio] ([Id])
GO
ALTER TABLE [dbo].[Tarifa] CHECK CONSTRAINT [FK_Tarifa_TipoServicio]
GO
ALTER TABLE [dbo].[Vuelo] WITH CHECK ADD CONSTRAINT [FK_Vuelo_Avion] FOREIGN KEY([IdAvion])
REFERENCES [dbo].[Avion] ([Id])
GO
ALTER TABLE [dbo].[Vuelo] CHECK CONSTRAINT [FK_Vuelo_Avion]
GO
ALTER TABLE [dbo].[Vuelo] WITH CHECK ADD CONSTRAINT [FK_Vuelo_Tarifa] FOREIGN KEY([IdTarifa])
REFERENCES [dbo].[Tarifa] ([Id])
GO
ALTER TABLE [dbo].[Vuelo] CHECK CONSTRAINT [FK_Vuelo_Tarifa]
GO

f. Ahora presionamos en la opción “Execute”


Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….10
______________________________________________________________________
______________________
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….11
______________________________________________________________________
______________________
g. Validamos que el script se ha ejecutado correctamente:

h. Hasta este instante hemos creado las tablas y sus relaciones, sin embargo no almacena ninguna información, la
ejecución del siguiente script (DML) nos facilitara la carga inicial de datos:
USE [BD_LATAM]
GO
SET IDENTITY_INSERT [dbo].[Avion] ON
GO
INSERT [dbo].[Avion] ([Id], [Modelo], [Matricula], [Activo]) VALUES (1, N'AIRBUS A300', NULL, 0)
GO
INSERT [dbo].[Avion] ([Id], [Modelo], [Matricula], [Activo]) VALUES (2, N'BOEING 737', NULL, 1)
GO
INSERT [dbo].[Avion] ([Id], [Modelo], [Matricula], [Activo]) VALUES (3, N'AIRBUS A340', NULL, 1)
GO
INSERT [dbo].[Avion] ([Id], [Modelo], [Matricula], [Activo]) VALUES (4, N'AIRBUS A350', NULL, 1)
GO
INSERT [dbo].[Avion] ([Id], [Modelo], [Matricula], [Activo]) VALUES (5, N'BOEING 747', NULL, 1)
GO
SET IDENTITY_INSERT [dbo].[Avion] OFF
GO
SET IDENTITY_INSERT [dbo].[AsientoAvion] ON
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (1, 1, N'A1', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (2, 1, N'A2', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (3, 1, N'A3', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (4, 2, N'B1', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (5, 2, N'B2', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (6, 2, N'B3', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (7, 3, N'C1', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (8, 3, N'C2', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (9, 3, N'C3', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (10, 4, N'D1', 1)
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….12
______________________________________________________________________
______________________
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (11, 4, N'D2', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (12, 4, N'D3', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (13, 5, N'E1', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (14, 5, N'E2', 1)
GO
INSERT [dbo].[AsientoAvion] ([Id], [IdAvion], [Nombre], [Activo]) VALUES (15, 5, N'E3', 1)
GO
SET IDENTITY_INSERT [dbo].[AsientoAvion] OFF
GO
SET IDENTITY_INSERT [dbo].[Pasajero] ON
GO
INSERT [dbo].[Pasajero] ([Id], [Nombres], [ApellidoPaterno], [ApellidoMaterno], [Dni], [Activo]) VALUES (1, N'JUAN',
N'PEREZ', N'PINO', N'01020304', 1)
GO
INSERT [dbo].[Pasajero] ([Id], [Nombres], [ApellidoPaterno], [ApellidoMaterno], [Dni], [Activo]) VALUES (2,
N'ISABEL', N'RODRIGUEZ', N'LOZANO', N'16164789', 1)
GO
INSERT [dbo].[Pasajero] ([Id], [Nombres], [ApellidoPaterno], [ApellidoMaterno], [Dni], [Activo]) VALUES (3,
N'LUCY', N'MATIAS', N'POVIS', N'88750102', 1)
GO
INSERT [dbo].[Pasajero] ([Id], [Nombres], [ApellidoPaterno], [ApellidoMaterno], [Dni], [Activo]) VALUES (4,
N'PEDRO', N'VARGAS', N'JARAMILLO', N'56551487', 1)
GO
SET IDENTITY_INSERT [dbo].[Pasajero] OFF
GO
SET IDENTITY_INSERT [dbo].[Ciudad] ON
GO
INSERT [dbo].[Ciudad] ([Id], [Nombre], [Activo]) VALUES (1, N'LIMA', 1)
GO
INSERT [dbo].[Ciudad] ([Id], [Nombre], [Activo]) VALUES (2, N'CUZCO', 1)
GO
INSERT [dbo].[Ciudad] ([Id], [Nombre], [Activo]) VALUES (3, N'TRUJILLO', 1)
GO
INSERT [dbo].[Ciudad] ([Id], [Nombre], [Activo]) VALUES (4, N'IQUITOS', 1)
GO
INSERT [dbo].[Ciudad] ([Id], [Nombre], [Activo]) VALUES (5, N'AREQUIPA', 1)
GO
INSERT [dbo].[Ciudad] ([Id], [Nombre], [Activo]) VALUES (6, N'TACNA', 0)
GO
SET IDENTITY_INSERT [dbo].[Ciudad] OFF
GO
SET IDENTITY_INSERT [dbo].[TipoServicio] ON
GO
INSERT [dbo].[TipoServicio] ([Id], [Nombre], [Activo]) VALUES (1, N'VIP', 1)
GO
INSERT [dbo].[TipoServicio] ([Id], [Nombre], [Activo]) VALUES (2, N'ECONOMICO', 1)
GO
INSERT [dbo].[TipoServicio] ([Id], [Nombre], [Activo]) VALUES (3, N'TURISTA', 1)
GO
INSERT [dbo].[TipoServicio] ([Id], [Nombre], [Activo]) VALUES (4, N'INVITADO', 0)
GO
SET IDENTITY_INSERT [dbo].[TipoServicio] OFF
GO
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….13
______________________________________________________________________
______________________
SET IDENTITY_INSERT [dbo].[Tarifa] ON
GO
INSERT [dbo].[Tarifa] ([Id], [IdCiudadOrigen], [IdCiudadDestino], [IdTipoServicio], [Precio], [Activo]) VALUES (1, 1,
2, 1, CAST(300.00 AS Decimal(10, 2)), 1)
GO
INSERT [dbo].[Tarifa] ([Id], [IdCiudadOrigen], [IdCiudadDestino], [IdTipoServicio], [Precio], [Activo]) VALUES (2, 1,
2, 2, CAST(200.00 AS Decimal(10, 2)), 1)
GO
INSERT [dbo].[Tarifa] ([Id], [IdCiudadOrigen], [IdCiudadDestino], [IdTipoServicio], [Precio], [Activo]) VALUES (3, 1,
2, 3, CAST(250.00 AS Decimal(10, 2)), 1)
GO
INSERT [dbo].[Tarifa] ([Id], [IdCiudadOrigen], [IdCiudadDestino], [IdTipoServicio], [Precio], [Activo]) VALUES (4, 2,
1, 1, CAST(305.00 AS Decimal(10, 2)), 1)
GO
INSERT [dbo].[Tarifa] ([Id], [IdCiudadOrigen], [IdCiudadDestino], [IdTipoServicio], [Precio], [Activo]) VALUES (5, 2,
1, 2, CAST(205.00 AS Decimal(10, 2)), 1)
GO
INSERT [dbo].[Tarifa] ([Id], [IdCiudadOrigen], [IdCiudadDestino], [IdTipoServicio], [Precio], [Activo]) VALUES (6, 2,
1, 3, CAST(255.00 AS Decimal(10, 2)), 1)
GO
SET IDENTITY_INSERT [dbo].[Tarifa] OFF
GO
SET IDENTITY_INSERT [dbo].[Vuelo] ON
GO
INSERT [dbo].[Vuelo] ([Id], [IdTarifa], [Fecha], [Hora], [IdAvion], [Activo]) VALUES (1, 1, N'30-10-2019', N'18:30', 1,
1)
GO
INSERT [dbo].[Vuelo] ([Id], [IdTarifa], [Fecha], [Hora], [IdAvion], [Activo]) VALUES (2, 5, N'01-11-2019', N'05:00', 5,
1)
GO
INSERT [dbo].[Vuelo] ([Id], [IdTarifa], [Fecha], [Hora], [IdAvion], [Activo]) VALUES (3, 2, N'28-10-2019', N'00:00', 2,
1)
GO
INSERT [dbo].[Vuelo] ([Id], [IdTarifa], [Fecha], [Hora], [IdAvion], [Activo]) VALUES (4, 1, N'27-11-2019', N'12:00', 3,
1)
GO
INSERT [dbo].[Vuelo] ([Id], [IdTarifa], [Fecha], [Hora], [IdAvion], [Activo]) VALUES (5, 3, N'26-10-2019', N'23:45', 4,
1)
GO
SET IDENTITY_INSERT [dbo].[Vuelo] OFF
GO
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….14
______________________________________________________________________
______________________
i. Validamos que el script se ha ejecutado correctamente (no debe existir ningún mensaje de error):

j. Realizamos algunas consultas para validar la existencia de datos, por ejemplo, para ver que Tarifas tenemos
registrado en la BD ejecutamos:
SELECT T.Id, T.IdCiudadOrigen, C1.Nombre AS 'Origen',
T.IdCiudadDestino, C2.Nombre AS 'Destino',
T.IdTipoServicio, TS.Nombre, T.Precio, IIF(T.Activo > 0, 'SI', 'NO') AS 'Activo'
FROM Tarifa T
INNER JOIN Ciudad C1 ON T.IdCiudadOrigen = C1.Id
INNER JOIN Ciudad C2 ON T.IdCiudadDestino = C2.Id
INNER JOIN TipoServicio TS ON T.IdTipoServicio = TS.id;

k. Debemos obtener:

11.2 Entity Framework en Visual Studio.

Objetivos
 Instalar Entity Framework en Visual Studio.

Introducción:
 Durante esta actividad, vamos a dar validar si ya tenemos instalado Entity Framework, si no lo tenemos instalado
pasamos a instalarlo.
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….15
______________________________________________________________________
______________________
Paso 1. Validar si tenemos instalado Entity Framework.

a. Abrimos Visual Studio.


b. Creamos el proyecto Semana11.
c. Seleccionamos la opción “Administrar paquetes Nuget para la solución…”

d. En la pestaña Instalado, dentro del cuadro de texto de búsqueda ponemos “Entity Framework” y presionamos la
tecla Enter, si se muestra el mensaje que indica que no está instalado pasaremos a instalarlo.
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….16
______________________________________________________________________
______________________
Paso 2. Instalar Entity Framework.

a. Seleccionamos la pestaña “Examina”, dentro del cuadro de texto de búsqueda ponemos “Entity Framework” y
presionamos la tecla Enter.
b. De la lista de paquetes encontrados seleccionamos el primero “EntityFramework”:

c. Hacemos check en la casilla “Semana11”, verificamos que la versión sea la reciente más estable y presionamos el
botón “Instalar”.

d. En el formulario que se muestra presionamos el botón “Aceptar”.


Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….17
______________________________________________________________________
______________________
e. En el formulario que se muestra presionamos el botón “Aceptar”.

f. Validamos que el paquete de Entity Framework se ha instalado correctamente:

11.3 Orígenes de datos en Visual Studio.

Objetivos
 Crear en Visual Studio un origen de datos a una BD SQL Server.

Introducción:
 Durante esta actividad, vamos aprender a crear una conexión a una BD SQL Server.
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….18
______________________________________________________________________
______________________
Paso 1. Crear una conexión a la BD BD_LATAM.

a. En un lugar vacío de la franja izquierda hacemos click derecho y seleccionamos la opción “Orígenes de Datos”
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….19
______________________________________________________________________
______________________
b. Seleccionamos la opción “Agregar nuevo origen de datos”

c. Seleccionamos “Base de datos” y presionamos en el botón “Siguiente >”


Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….20
______________________________________________________________________
______________________
d. Seleccionamos “Conjunto de datos” y presionamos en el botón “Siguiente >”

e. Seleccionamos el botón “Nueva conexión…”


Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….21
______________________________________________________________________
______________________
f. Seleccionamos las opciones que se muestran y presionamos el botón “Continuar”
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….22
______________________________________________________________________
______________________
g. Seleccionamos las opciones que se muestran, probamos la conexión y presionamos el botón “Aceptar”

h. Presionamos en el botón “Siguiente >”


Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….23
______________________________________________________________________
______________________
i. Presionamos en el botón “Siguiente >”

j. Como por el momento solo tenemos tablas en nuestra BD, seleccionamos todas las tablas de la BD_LATAM y
presionamos el botón “Finalizar”.
Guía de Laboratorio
Herramientas de Programación 1 – Entity framework – SQL Server
……….24
______________________________________________________________________
______________________
k. En el panel de “Orígenes de datos” ya podemos visualizar la nueva conexión.

l. Si hacemos doble click en BD_LATAMDataSet.xsd visualizaremos las tablas que hemos seleccionado para el
origen de datos.

Esta conexión la usaremos para conectar Entity Framework a la BD_LATAM.

ACTIVIDAD VIRTUAL
Revisa y analiza los siguientes enlaces que se encuentran en la plataforma virtual, luego desarrolla las actividades
propuestas:
 ORM.
https://www.youtube.com/watch?v=kBZjaabLUtk

 Entity Framework.
https://docs.microsoft.com/es-es/dotnet/framework/data/adonet/ef/overview
1. Explicar y dar ejemplos de cinco sentencias SQL de tipo DDL (Lenguaje de definición de datos).
2. Explicar y dar ejemplos de cinco sentencias SQL de tipo DML (Lenguaje de manipulación de datos).
3. En la base de datos BD_LATAM crear un procedimiento almacenado (SP) que devuelva el detalle de las tarifas
activas. El SP debe recibir como parámetros:
 Ciudad de Origen
 Ciudad de Destino
 Tipo de servicio
4. En la base de datos BD_LATAM crear un procedimiento almacenado (SP) que devuelva el detalle de los vuelos
activos. El SP debe recibir como parámetros:
 Ciudad de Origen
 Ciudad de Destino
 Fecha

También podría gustarte