Está en la página 1de 19

ESCUELA SUPERIOR POLITÉCNICA DE CHIMBORAZO

SEMESTRE OCTUBRE 2017 – MARZO 2018

TAREA No. ____

IDENTIFICACION
Facultad: Informática y Electrónica

Carrera: Ingeniería En Electrónica, Telecomunicaciones Y Redes

Materia: Base de Datos

Semestre: Cuarto

Paralelo: “A”

Docente: Ing. Blanca Hidalgo

Integrantes: ISRAEL DUCHE 1057, JAIRO HUARACA 1053, ERICK GUAMAN 1069

Fecha: 07 DE FEBRERO, 2017

Revisado
Calificación
TEMA: DESARROLLO DE UNA APLICACIÓN CONECTADA A UNA BASE DE
DATOS DE SQL SERVER PARA LA ADMINISTRACION DE DESCARGAS DE
APLICACIONES PARA MOVILES INTELIGENTES

1. OBJETIVOS
1.1. GENERAL
 Desarrollar una base de datos en el DBMS SQL SERVER como solución a
problemas que se presentan en la vida diaria.

1.2. OBJETIVOS ESPECÍFICOS


● diseñar una aplicación utilizando NETBEANS IDE 8.2 que realice las
diversas operaciones creadas en SQL SERVER
● crear métodos que faciliten los procesos a realizarse en SQL SERVER,
como procedimientos almacenados y triggers
● elaborar operaciones dentro de la aplicación que permita consultar,
eliminar, actualizar los datos dentro de la base de datos desarrollada.

2. INTRODUCCION

El presente proyecto está enfocado para la administración de los datos que se


presenta al momento de realizar la descarga de una aplicación desde un
teléfono inteligente, en donde dichos datos se puede almacenar en una base
de datos que se crea en el DBMS SQL SERVER.

El Motor de base de datos de Microsoft SQL Server es la tecnología principal


para almacenar, procesar y proteger datos. Mediante el Motor de base de
datos de SQL Server , es posible crear bases de datos de SQL Server , acceder
a ellas y modificarlas en las aplicaciones web. El Motor de base de datos ofrece
acceso controlado y procesamiento de transacciones rápido para satisfacer los
requisitos de las aplicaciones consumidoras de datos de la empresa.

Para la administración de los datos al realizar la descarga de una aplicación, se


ha divido por tablas y registros que se detallan a continuación:

Aplicaciones, en este entidad se detallan todos los atributos que debe tener
una aplicación para el momento de realizar la descarga de la misma. Además
existen entidades como programadores, operadores y usuarios, los cuales
están enfocados tanto para la realización, distribución y consumo de las
aplicaciones, de igual manera cada una de estas entidades tiene sus atributos
que lo identifican, como nombre, número de identificación, entre otros.

El medio por el cual el usuario y la aplicación van a interactuar va a ser un


dispositivo móvil, el mismo que se tomara como una entidad, y su ves se debe
tomar en cuenta el tipo de sistema operativo con el que el dispositivo va a
trabajar y su marca de fabricación, por lo cual el sistema operativo y la marca
también serán entidades con sus respectivos atributos. El idioma con el que se
vaya a trabajar debe depender del usuario, por lo que también es tomado
como una entidad
3. DESCRIPCION DEL PROBLEMA
Se desea realizar una base de datos para el control de descarga de
aplicaciones.

 De cada aplicación se sabe la identificación, nombre, fecha de descarga,


dirección URL, y tamaño de la aplicación.
 Los usuarios pueden descargar distintas aplicaciones, un usuario puede
descargar varias aplicaciones, así como una aplicación puede ser
descargada por varios usuarios.
 De cada usuario se conoce su número telefónico, email, fecha de
descarga.
 Además se registra la operadora con la que el usuario trabaja, en donde
muchos usuarios pueden pertenecer solo a una operadora, de cada
operadora se conoce la identificación del operador, nombre y dirección.
 Las aplicaciones son desarrolladas para distintos tipos de sistemas
operativos, de cada SO se conoce su id_SO y su nombre.
 Una aplicación fue desarrollada para varios sistemas operativos, así como
un sistema operativo puede tener varias aplicaciones.
 Un SO funciona en distintos dispositivos, de cada dispositivo se conoce
su identificación, modelo y resolución.
 Varios dispositivos pueden pertenecer a una sola marca, y de ella se
conoce su identificación y nombre.
 Un operador puede contratar a varios usuarios, de estos se conoce su
identificación nombre y dirección.
 Dentro de las aplicaciones existen programadores, en donde una
aplicación puede ser desarrollada por varios programadores, y un
programador puede desarrollar varias aplicaciones.
 Del programador se conoce su identificación, teléfono y dirección.
 Las aplicaciones pueden estar en distintos idiomas para un mejor
manejo de las mismas por parte de los usuarios, del idioma se conoce su
identificación y el idiomas en el que trabajo.
4. DIAGRAMA ENTIDAD RELACION
5. FORMATO NORMALIZADO

Comprobante de Venta de Aplicaciones


"Android DATA"
Código del comprobante: 1024 N° 01

Nombre de usuario: Fecha de Bajada:


Numero:
E-mail:
Dispositivo……………………. SO Android
Modelo: iOS
Marca: Windows

Resolución:

Operadora
Movistar Claro CNT Otros

Aplicaciones
N° ID App Nombre Fecha Tamaño URL_Archivo Idioma Valor

Subtotal
IVA 12%
TOTAL
Programadores
Nombre Dirección Teléfono
6. Diagrama de dependencias funcionales

N° Comprobante Nombre

NumeroU Fecha
E-mail
Cód. Comprobante Cód. Dispositivo
Modelo
Marca
Cód. Operadora
Resolución

N° Aplicación Tipo de operadora


ID. Aplicación
Nombre

Fecha
Tamaño

ID. Programador URL_Archivo Lugar


C.Idioma
País

Gratis
Valor

Premium
Dirección Nombre Teléfono

Tablas Normalizadas

1. Comprobante de ventas (Cód. comprobante), N° Comprobante,


Numero, Cód. Dispositivo, Cód., Operadora)
2. Usuario (NúmeroU, Nombre, E-mail, Fecha)
3. Dispositivo (Cód. Dispositivo, Modelo. Marca, Resolución, SO)
4. Operadora (Cód. Operadora, Tipo de operadora)
5. Aplicaciones (ID. Aplicación, N° Aplicación, Nombre, Fecha, Tamaño,
URL_Archivo, C.Idioma, Valor)
6. Idioma (C.Idioma, Lugar, País)
7. Valor(Gratis, Premium)
8. Programadores (ID Programador, Nombre, Dirección, Teléfono)
9. Rel. Comprobante, Aplicaciones (Cód. Comprobante, ID. Aplicación)
10.Rel. Programadores, Aplicaciones (ID. Programador, ID Aplicación)
7. CREACION DE LAS TABLAS

1. TABLA COMPROBANTE DE VENTAS

COMVEN(CCOM, NUMCOM, NUMU, CDISP, COPER)

CAMPO DESCRIPCIÓN TIPO


1 CCOM Código del comprobante. Clave principal entero
2 NUMCOM Número del comprobante. entero
3 NUMU Número del usuario que descargo la aplicación. entero
Clave foránea de la tabla usuario.
4 CDISP Código del dispositivo que utiliza la aplicación. entero
Clave foránea de la tabla dispositivo.
5 COPER Código de la operadora. Clave foránea de la Entero
tabla operadora.
USE PROYECTO
CREATE TABLE COMVEN
(CCOM int not null,
NUMCOM int,
NUMU int,
CDISP int,
COPER int,
Constraint PK_COMVEN primary key (CCOM),
Constraint FK_USUA foreign key (NUMU)
references USUA (NUMU),
Constraint FK_DISP foreign key (CDISP)
references DISP (CDISP),
Constraint FK_OPER foreign key (COPER)
references OPER (COPER))

2. TABLA USUARIO

USUA(NUMU,NOMU,EML,FEC)
CAMPO DESCRIPCIÓN TIPO
1 NUMU Número del usuario que descargo la entero
aplicación. Clave principal.
2 NOMU Nombre del usuario que descargo la cadena
aplicación.
3 EML Email del usuario que descargo la cadena
aplicación.
4 FEC Fecha de descarga de la aplicación. fecha

USE PROYECTO
CREATE TABLE USUA
( NUMU INT NOT NULL ,
NOMU varchar(50),
EML varchar(50),
FECD date,
Constraint PK_USUA Primary Key (NUMU))

3. TABLA DISPOSITIVO

DISP(CDISP, MOD, MARC, RESL, SO)

CAMPO DESCRIPCIÓN TIPO


1 CDISP Código del Dispositivo que descargo la entero
aplicación. Clave principal
2 MOD Modelo del dispositivo. cadena
3 MARC Marca del dispositivo. cadena
4 RESL Resolución del dispositivo. cadena
5 SO Sistema operativo del dispositivo. cadena
USE PROYECTO
CREATE TABLE DISP
( CDISP int not null ,
MOD varchar(50),
MARC varchar(50),
RESL varchar(50),
SO varchar(50),
Constraint PK_DISP Primary Key (CDISP))
4. TABLA OPERADORA

OPER(COPER, TIOPER)

CAMPO DESCRIPCIÓN TIPO


1 COPER Código de la operadora que brinda el servicio entero
para la descarga de aplicaciones. Clave principal
2 TIOPER Tipo de operadora. cadena
USE PROYECTO
CREATE TABLE OPER
(COPER int not null ,
TIOPER varchar(50),
Constraint PK_OPER Primary Key (COPER))

5. TABLA APLICACION
APLIC(IDAPLIC,NAPLIC,NOMA,FECH,TAM,URLAP,IDIO,VAL)

CAMPO DESCRIPCIÓN TIPO


1 IDAPLIC Código de la aplicación. Clave principal entero
2 NAPLIC Número de la aplicación. entero
3 NOMAP Nombre de la aplicación . cadena
4 FECH Fecha de subida de la aplicación. fecha
5 TAM Tamaño de la aplicación . decimal
6 URLAP Dirección del enlace donde se encuentra la cadena
aplicación.
7 CIDIO Tipo de idioma de la aplicación. Clave foránea int
de la tabla idioma.
8 VAL Costo de la aplicación a descargar. decimal

USE PROYECTO
CREATE TABLE APLIC
(IDAPLIC int not null,
NAPLIC int,
NOMAP varchar(50),
FECS date ,
TAM float,
URLAP varchar(50),
CIDIO int,
VAL float ,

Constraint PK_APLIC primary key (IDAPLIC),


Constraint FK_IDIO foreign key (CIDIO)
References IDIO (CIDIO) )
6. TABLA IDIOMA
IDIO(CIDIO,LUG,PS)

CAMPO DESCRIPCIÓN TIPO


1 CIDIO Código del idioma. Clave principal. entero
2 IDIOM Especificación del idioma. cadena
3 LUG Lugar del idioma. cadena
4 PS País donde se encuentra. cadena
USE PROYECTO
CREATE TABLE IDIO
(CIDIO int not null,
LUG varchar(50),
PS varchar(50),
Constraint PK_IDIO primary key (CIDIO))

7. TABLA VALOR
VALO(GRT,PRM)

CAMPO DESCRIPCIÓN TIPO


1 GRT Si la aplicación es gratis. entero
2 PRM Si la aplicación tiene algún valor. entero
USE PROYECTO
CREATE TABLE VALO
(GRT varchar(50),
PRM varchar(50))
8. TABLA PROGRAMADORES
PROG(IDPROG,NOMP,DIRCP,TELFP)

CAMPO DESCRIPCIÓN TIPO


1 IDPROG Código del programador que crea la aplicación. entero
Clave principal
2 NOMP Nombre del programador de la aplicación. entero
3 DIRCP Dirección del programador. cadena
4 TELEFP Teléfono del programador. entero
USE PROYECTO
CREATE TABLE PROG
(IDPROG int not null,
NOMP varchar(50),
DIRCP varchar(50),
TELEFP int ,
Constraint PK_PROG primary key (IDPROG))

9. TABLA COMPROVANTE APLICACIONES


RCOMAP(CCOM,IDAPLIC)
CAMPO DESCRIPCIÓN TIPO
1 CCOM Código del comprobante de la aplicación. Clave entero
foránea de la tabla comprobante de ventas
2 IDAPLIC Código de la aplicación. Clave foránea de la entero
tabla aplicaciones.
USE PROYECTO
CREATE TABLE RCOMAP
(CCOM int not null,
IDAPLIC int not null,
Constraint FK_COMVEM foreign key (CCOM)
References COMVEN (CCOM),
Constraint FK_APLI foreign key (IDAPLIC)
References APLIC (IDAPLIC))
10. TABLA PROGRAMADORES DE APLICACIONES
RPROGAP(IDPROG,IDAPLIC)

CAMPO DESCRIPCIÓN TIPO


1 IDPROG Código del comprobante de la aplicación. Clave entero
foránea de la tabla programadores.
2 IDAPLIC Código de la aplicación. Clave foránea de la entero
tabla aplicaciones
USE PROYECTO
CREATE TABLE RPROGAP
( IDPROG int not null,
IDAPLIC int not null,
Constraint FK_PROG foreign key (IDPROG)
References PROG (IDPROG),
Constraint FK_APLIC foreign key (IDAPLIC)
References APLIC (IDAPLIC) )

8. CREACION DE PROCEDIMIENTOS ALMACENADOS


1. create procedure INGR_COMVEN @CCOM int, @NUMCOM int,@NUMU int, @CDISP int,
@COPER int
as
insert into COMVEN (CCOM,NUMCOM,NUMU,CDISP,COPER)
values (@CCOM, @NUMCOM, @NUMU,@CDISP,@COPER)
end

2. create procedure INGR_USUA @NUMU int,@NOMU varchar(15),@EML varchar(20),


@FECD date
as
begin
insert into USUA (NUMU, NOMU, EML, FECD)
values (@NUMU, @NOMU, @EML, @FECD )
end
3. create procedure INGR_DISP @CDISP int,@MOD varchar(15), @MARC varchar(20),
@RESL varchar(20),@SO varchar(20)
as
begin
insert into DISP (CDISP,MOD, MARC, RESL, SO)
values (@CDISP, @MOD, @MARC, @RESL, @SO)
end
4. create procedure INGR_OPER @COPER int,@TIOPER varchar(15)
as
begin
insert into OPER (COPER,TIOPER)
values (@COPER,@TIOPER)
end

5. create procedure INGR_APLIC @IDAPLIC int, @NAPLIC int, @NOMAP varchar(20),


@FECHS date, @TAM float, @URLAP varchar(20), @CIDIO int, @VAL float
As
Begin
insert into APLIC (IDAPLIC,NAPLIC,NOMAP,FECS,TAM,URLAP,CIDIO,VAL)
values (@IDAPLIC, @NAPLIC, @NOMAP,@FECS,@TAM,@URLAP,@CIDIO,@VAL)
end

6. create procedure INGR_IDIO @CIDIO int, @IDIOM varchar(15),@LUG varchar(15),


@PS varchar(15)
as
begin
insert into IDIO (CIDIO,IDIOM,LUG,PS)
values (@CIDIO,@IDIOM,@LUG,@PS)
end

7. create procedure INGR_VALO @GRT int, @PRM int


as
begin
insert into VALO (GRT,PRM)
values (@GRT,@PRM)
end

8. create procedure INGR_PROG @IDPROG int, @NOMP int, @DIRCP varchar(25),


@TELEFP int
as
begin
insert into PROG (IDPROG,NOMP,DIRCP,TELEFP)
values (@IDPROG,@NOMP,@DIRCP,@TELEFP)
end

9. create procedure INGR_RCOMAP @CCOM int, @IDAPLIC int


as
begin
insert into RCOMAP(CCOM,IDAPLIC)
values (@CCOM,@IDAPLIC)
end

10. create procedure INGR_RPROGAP @IDPROG int, @IDAPLIC int


as
begin
insert into RPROGAP(IDPROG,IDAPLIC)
values (@IDPROG,@IDAPLIC)
end

9. CREACION DE TRIGGERS
 CREATE TRIGGER [dbo].[actual_pro] ON [dbo].[PROG]
FOR UPDATE
AS
declare @codigo int
select @codigo = IDPROG
from deleted
declare @codigo1 int
select @codigo1 = IDPROG
from inserted
if (update(IDPROG))
begin
update RPROGAP
set IDPROG = @codigo1
WHERE IDPROG = @codigo
end

 CREATE TRIGGER borrar ON [dbo].[USUA]


FOR DELETE
AS
declare @codigo int
select @codigo = NUMU
from deleted
if (UPDATE(NUMU))
begin
DELETE
FROM COMVEN
where NUMU=@codigo
end

 Para seguridad

CREATE TRIGGER TR_Seguridad


ON DATABASE FOR DROP_TABLE, ALTER_TABLE
AS
BEGIN
RAISERROR ('No está permitido borrar ni modificar tablas !',1,1)
ROLLBACK TRANSACTION
END

 Para ver que día se inserta una nueva aplicación


CREATE TRIGGER TR_APLICACIONES
ON APLIC
AFTER UPDATE
AS
BEGIN
INSERT INTO HCO_STOCK
(IDAPLIC, NOMAP, FECHA)
SELECT IDAPLIC, NOMAP, getdate()
FROM INSERTED
END
UPDATE NOMAP
SET NOMAP = NOMAP+ 2
10. CAPTURAS DE LA APLICACION

Código que se utilizó para acoplar la aplicación echa en Netbeans con la base
de datos de SQL SERVER

Interfaz de bienvenida de la aplicación al momento de ejecutarla.


Ventana en donde el usuario puede elegir si quiere entrar como administrador
o como invitado a la aplicación.
ADMINISTRADOR

En el caso en donde el usuario haya seleccionado entrar como administrador,


se le pedirá el nombre y la contraseña.

Menú del administrador, en donde el mismo puede consultar, insertar,


actualizar, borrar los datos que se encuentran en la base de datos.

INVITADO

En el caso de que el usuario eligió la opción de invitado, el mismo tiene acceso


solo a consultar los datos que se encuentran en la base de datos.
Ventana del comprobante en donde se podrá visualizar los datos de algún
usuario.

Ventana de consulta del programador


11. CONCLUSIONES

 Se desarrolló una base de datos en el DBMS SQL SERVER, el mismo que


está enfocado a la solución de un problema, en este caso la administración
de descargas de aplicaciones para móviles inteligentes
 Se diseñó la aplicación en donde se puede realizar las diversas
operaciones que se creó en SQL SERVER.
 Se logró crear procedimientos almacenados y triggers, los mismos que
ayudaron en gran parte a que los procesos sean más rápidos y ligeros, por
el hecho de que la base de datos de SQL SERVER debía trabajar a la par
con la aplicación creada en Netbeans.
 Gracias a los diferentes conocimientos adquiridos, se supo elaborar
distintitas operaciones dentro de la aplicación, las mismas que serán de
gran utilidad ya que trabajaran directamente con los datos que se
encuentra en la base de datos.

12. RECOMENDACIONES

 Se debe tener cuidado al momento de realizar las tablas a través del


código en SQL, ya que al momento de introducir datos en las tablas, estos
se guardan como comentarios y ya no se podría trabajar con normalidad.
 Se debe buscar el driver adecuado para realizar la conexión de acuerdo a
la DBMS que se está utilizando, en este caso SQL SERVER
 Cuando se realice los procedimientos almacenados dentro de SQL, solo se
los debe ejecutar una vez, ya que al hacerlo varias veces se corre el riego
de que se cree alteraciones en la base de datos.
13. BIBLIOGRAFIA

Corral, A. S. (14 de 01 de 2013). Trabajo Final de BASES DE DATOS. Recuperado el 10


de 12 de 2017, de
http://openaccess.uoc.edu/webapps/o2/bitstream/10609/18837/6/asaezcorTFC
0113memoria.pdf

RAMOS.A. (s.f.). EVILNAPSIS. Recuperado el 10 de 01 de 2018, de Conectar una Base


de datos MySQL con Java y Netbeans:
http://evilnapsis.com/2016/03/29/conectar-una-base-de-datos-mysql-con-
java-y-netbeans/

También podría gustarte