Primer Proyecto de Computacion Fase 1
Primer Proyecto de Computacion Fase 1
Primer Proyecto de Computacion Fase 1
Catedra: Computación
Integrantes:
1
Índice
Introducción-------------------------------------------------------------------------3
Detalle de trabajo individual:--------------------------------------------------
Definición y propósito de una base de datos
Propósito de una Base de Datos:
Historia y evolución de las bases de datos
Modelo entidad-relación (ER)
Tipos de relaciones
Claves primarias y foráneas
Componentes de un sistema de gestión de bases de datos
(DBMS)
Lenguaje de Consulta Estructurado(SQL)--------------------------
MySQL
Tipos de Campos
CREATE DATABASE
CREATE TABLE
SELECT FROM
INSERT INTO
UPDATE
DELETE
Uso de Where
Operadores relacionales/comparación:
Operadores lógicos:
Funciones básicas de Mysql
Funciones de agregación:
Funciones matemáticas:
2
Funciones de texto:
Funciones de fecha/hora:
Diagrama Entidad Relación
Export de la base de datos
Comentario personal
Referencias: e-links
3
Introducción
4
Detalle de trabajo individual:
Me responsabilice de realizar la
investigación sobre la introducción a
bases de datos, definición y propósito de
una base de datos, modelo entidad-
relación, tipos de relaciones, claves
primarias y foráneas y hasta
componentes de un sistema de gestión
de bases de datos.
5
Melanie Mishell González Piche
6
María Renee Alejandra
Cabrera Mancilla
Me encargué de realizar la
investigación sobre el Lenguaje de
consulta estructurado (SQL),
introducción a MySQL, tipos de
campos, CREATE DATABASE,
CREATE TABLE, SELECT FROM,
INSERT INTO, UPDATE, DELETE,
también hice la caratula, índice, introducción y de unir todo el trabajo.
7
Midora Guicell Soto Batres
8
Josué Estuardo Herrera Villatoro
9
Definición y propósito de una base de datos
Una base de datos es una colección organizada de datos, generalmente
almacenados y accesibles electrónicamente desde un sistema informático. Las
bases de datos pueden ser de diversos tipos, incluyendo relacionales, no
relacionales, jerárquicas, de red, y más. Las bases de datos relacionales, que
utilizan tablas para almacenar datos, son las más comunes y emplean el lenguaje
SQL (Structured Query Language) para la gestión y manipulación de los datos.
10
Años 1970: Modelo Relacional
Edgar F. Codd: Publica su trabajo seminal sobre el modelo relacional en 1970,
proponiendo una forma de organizar datos en tablas bidimensionales con
relaciones bien definidas.
-SQL: Desarrollo del Structured Query Language (SQL) como el estándar de
lenguaje para interactuar con bases de datos relacionales.
Años 1980-1990: DBMS Comerciales y OLTP
Comercialización: Lanzamiento de sistemas de gestión de bases de datos
comerciales como Oracle, DB2 y Microsoft SQL Server.
OLTP: Sistemas de procesamiento de transacciones en línea (OLTP) que
soportan aplicaciones transaccionales en tiempo real.
Años 2000-Presente: Big Data y NoSQL
Big Data: Incremento en la cantidad y complejidad de los datos, dando lugar a
tecnologías de big data como Hadoop y Spark.
NoSQL: Desarrollo de bases de datos NoSQL (p. ej., MongoDB, Cassandra) que
soportan datos no estructurados y esquemas flexibles, adecuados para
aplicaciones modernas como redes sociales y análisis de grandes volúmenes de
datos.
11
Tipos de relaciones
En el modelo ER, las relaciones pueden ser de varios tipos, dependiendo de cómo
las entidades están asociadas entre sí:
Uno a Uno (1:1): Cada entidad de un tipo está asociada con una sola entidad de
otro tipo. Ejemplo: Cada persona tiene un pasaporte, y cada pasaporte pertenece
a una sola persona.
Uno a Muchos (1: N): Una entidad de un tipo puede estar asociada con múltiples
entidades de otro tipo. Ejemplo: Un profesor puede enseñar múltiples cursos, pero
cada curso tiene un solo profesor.
Muchos a Muchos (M: N): Múltiples entidades de un tipo pueden estar asociadas
con múltiples entidades de otro tipo. Ejemplo: Los estudiantes pueden inscribirse
en varios cursos, y cada curso puede tener varios estudiantes.
12
5. Seguridad y Control de Acceso: Protege los datos contra accesos no
autorizados y define permisos para diferentes usuarios.
6. Copia de Seguridad y Recuperación: Proporciona mecanismos para realizar
copias de seguridad de los datos y recuperar información en caso de fallos.
7. Interfaces de Usuario: Herramientas gráficas o de línea de comandos para
interactuar con el sistema de bases de datos.
MySQL
Es el sistema de gestión de bases de datos relacional más extendido en la
actualidad al estar basado en código abierto. Cuenta con una doble licencia, por
13
una parte, es de código abierto, y la otra, una versión comercial gestionada por la
compañía Oracle.
La mayoría de usuarios prefieren usar principalmente MySQL como su
herramienta de gestión de bases de datos, aunque también existe Oracle,
Microsoft SQL y Access, entre otros.
Características de MySQL
Trabaja con bases de datos relacionales, es decir, utiliza tablas múltiples que se
interconectan entre sí para almacenar la información y organizarla debidamente.
- Arquitectura cliente y servidor: clientes y servidores se comunican entre sí
de manera diferenciada para mejorar el rendimiento.
- Compatibilidad con SQL: MySQL ofrece plena compatibilidad.
- Vistas: Se puede configurar vistas personalizadas, en bases de datos
grandes las vistas se hacen un recurso indispensable.
- Procedimientos almacenados: no procesa las tablas directamente, sino que
lo hace a través de procedimientos almacenadas lo que incrementa la
eficacia.
- Desencadenantes: Puede automatizar ciertas tareas dentro de la base de
datos.
- Transacciones: Actuación de diversas operaciones en la base de datos
como un dispositivo. Ejemplo si el monitor falla el sistema preservara la
integridad de la base de datos resguardando la información.
Tipos de Campos
4 Tipos de Datos en MySQL
1. Numérico
TINYINT: permite números desde -128 hasta 127. Si se define
como UNSIGNED (sin signo) permite números desde 0 hasta 225
INT: Permite números desde -2147483648 hasta 2147483647.Si
se define como UNSIGNED (sin signo) permite números desde 0
hasta 4294967295.
DECIMAL: Permite almacenar números decimales de punto fijo
grandes, por lo que sus cálculos son exactos.
FLOAT: Permite almacenar números decimales de punto fijo
grandes, por lo que sus cálculos son exactos.
2. Fecha y marca temporal
DATE: Permite almacenar una fecha con el formato YYYY-MM-DD (4
dígitos para el año, 2 dígitos para el mes y 2 dígitos para el día).
DATETIME: Permite almacenar fecha y hora con el formato YYYY-
MM-DD HH:MM:SS (igual que el campo DATE solo con el agregado
14
de 2 dígitos para las horas, 2 dígitos para los minutos y 2 dígitos
para los segundos).
YEAR: Permite almacenar el año con el formato YYYY (4 dígitos
para los años).
TIME: Permite almacenar la hora con el formato HH:MM:SS
3. Cadena
VARCHAR: Permite almacenar una cadena de datos (caracteres,
números y caracteres especiales) con longitud variable. La longitud
máxima es de 255.
TEXT: Permite almacenar una cadena con una longitud máxima de
16,777,215 caracteres.
SET: Permite definir una lista de posibles valores que pueden
almacenarse. La longitud máxima es de 64. Los valores posibles se
pueden combinar.
LONGBLOB: Permite almacenar un BLOB de longitud máxima de
4.294,967,925 bytes.
4. Espacial:
POINT: Permite almacenar un punto.
LINESTRING: Permite almacenar una cadena de puntos
POLYGON: Permite almacenar un polígono
CREATE DATABASE
Crea una nueva base de datos.
CREATE TABLE
Crea una nueva tabla.
SELECT FROM
Especifica las tablas o consultas que contienen los daros que se usaran en la
cláusula SELECT.
INSERT INTO
Inserta la información a una base de datos.
UPDATE
Actualiza la información de una base de datos.
DELETE
Borra la información de una base de datos
Uso de Where
Where es una cláusula de Mysql, es fundamental para especificar condiciones que
deben cumplir en las filas que se desea seleccionar, eliminar, insertar o actualizar
en otra tabla ya que permite filtrar datos según los criterios exactos y es muy útil
para operaciones de consulta y para modificar datos precisos.
15
Operadores relacionales/comparación:
Son muy importante para el uso de la cláusula where. Estos sirven para comparar
datos numéricos y serie de caracteres lógicos, el resultado de esa comparación
puede ser verdadera o falsa y puede utilizarse para tomar referencia al flujo del
programa, determinan que filas de datos tienen que ser filtradas o seleccionadas.
Operadores lógicos:
Sirven para construir consultas específicas y más completas al realizar base de
datos, ayuda para seleccionar datos requeridos. Permiten cambiar de manera
rápida condiciones simples y complejas capaz de gestionar la información
almacenada.
1. Like: es utilizado para hacer una comparación de un valor con un
patrón de texto usando comodines. Se puede utilizar para búsquedas
de un patrón de texto siguiendo una secuencia.
2. Between: es utilizado para para hacer selección de valores dentro
de un rango especifico. Se puede utilizar para filtrar valores
numéricos dentro del rango especifico.
3. IN: es utilizado para verificar que el valor este dentro del conjunto de
valores específicos. se usa para comprobar que un valor este
contenido en una lista.
4. Is Null: es utilizado para verificar que un valor es nulo, o sea que
dicho valor no tiene ningún valor en él. Es bueno para evaluar
valores nulos en la base de datos.
5. Is Not Null: es utilizado para verificar que el valor no es nulo y ver
que contiene un valor en él. Funciona para filtrar registros basados
en la presencia de valores.
16
2. Funciones matemáticas:
FLOOR: esta función nos devuelve un entero más grande, pequeño o igual.
MOD: esta función nos da lo que queda de la división de dos números.
ABS: esta función nos da el valor absoluto de un número.
COS: Su propio nombre lo dice, es la función que calcula el coseno de un ángulo.
ATAN: esta función nos sirve para encontrar el arco tangente y nos devuelve el
ángulo en radianes.
3. Funciones de texto:
LOWER: esta función convierte un texto en minúsculas.
UPPER: esta función convierte un texto a mayúsculas.
CONCAT: esta función entre laza varios textos juntos.
TRIM: esta función elimina los espacios en blanco y algunos caracteres
específicos que se encuentran al principio y al final del texto.
LOCATE: esta función busca la posición de una subcadena adentro de un texto.
4. Funciones de fecha/hora:
DAYNAME: esta función recupera la fecha exacta ya dada.
TIMEDIFF: esta función calcula la diferencia que hay entre dos fechas u hora.
YEAR: esta función nos sirve para capturar datos o partes específicas de una hora
u fecha.
ADDTIME: esta función sirve para sumarle o restarle tiempo a una hora o fecha.
TIME_TO_SEC: esta función hace que el tiempo se convierta en segundos y, al
contrario.
17
Diagrama Entidad Relación
18
Export de la base de datos
19
Comentario personal
Pues para mí, tuve una experiencia muy interesante ya que supe cómo trabajar en
equipo, también he aprendido lo que es el lenguaje de consulta en SQL, que cada
base de datos tiene su función, ya que es muy importante saberlo.
Haber trabajado en este proyecto con personas las cuales no conozco su forma de
trabajar y realizar las cosas fue una experiencia nueva, que me ayudo a aprender
a trabajar con personas diferentes, saliendo de mi zona de confort. Nos costó
ponernos de acuerdo en un principio, pero luego nos apoyamos y terminamos el
proyecto con éxito.
20
Josué Estuardo Herrera Villatoro
Trabajar en este proyecto grupal ha sido una experiencia muy encantadora, me
permitió conocer mejor a mis compañeros y aprender sobre sus habilidades cada
miembro del equipo aporto algo único y juntos logramos complementar nuestras
fortalezas y debilidades.
21
Referencias: e-links
https://openwebinars.net/blog/que-es-mysql/
https://universidadeuropea.com/blog/lenguaje-programacion-sql/
https://www.laescueladelsql.com/sql-clausula-where/
https://blog.hubspot.es/website/tipos-de-datos-mysql
22