Base Proyecto
Base Proyecto
Base Proyecto
PABLO”
UNIDAD ACADÉMICA REGIONAL COCHABAMBA
Departamento de Ciencias Exactas e Ingeniería
Carrera de Ingeniería De Telecomunicaciones
Cochabamba - Bolivia
Mayo 2019
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de
información de forma organizada para que luego podamos encontrar y utilizar fácilmente.
Características
Entre las principales características de los sistemas de base de datos podemos mencionar:
● Redundancia mínima.
● Respaldo y recuperación.
¿Por qué son importantes las bases de datos en los micro mercados?
Las principales utilidades que ofrece una base de datos a la empresa son las siguientes:
1
● Agrupar y almacenar todos los datos de la empresa en un único lugar.
● Facilitar que se compartan los datos entre los diferentes miembros de la empresa.
3. modelo entidad-relación
Un modelo de entidad relación es una entidad que está relacionada con otra entidad El
Modelo Entidad-Relación
El modelado de datos no acaba con el uso de esta técnica. Son necesarias otras técnicas para
lograr un modelo directamente implementable en una base de datos. Brevemente:
Permite mostrar resultados entre otras entidades pertenecientes a las existentes de manera
que se encuentre la normatividad de archivos que se almacenarán.
2
● Conversión en tablas (en caso de utilizar una base de datos relacional).
Entidad
Las entidades representan cosas u objetos (ya sean reales o abstractos), que se diferencian
claramente entre sí.
Para poder seguir un ejemplo durante el artículo añadiré ejemplos sobre un taller mecánico,
donde se podría crear las siguientes entidades:
Atributos
Los atributos definen o identifican las características de entidad (es el contenido de esta
entidad). Cada entidad contiene distintos atributos, que dan información sobre esta entidad.
Estos atributos pueden ser de distintos tipos (numéricos, texto, fecha...).
Los atributos se representan como círculos que descienden de una entidad, y no es necesario
representarlos todos, sino los más significativos, como a continuación.
Relación
Es un vínculo que nos permite definir una dependencia entre varias entidades, es decir, nos
permite exigir que varias entidades comparten ciertos atributos de forma indispensable.
Las relaciones se muestran en los diagramas como rombos, que se unen a las entidades
mediante líneas.
3
Relaciones de cardinalidad
Podemos encontrar distintos tipos de relaciones según cómo participen en ellas las entidades.
Es decir, en el caso anterior cada empleado puede tener un cargo, pero un mismo cargo lo
pueden compartir varios empleados.
Uno a uno: Una entidad se relaciona únicamente con otra y viceversa. Por ejemplo, si
tuviésemos una entidad con distintos chasis y otra con matrículas deberíamos de determinar
que cada chasis solo puede tener una matrícula (y cada matrícula un chasis, ni más en ningún
caso).
Uno a varios o varios a uno: determina que un registro de una entidad puede estar
relacionado con varios de otra entidad, pero en esta entidad existir solo una vez. Como ha
sido en el caso anterior del trabajador del taller.
Varios a varios: determina que una entidad puede relacionarse con otra con ninguno o varios
registros y viceversa. Por ejemplo, en el taller un coche puede ser reparado por varios
mecánicos distintos y esos mecánicos pueden reparar varios coches distintos.
Claves: Es el atributo de una entidad, al que le aplicamos una restricción que lo distingue de
los demás registros (no permitiendo que el atributo específico se repita en la entidad) o le
aplica un vínculo (exactamente como comentábamos en las relaciones). Estos son los
distintos tipos:
Superclave: aplica una clave o restricción a varios atributos de la entidad, para así asegurarse
que en su conjunto no se repitan varias veces y así no poder entrar en dudas al querer
identificar un registro.
4
Clave externa o clave foránea: este campo tiene que estar estrictamente relacionado con la
clave primaria de otra entidad, para así exigir que exista previamente ese clave.
Anteriormente hemos hablado de ello cuando comentábamos que un empleado
indispensablemente tiene que tener un cargo (que lo hemos representado numéricamente),
por lo cual si intentamos darle un cargo inexistente el gestor de bases de datos nos devolvería
un error.
5
6
4. Normalización y Diccionario de Base de Datos
Normalización
Está en 1FN
Está en 2FN
Está en 1FN
Está en 2FN
Está en 3FN
Está en 1FN
Está en 3FN
7
Está en 1FN
Está en 2FN
Está en 3FN
Está en 1FN
Está en 2FN
Está en 1FN
Está en 2FN
Está en 3FN
Está en 1FN
Está en 3FN
8
Está en 1FN
Producto (idProd)
Está en 3FN
9
10
5. Implementación de la Base de Datos
MySQL es un software de código abierto para gestión de bases de datos relacionales, que
brinda un excelente rendimiento, flexibilidad y velocidad.
● Conectividad segura.
● Replicación
11
● Uso de tablas en disco b-tree para búsquedas rápidas con compresión de índice.
● En las últimas versiones, se permiten hasta 64 índices por tablas. Cada índice puede
consistir desde 1 a 16 columnas o partes de columnas. El máximo ancho de límite son
de 1000 bytes.
Ventajas:
mysql -u root -p
password:
12
drop database if exists Micromercado;
create database Micromercado;
13
primary key(idProd)
)engine=innodb;
7. Implementación de la Aplicación
Características principales de C#
Veamos algunas de las características del lenguaje C#, y así poder comprar con algunos más
parecidos a él como Java o C++.
Estas características pueden verse como una serie de ventajas del lenguaje de programación
C#.
14
● Escritura. En C# tienes que declarar los tipos de datos con las variables, además que
estas variables no pueden ser globales. De esta manera se reducen los errores de
compilación. Además, es un lenguaje orientado a objetos, así que obliga que todos
los métodos y propiedades estén dentro de una clase.
● Sistema de tipos unificado. Todos los tipos de datos sencillos de C# derivan de una
clase común llamada System.Object. De esta manera, la conversión de tipos sólo es
compatible entre los tipos más cercanos (números enteros con decimales, por
ejemplo), además de facilitar la creación de colecciones.
● CLR (Common Language Runtime). Es el núcleo de .NET, el motor que ejecuta las
aplicaciones programadas en C#, lo que ayuda a la integración del sistema operativo
o dlls externas.
15
compartidas con versiones nuevas. Pueden existir diferentes versiones de la misma
dll, simplificando la instalación del software.
● Integración con otros lenguajes. Cualquier lenguaje que se compile con .NET, como
la nueva versión de visual basic, puede aprovecharse para usar en tu proyecto.
Figura 1.
16
Fuente: Elaboración propia en base a Visual Studio 2017, 2019
Figura 2.
Figura 3.
Figura 4.
17
Fuente: Elaboración propia en base a Visual Studio 2017, 2019
Paso 1) Se debe crear la base de datos, para esto se debe ejecutar el XAMPP Control Panel.
Iniciar Apache y MySQL y luego Shell. Una vez que aparezca la pantalla del programa
iniciamos con “mysql -u root -p, y damos enter en el password” .
Creamos una base de datos con el nombre de “micromercado”, y entramos a crear las tablas
que necesitaremos más adelante para poder conectar con nuestra aplicación en C#.
Paso 2) Debemos buscar en Google: conector mysql para c#, ingresar al siguiente sitio:
18
Instalandolo como cualquier otro software.
Paso 3) Creamos un nuevo proyecto en C# (Visual Studio 2017), con el nombre de la base
de datos que se desea, en este caso es Proyecto1, seleccionamos “Aplicación de Windows
Forms (.NET Framework)”.
19
Paso 4) En el entorno de C# ir a la ventana de “Explorador de soluciones”, hacer click
derecho sobre “References”, elegir “Agregar referencias”, saldrá una ventana, elegir en la
parte de “Extensiones” y escoger la opción de “MySQL.Data”. Esto permite que la
aplicación pueda conectarse a una base de datos en MySQL.
20
Paso 5) Se crea una carpeta “Clases”. Después dentro de ésta carpeta se crea la clase
“Conexion”.
using MySql.Data.MySqlClient;
Aquí es donde se menciona a qué base de datos se desea conectar, el usuario y el password:
Bibliografía
21
https://www.gestiopolis.com/importancia-las-bases-datos-nivel-empresarial/
https://www.genbeta.com/desarrollo/fundamento-de-las-bases-de-datos-modelo-entidad-
relacion
https://es.wikipedia.org/wiki/Modelo_entidad-relaci%C3%B3n
https://hostingpedia.net/mysql.html
https://es.wikipedia.org/wiki/C_Sharp
https://lenguajesdeprogramacion.net/c-sharp/
https://www.hostingseguro.co/blog/que-es-mysql-conoce-algunos-de-sus-beneficios
22