You are on page 1of 56

INSTITUTO TECNOLGICO SUPERIOR

DE SAN NDRES TUXTLA


INGENIERIA INFORMTICA
TALLER DE BASE DE DATOS
PROYECTO: FARMACIA
ROSARIO CARVAJALHERNNDEZ
PRESENTAN:
ESPINOSA MADRIGAL LUIS NGEL
GONZLEZ PEA MIRIAM
MALAGA CHONTAL SONIA
SERRANO MARTNEZ EVA GUADALUPE
610 A
MAYO 2014

INDICE
INTRODUCCIN ................................................................................................................................ 4

CAPITULO I ...................................................................................................................................... 5
DEFINICIN DEL PROBLEMA ..................................................................................................... 5
PLANTEAMIENTO DEL PROBLEMA ....................................................................................... 6
OBJETIVOS .................................................................................................................................. 7
General ...................................................................................................................................... 7
Especficos ................................................................................................................................ 7
JUSTIFICACIN .......................................................................................................................... 8
ALCANCES Y LIMITACIONES .................................................................................................. 9
CAPITULO II ................................................................................................................................... 10
PROCESO ...................................................................................................................................... 10
NORMALIZACIN ..................................................................................................................... 11
PRIMERA FORMA NORMAL (1FN) ................................................................................... 11
SEGUNDA FORMA NORMAL (2FN) .................................................................................. 12
TERCERA FORMA NORMAL (3FN) .................................................................................. 10
DIAGRAMA ENTIDAD - RELACIN ....................................................................................... 11
DIAGRAMA RELACIONAL ....................................................................................................... 12
DICCIONARIO DE DATOS ..................................................................................................... 13
CREACIN DE LA BASE DE DATOS ................................................................................... 15
CAPITULO III .................................................................................................................................. 25
RESULTADOS ............................................................................................................................... 25
CONSULTAS .............................................................................................................................. 26
VISTAS ........................................................................................................................................ 34
CAPITULO IV ................................................................................................................................. 41
CONEXIN ..................................................................................................................................... 41
ODBC ........................................................................................................................................... 41
JDBC ............................................................................................................................................ 47
2

ADO.NET ..................................................................................................................................... 50
CONCLUSIN ................................................................................................................................ 53

INTRODUCCIN
En la actualidad la tecnologa es primordial para el crecimiento y avance de una empresa ya que
mediante ciertas herramientas que se pueden emplear para el manejo de informacin requerida o
que se desea consultar en algn momento, las Bases de Datos son fundamentales pues ofrecen
un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemticamente para
su posterior uso en caso necesario de consultar datos.

Esto le permite a las empresas tener un mejor control de los datos que se manejan en ellas, ya que
les ayuda a optimizar y proporcionar de manera eficaz los registros totales.

En primera instancia es planteado el problema de una Farmacia estableciendo ciertos criterios que
ya han sido analizados y que se pretenden desarrollar y resolver en este proyecto que a su vez
est basado en un estudio de mercado para determinar alcances y limitaciones que conlleven a
que dicho proyecto se convierta en la base de otras empresas de esta ciencia como lo es la
medicina.

Este trabajo se hizo con la finalidad de llevar un mejor mtodo para establecer una consulta
posterior de un producto dando lugar a una evaluacin constante de las existencias que se
manejan en dicha empresa.

El presente documento muestra el desarrollo de una base de datos de una farmacia, as como los
procesos de ventas, entradas/salidas de medicamentos para llevar un buen control y actualizacin
de ellos.

CAPITULO I
DEFINICIN
DEL
PROBLEMA

PLANTEAMIENTO DEL PROBLEMA

Actualmente la globalizacin influye constantemente en los diversos negocios, por lo cual es


indispensable el uso y la aplicacin de la tecnologa en todas las empresas y reas laborales, lo
cual conlleva a un mejor rendimiento profesional y ayuda a mantener a las entidades ante la
competencia; debido a que dicha tecnologa cuenta con mltiples herramientas de acuerdo a las
necesidades solicitadas por el ser humano, que facilitan el uso de diversa informacin, adems de
establecer y de imponer una nica forma de trabajo.

Sin duda alguna hoy en da las empresas deben estar a la vanguardia en infraestructura de
sistemas, con la finalidad principal de agilizar sus procesos y ser competitivas ante un mercado
global. Esto implica una considerable afectacin para algunas empresas por la innovacin
constante, debido a que no existe una capacitacin persistente para los empleados de una ente en
particular. Por lo que es de gran progreso tener en cuenta los factores que pueden influir en una
entidad, por tal motivo se pretende obtener una solucin para el siguiente problema.
En la ciudad de San Andrs Tuxtla, Veracruz, La Sper Farmacia Roma, casa matriz
ubicada en el centro de la misma en Av. Jurez No. 201 Centro, se dedica a la venta de
medicamentos, as como tambin de artculos bsicos y de uso personal, adems de contar con
envos de dinero y pago de servicios, entre otros.

Esta empresa cuenta con diferentes dificultades en el control y manejo de la venta de sus
medicamentos as como de otros productos.

Por tal razn se pretende dar una solucin a dicho inconveniente, el cual sera disear una
base de datos donde se lleve a cabo el control de cada medicamento y otros productos con los que
ofrece la farmacia, esto es con el fin de brindar un mejor servicio y mayor facilidad de manejo para
los prestadores de servicio.

OBJETIVOS

General

Disear y crear una base de datos SOLEMI para la empresa Sper Farmacia Roma, con el fin de
tener un mejor control y manejo de medicamentos y otros productos.

Especficos

1. Analizar el problema para determinar los datos que sern utilizados en el diseo de la base
de datos.
2. Realizar el proceso de normalizacin de la base de datos donde se minimizara la carga
excesiva de datos.
3. Disear los esquemas entidad-relacin y relacional en base a la normalizacin para
establecer las relaciones entre los atributos de las entidades.
4. Crear la base de datos con las debidas restricciones para un mejor rendimiento.
5. Insertar registros en la base de datos de una forma fcil y eficaz para el usuario.
6. Disear las consultas y vistas necesarias que sern proporcionadas al usuario con el fin de
que le sea accesible en el manejo de esta base de datos.
7. Elaborar la documentacin respectiva.

JUSTIFICACIN

Ante el desarrollo de diversas herramientas tecnolgicas y formas de trabajar, distintas


organizaciones como, la Sper Farmacia Roma, casa matriz,se ve en la necesidad del uso y
manejo de ellas, buscando as la satisfaccin del personal que labora en dicha farmacia, adems
de contribuir en la mejora al servicio que se brinda.

Debido a esto se realiza el diseo de una base de datos, con el fin de que tenga un mejor
control y manejo de los productos existentes en la Farmacia, dando lugar a una mejor y mayor
competitividad en los diferentes mercados, haciendo uso y preestableciendo dicha base de datos
para un alto ndice de recursos, en beneficio de la misma.

As mismo favorecer tanto al dueo del negocio como al personal que labora en l, de tal
forma que los clientes queden satisfechos con

la adquisicin de diversos productos que son

brindados por la entidad.

ALCANCES Y LIMITACIONES
Los alcances que se tienen en el diseo de la base de datos a realizar son los siguientes:

1. Tener un conocimiento de los diversos proveedores en el mercado.


2. Que la base de datos funcione exclusivamente para la casa Matriz.
3. Se tendr una actualizacin constante en el control de la misma.
4. Brindar ms capacitaciones a los empleados para un mejor servicio.

Dentro de las limitaciones para el diseo de la base de datos se enuncian las siguientes:

1. Falta de tiempo para establecer ciertos periodos de prueba que muestren las necesidades
solicitadas.
2. Las personas que tendrn acceso a la base de datos ser solo para el personal autorizado.
3. No contar con equipos eficientes.
4. Inconvenientes de adaptacin en los empleados para el manejo de la base de datos.
5. Que la entidad no nos proporcione suficiente informacin para el desarrollo de la base de
datos.

CAPITULO II
PROCESO

10

NORMALIZACIN

Es una tcnica que se utiliza para crear relaciones lgicas apropiadas entre tablas de una base de
datos. El proceso de normalizacin parte de las tres primeras formas normales (1FN, 2FN y 3FN)
definidas por Edgar Frank Cood (1970) creador de las bases de datos relacionales.

Por lo tanto la normalizacin se refiere al proceso mediante el cual se transforman datos


complejos a un conjunto de estructuras de datos ms pequeas, que adems de ser ms simples y
ms estables, son ms fciles de mantener.

PRIMERA FORMA NORMAL (1FN)

Una tabla est en Primera Forma Normal si:

1. Todos los atributos son atmicos. Un atributo es atmico si los elementos del dominio son
indivisibles, mnimos.
2. La tabla contiene una clave primaria nica.
3. La clave primaria no contiene atributos nulos.
4. No debe existir variacin en el nmero de columnas.
5. Los Campos no clave deben identificarse por la clave (Dependencia Funcional)
6. Debe Existir una independencia del orden tanto de las filas como de las columnas, es
decir, si los datos cambian de orden no deben cambiar sus significados.
7. Una tabla no puede tener mltiples valores en cada columna.
8. Los datos son atmicos (a cada valor de X le pertenece un valor de Y y viceversa).

Esta forma normal elimina los valores repetidos dentro de una Base de Datos.

Para empezar a normalizar la Base de Datos se deben anotar todos los datos sin importar que
algunos de ellos se repitan:

Farmacia

(Id_proveed, nom_proveed, telfono, RFC, Id_prod, nom_prod, Id_tipo, nom_tipo,


Id_marca, nom_marca, caract_prod, cantidad, precio, Id_compra, cantidad, precio
fec_compra, hora_compra)

Cliente
Venta

(Id_cliente, nom_cliente)
(Id_venta, cantidad, importe, fec_venta, hora_venta, Id_prod, Id_prod, Id_fact,

11

fec_fact, hora_fact, cantidad, importe, Id_cliente, Id_ped, Id_proveed, Id_prod,


Id_tipo, Id_marca, nom_marca,cantidad,id_cliente)

macia 1

(Id_proveed, nom_proveed, telfono, RFC)

Farmacia 2

(Id_proveed, Id_prod, nom_prod, Id_tipo, nom_tipo, Id_marca, nom_marca,


caract_prod, cantidad, precio)

Farmacia 3

(Id_prod, Id_proveed, Id_compra, cantidad, precio fec_compra, hora_compra)

Cliente

(Id_cliente, nom_cliente)

Venta

(Id_venta, cantidad, importe, fec_venta, hora_venta, Id_prod, id_cliente)

Venta 1

(Id_prod, Id_fact, Id_cliente, fec_fact, hora_fact, cantidad, importe)

Venta 2

(Id_ped, Id_proveed, Id_prod, Id_tipo, Id_marca, nom_marca, cantidad)

SEGUNDA FORMA NORMAL (2FN)

Una tabla se dice que est en 2FN si y slo si cumple dos condiciones:

1. Se encuentra en 1 FN.
2.

Los atributos que no forman parte de ninguna clave dependen de forma completa de la
clave principal. Es decir que no existen dependencias parciales. (Todos los atributos que
no son clave principal deben depender nicamente de la clave principal).

En otras palabras puede decirse que la segunda forma normal est basada en el concepto de
dependencia completamente funcional.

Farmacia 1

(Id_proveed, nom_proveed, telfono, RFC)

Farmacia 2

(Id_proveed, Id_prod, nom_prod, Id_tipo, Id_marca, caract_prod, cantidad, precio)

Farmacia 2.1

(Id_tipo, nom_tipo)

Farmacia 2.2

(Id_marca, nom_marca)

Farmacia 3

(Id_prod, Id_proveed, Id_compra, cantidad, precio fec_compra, hora_compra)

Cliente

(Id_cliente, nom_cliente)

Venta

(Id_venta, cantidad, importe, fec_venta, hora_venta, Id_prod,id_cliente)

Venta 1

(Id_prod, Id_fact, Id_cliente, fec_fact, hora_fact, cantidad, importe)

Venta 2

(Id_ped, Id_proveed, Id_prod, Id_tipo, Id_marca, nom_marca, cantidad)

12

TERCERA FORMA NORMAL (3FN)


TERCERA FORMA NORMAL (3FN)

Una tabla se dice que est en 3FN si y slo si se cumplen dos condiciones:

1. Se encuentra en 2FN.
2. No existe ninguna dependencia funcional transitiva entre los atributos que no son clave.
Proveedor

(Id_proveed, nom_proveed, telfono, RFC)

Producto

(Id_proveed, Id_prod, nom_prod, Id_tipo, Id_marca, caract_prod, cantidad, precio)

Tipo

(Id_tipo, nom_tipo)

Marca

(Id_marca, nom_marca)

Compra

(Id_prod, Id_proveed, Id_compra, cantidad, precio fec_compra, hora_compra)

Cliente

(Id_cliente, nom_cliente)

Venta

(Id_venta, cantidad, importe, fec_venta, hora_venta, Id_prod,id_cliente)

Factura

(Id_prod, Id_fact, Id_cliente, fec_fact, hora_fact, cantidad, importe)

Pedido

(Id_ped, Id_proveed, Id_prod, Id_tipo, Id_marca, nom_marca, cantidad)

Hasta esta 3FN se considera un esquema de base de datos normalizado.

10

DIAGRAMA ENTIDAD - RELACIN

11

DIAGRAMA RELACIONAL

Proveedor
Id_proveed
Nom_proveed
Telfono
RFC

Producto
Id_proveed
Id_prod

Tipo

Marca

Id_tipo

Id_marca

Nom_tipo

Nom_marca

Compra
Id_prod
Id_proveed

Nom_prod

Id_compra

Caract_prod

Cantidad

Cantidad

Precio

Precio

Fec_compra

Id_tipo

Hora_compra

Id_marca

Venta
Cliente
Id_cliente
Nom_cliente

Factura

Pedido

Id_venta

Id_prod

Id_ped

Cantidad

Id_fact

Id_proveed

Importe

Id_cliente

Id_prod

Fec_venta

Fec_fact

Id_tipo

Hora_venta

Hora_fact

Id_marca

Id_prod

Cantidad

Nom_marca

Importe

Cantidad

12

DICCIONARIO DE DATOS
Proveedor
ATRIBUTO
Id_proveedor
nombre
Telfono
rfc

TIPO
Int
Varchar
Varchar
Varchar

CONTENIDO
Proveedor
Nombre
Telfono
rfc

NULL
No
No
No
No

Key
Primary

Producto
ATRIBUTO
Id_proveed
Id_prod
Id_tipo

Int
int
int

TIPO

Id_marca
Nom_prod

int
varchar

Caract_prod

varchar

Cantidad
Precio

CONTENIDO
Codigo del proveedor
Codigo del producto
Codigo del tipo de
producto
Nombre del producto

NULL
No
No
No

Key
Foreign
Primary
Foraign

No
No

Foraign

No

Int

Caracteristicas
del
producto
Cantidad de producto

double

Precio

No

No

Tipo
ATRIBUTO
Id_tipo

Int

TIPO

CONTENIDO
Id tipo del producto

NULL
No

Tipo

Varchar

Tipo

No

Key
Primary

Marca
ATRIBUTO
Id_marca

Int

TIPO

CONTENIDO
Id marca del producto

NULL
No

Nombre_marca

Varchar

Nombre de la marca

No

Compra
ATRIBUTO
Id_prod
Id_proveed
Id_compra
Cantidad
Precio
Fec_compra
Hora_compra

TIPO
int
int
Int
Int
double
date
time

CONTENIDO
Clave producto
Clave proveedor
Clave de la compra
Cantidad de compra
Precio
Fecha
Hora

13

NULL
No
No
No
No
No
No
No

Key
Primary
Foraign
Primary

Key
Primary

Cliente
ATRIBUTO
Id_cliente
Nom_cliente

TIPO
int
varchar

CONTENIDO
Clave del cliente
Nombre del cliente

NULL
No
No

Key
Primary

Venta
ATRIBUTO
Id_venta
Id_Prod
Id_cliente
Cantidad

int
Int
Int
int

TIPO

Importe
Fec_venta
Hora_venta

Doubl
Date
Time

CONTENIDO
Clave de la venta
Clave Producto
Clave Cliente
Cantidad de productos
vendidos
Cantidad a pagar
Fecha de la compra
Hora de la compra

NULL
No
No

Key
Primary
Primary

No
No
Yes
Yes

Factura
ATRIBUTO
Id_prod
Id_fact
Id_cliente
Fec_fact
Hora_fact
Cantidad

TIPO
Int
Int
Int
date
Time
Int

Importe

Doubl

CONTENIDO
Clave del producto
Clave de la factura
Clave del cliente
Fecha de la factura
Hora de la factura
Cantidad
de
productos
comprados
Total a pagar

NULL
No
No
No
No
No
No
No

Pedido
ATRIBUTO
Id_pe
Id_proveed
Id_prod
Id_tipo
Id_marca

Int
Int
Int
int
int

TIPO

Nom_marca
cantidad

varchar
int

CONTENIDO
Clave del pedido
Clave del proveedor
Clave del producto
Clave del tipo d producto
Clave d la marca del
producto
Nombre de la marca
Cantidad de productos
pedidos

14

NULL
No
No
No
No
No
No
No

Key
Primary
Foraing
Primary
Foraign
Foraign

Key
Primary
primary
Foraign

CREACIN DE LA BASE DE DATOS


1. Se crea la Base de Datos por primera vez.

15

2. Creacin de la tabla proveedor e insercin de registros.

16

3. Creacin de la tabla producto e insercin de registros.

17

4. Creacin de la tabla tipo e insercin de registros.

18

5. Creacin de la tabla marca e insercin de registros.

19

6. Creacin de la tabla compra e insercin de registros.

20

7. Creacin de la tabla cliente e insercin de registros.

21

8. Creacin de la tabla venta e insercin de registros.

22

9. Creacin de la tabla factura e insercin de registros.

23

10. Creacin de la tabla pedido e insercin de registros.

24

CAPITULO III
RESULTADOS

25

CONSULTAS
Mostrar todas y cada uno de los registros de cada una de las tablas de la base de datos Farmacia.

1. Proveedor

2. Producto

26

3.

Tipo

4. Marca

5. Compra

27

6. Cliente

7. Venta

28

8. Factura

9. Pedido

29

10. Mostrar los productos que provee un proveedor determinado.

11. Mostrar los productos que proveen los proveedores agrupados por el nombre del proveedor.

12. Mostrar los productos y las marcas de los mismos.

30

13. Mostrar los datos de la venta que se le han efectuado a un cliente en una fecha determinada.

14. Mostrar el nmero de proveedores que existen.

15. Mostrar los datos del producto que mayor nmero de ventas ha tenido.

31

16. Mostrar los datos del proveedor ordenados ascendentemente.

17. Mostrar los datos de la factura que se emitieron en un periodo de tiempo.

32

18. Mostrar los productos agrupados por tipo.

19. Mostrar los datos del cliente cuyo nombre contenga las letras pe.

20. Mostrar los datos del producto que se le compraron a un proveedor en particular en una
fecha determinada.

33

VISTAS
1. Proveedor

2. Producto

3. Tipo

34

4. Marca

5. Compra

6. Cliente

35

7. Venta

8. Factura

9. Pedido

36

10. Mostrar los productos que provee un proveedor determinado.

11. Mostrar los productos que proveen los proveedores agrupados por el nombre del proveedor.

12. Mostrar los productos y las marcas de los mismos.

37

13. Mostrar los datos de la venta que se le han efectuado a un cliente en una fecha determinada.

14. Mostrar el nmero de proveedores que existen.

38

15. Mostrar los datos del producto que mayor nmero de ventas ha tenido.

16. Mostrar los datos del proveedor ordenados ascendentemente.

17. Mostrar los datos de la factura que se emitieron en un periodo de tiempo.

39

18.

Mostrar los productos agrupados por tipo.

19. Mostrar los datos del cliente cuyo nombre contenga las letras pe.

20. Mostrar los datos del producto que se le compraron a un proveedor en particular en una fecha
determinada.

40

CAPITULO IV
CONEXIN

ODBC

41

1. Descargar Mysql Conector 5.2, una vez concluida la descarga se procede a la instalacin.

2. Aceptar la licencia y dar siguiente.

42

3. Seleccionar la instalacin Typical.

4. Instalar.

43

5. Progreso de la instalacin.

6. Ya instalado se finaliza.

44

7. Procederemos a hacer la conexin ir a men inicio y escribir orgenes de datos ODBC.


Aparece esta pantalla en la cual hay que seleccionar el botn agregar.

8. Seleccionar MySQL ODBC 5.2 ANSI Drive y finalizar.

45

9. Introducir el nombre de base de datos, descripcin, puerto del servidor, usuario de mysql y
contrasea, elegir la base de datos a la cual se conectara.

10. Conexin exitosa.

46

JDBC
1. Descargar el conector para MySQL y
http://dev.mysql.com/downloads/connector/j/.

Java,

en

la

pgina

oficial

de

MySQL

2. Ya descargado se extraen los archivos y copiar mysql-connector-java-5-1-13-jar a la ruta


C:\Program Files\Java\jdk1.7.0\jre\lib\ext.

3. Pegar el .sql en esta misma ruta C:\Program Files\Java\jdk1.7.0\jre\lib\ext,por que en el .sql


estan declaradas las variables y los registros de las tablas de la base de datos de la
farmacia.

47

4. Usar el cdigo siguente y guardarlo en la ruta C:\Program Files\ Java\ jdk1.7.0\bin.


importjava.sql.*;
public class jdbc
{
private static Connection conexion;
private static String farmacia="farmacia";
private static String user="root";
private static String password="root";
private static String host="localhost";
private static String server="jdbc:mysql://"+host+"/"+farmacia;
public static void main(String[] args)
{
//conectar
try
{
Class.forName("com.mysql.jdbc.Driver");
conexion = DriverManager.getConnection(server,user,password);
System.out.println("Conexin a base de datos "+server+" ... OK");
}
catch (ClassNotFoundException ex)
{
System.out.println("Error cargando el Driver MySQL JDBC ... FAIL");
}
catch (SQLException ex)
{
System.out.println("Imposible realizar conexion con "+server+" ... FAIL");
}
//realizarconsulta
try
{
// Preparamos la consulta
Statement s = conexion.createStatement();
ResultSetrs = s.executeQuery ("select * from proveedor");
while (rs.next())
{
System.out.println(
"id_tipo: " +rs.getInt (1) +
"\tnom_proveed: " + rs.getString (2)+

48

"\ttelefono: " + rs.getString (3) +


"\trfc: " + rs.getString("rfc"));
}
}
catch (SQLException ex)
{
System.out.println("Imposible realizar consulta ... FAIL");
}
//desconectar
try
{
conexion.close();
System.out.println("Cerrarconexion con "+server+" ... OK");
}
catch (SQLException ex)
{
System.out.println("Imposible cerrar conexion ... FAIL");
}
}
}

5. Despus de haber sido guardado en la ruta especificada se compila, si muestra un error se


debe corregir, una vez corregidos dichos errores se ejecuta de la siguiente manera y se
muestran las datos que hay en la tabla (proveedor).

49

ADO.NET
1.

Abrir Visual Basic y crear un EXE ESTANDAR y hacer lo siguiente.

2. Exportar la base de datos ya originada.

50

3. Escribir SELECT * FROM PROVEEDOR, nos est indicando que selecciona todos los
registros de la tabla "PROVEEDOR" y los almacena en nuestro ADODC1 para usar esa
informacin en cualquier momento, en nuestro caso para mostrarla a travs de nuestro
DATAGRID.

4. Conexin exitosa.

51

52

CONCLUSIN
Al observar y recopilar informacin de los diferentes tipos de bases de datos se opta por la realizacin
del diseo de una base de datos ventas ya que est ayuda de forma eficiente a conocer sobre los
movimientos de compras y ventas que se llevan a cabo en un negocio o empresa adems de que
proporciona la informacin correspondiente y actualizada al personal que la emplea para mejores
resultados.

Dicho de otra forma esta base de datos da solucin a los problemas con los que se enfrenta una
farmacia ya que permite llevar de manera organizada el control y manejo de los medicamentos que
se manipulan en esta, puesto que le es muy difcil llevar el control manualmente o en ocasiones el
sistema con el que ya cuentan no brinda el rendimiento necesario o que se desea, y esto implica
prdida de tiempo adems de que conlleva a la empresa deficiencia e inestabilidad competente.

53

You might also like