Académique Documents
Professionnel Documents
Culture Documents
Comenzare por explicar este documento, el cuál es una pequeña guía para aquellas personas que
se estén iniciando en la disciplina de Base de Datos, no obstante hare una introducción que para
mí es muy importante, para entender lo que es una base de datos, a la cuál me referiré en
adelante como (BD), aparte dentro de este documento tratare de dar tips, sobre aquello que me
ocasiono tener que realizar investigaciones intensas para ahorrarles tiempo y muchos dolores de
cabeza.
Una vez aclarado lo del párrafo anterior, iniciare con algunos conceptos tomados del “Libro” de
“Pressman Roger S.” (Ingeniería del Software un Enfoque Practico), haciéndoles una cordial
invitación a leerlo, pues es una excelente guía para tener una buena comprensión de lo que es una
BD, su importancia y sus aplicaciones dentro del mundo del software.
Para no hacer demasiado larga esta introducción y para terminar con el tema de Pressman
terminare por hacerles unas recomendaciones que me llamaron mucho la atención de este libro,
para aquellos que se deseen especializar en el tema, Pressman sugiere a los analíticos realizar las
siguientes acciones:
El libro sugiere que el analista comience haciendo preguntas de contrato libre, una serie de
preguntas que lleva a un entendimiento hacia el problema.
¿Cuál será el beneficio económico de una buena solución? ¿hay otro camino para la solución?
Las siguientes preguntas permiten que el analista comprenda mejor el problema y el cliente
exprese sus percepciones sobre la solución :
Estos son solo algunos ejemplos de lo que nos puede enseñar este libro pero no me puedo seguir
pues terminaría por hablar solo del libro. Les dejo algunos links.
Así terminamos con nuestra introducción.
www.shareware.com
www.internet.comp.risk
CAPITULO I
Primero para poder hablar de Base de Datos (BD) necesitamos que saber que es un “Dato”, un dato
son palabras o números y hasta símbolos, de información, que por sí solos no tienen ningún
significado, pero una vez unidos y estructurados si nos dicen algo tienen sentido y nos brindan
información, en si una BD es un conjunto, colección de datos organizados y relacionados entre sí,
ahora debemos saber que hay componentes en una BD uno de ellos es un:
Campo.- un campo es el área de almacenamiento la cual nos brinda la BD para almacenar datos de
un tipo específico, es decir si yo voy a determinar que mi campo es de tipo entero forzosamente voy
a tener que almacenar datos de tipo entero en ese campo, no voy a poder meter datos de tipo
carácter, flotante, etc. Tenemos otro elemento que es:
El Registro.- un registro es una colección de datos iguales o de diferentes tipos que están
relacionados, es decir para un registro, puede que los datos sean iguales pero también podemos
permitir que sean diferentes, algo muy importante de un registro es que es una colección de datos
relacionada. Por otra parte tenemos:
Ejemplo.
En este ejemplo podemos ver los tres tipos de elementos que aprendimos;
Campo, en este caso nuestro “Campo” es la “Matricula”, también tenemos el Campo Nombre,
Teléfono y Edad, en este ejemplo contamos con cuatro campos los cuales va a ser llenados por la
información que nosotros determinemos o que nos brinden. (recordar que deben de ser de un
mismo tipo de dato, int, char, float, etc.).
Registro, un registro sería una fila por ejemplo la 1, la cual lleva una matrícula(1), un nombre(Pedro),
teléfono(2273645) y una edad (19), en donde hay datos de distinto tipo que están relacionados.
(contamos con 3 registros).
4
Archivo, el archivo sería toda mi tabla, todo el conjunto de campos y registros, este archivo nos esta
proporcionado todo un conjunto de datos, el cual es el de alumnos, pero también podríamos crear
otro “Archivo” que se llamara “Materias”.
Si relacionamos estas dos tablas de archivos, cada matricula, materia y calificación con su respectivo
alumno, ¡¡¡¡¡Eureka!!! Tendríamos una “BASE DE DATOS”, en donde estamos almacenando la
información de cada uno de los alumnos, sin perder de vista que por sí solos tenemos elementos los
cuáles son: CAMPO, REGISTRO, ARCHIVO, que por ultimo me forman mí BASE DE DATOS.
En si BASE DE DATOS se trata de tomar información, una serie de datos y organizarlos para que
tengan sentido y su “Objetivo” es que podamos “consultar y actualizar esos datos”.
MODELO RELACIONAL
Un modelo de base de datos es, o mejor dicho, son conjuntos de ideas lógicas utilizadas para
representar las estructuras de las bases de datos es decir es aquello que nos permitiría plasmar
todo lo que serían los datos que va a tener la Base de Datos y poderlos visualizar de una manera
global y gráfica, para esto tenemos varios “Modelos”.
Veamos el “MODELO RELACIONAL” el cual nos permite visualizar la estructura de una BD y las
relaciones entre los datos, nos va a permitir ver todos los datos que constituyen nuestra BD pero
también la relación que hay entre cada uno de ellos y como es que interactúan entre sí.
Para esto necesitamos utilizar una herramienta la que nos va a permitir “Modelar”, es decir formar
o construir nuestra BD, (MODELAR=formar/construir).
5
Tenemos los DIAGRAMAS ENTIDAD RELACIÓN los cuales son una herramienta para modelar
nuestra BD y analizarla, es decir este modelo nos va a permitir visualizar de una manera gráfica
sencilla toda nuestra estructura de nuestra BD to lo que lo constituye, la información que
contiene y nos va a permitir trabajar en equipo con otras persona para poder analizar juntos una
BD.
Entidad
Entidad, objeto concreto o abstracto que figura en nuestra BD como: alumno, cliente, empresa,
proveedor etc. Con una única Entidad podemos representar varios objetos que pertenezcan a este,
en el caso alumnos hacemos referencia a varios alumnos.
Atributo
Atributo, los atributos son las características que definen o identifican una entidad. Estas pueden
ser muchas y el diseñador y el diseñador utiliza e implementa las que crea son más relevantes, es
una característica como: nombre, edad, domicilio, fecha etc.
Relación
Clave primaria PK
--
_____
__
La Clave primaria__o llave primaria PK (primary key) va a representar el atributo principal o una
clave primaria la--cuál es única y toda entidad debe de tener la suya, es decir este atributo nos
debe permitir identificar una entidad mediante un único número o un único código un ejemplo
podría ser el ID de un producto en un supermercado como el código de barras, simplemente
conociéndolo nosotros podemos saber que diferencia a un producto en específico.
Clave secundaria FK
--
__
__
Clave
-- secundaria o llave secundaria FK(foreign key), nos permite identificar una entidad externa en
otra este símbolo lo vamos a utilizar cuando estemos relacionando una entidad con otra entidad,
pero esto lo veremos mas adelante.
Por ultimo hay otros símbolos menos importantes los cuales se van a ir conociendo cuando se
vaya adquiriendo mas conocimiento en la materia. Ejemplo los símbolos de “Entidad débil”,
“Atributo dependiente o débil”.
7
Alumno
Carrera
ID
Clve Leng
Nom u
Dom
Profesor Materia
El modelo entidad-relación es un modelo conceptual que sirve para cualquier tipo de SGBD, en
cambio, el modelo relacional es un modelo lógico que sólo sirve para BD relacionales (y no para
jerárquicos, o Codasyl, por ejemplo). Todos los diseñadores y administradores de bases de datos
relacionales usan esquemas conceptuales entidad-relación porque se adaptan muy bien a este
modelo. Hay que tener en cuenta la diferencia de la palabra relación en ambos modelos. En el
modelo relacional una relación es una tabla mientras que en el entidad/relación es la asociación
que se produce entre dos entidades.
RELACIÓN (TABLA) Según el modelo relacional el elemento fundamental es lo que se conoce como
relación, aunque más habitualmente se le llama tabla. Se trata de una estructura formada por filas
y columnas que almacena los datos referentes a una determinada entidad o relación del mundo
real. Acerca de una tabla, además de su nombre, podemos distinguir lo siguiente: • Atributo
Representa una propiedad que posee esa tabla. Equivale al atributo del modelo E-R. Se
corresponde con la idea de campo o columna.
• Tupla Cada una de las filas de la tabla. Se corresponde con la idea de registro. Representa por
tanto cada elemento individual (ejemplar, ocurrencia) de esa tabla. • Dominio Un dominio
contiene todos los posibles valores que puede tomar un determinado atributo. Dos atributos
distintos pueden tener el mismo dominio. Un domino en realidad es un conjunto finito de valores
del mismo tipo. Los dominios poseen un nombre para poder referirnos a él y así poder ser
reutilizable en más de un atributo. • Grado Número de columnas de la tabla (número de
atributos). • Cardinalidad Número de tuplas de una tabla (número de filas). CLAVE • Clave
candidata Conjunto de atributos que identifican unívocamente cada tupla de la relación. Es decir
columnas cuyos valores no se repiten para esa tabla. • Clave primaria Clave candidata que se
escoge como identificador de las tuplas. Se elige como primaria la candidata que identifique mejor
a cada tupla en el contexto de la base de datos. Por ejemplo una campo con el DNI sería clave
candidata de una tabla de clientes, aunque si en esa relación existe un campo de código de cliente,
este sería mejor candidato para clave principal, porque es mejor identificador para ese contexto. •
10
Clave alternativa Cualquier clave candidata que no sea primaria. • Clave externa, ajena o foránea
Atributo cuyos valores coinciden con una clave candidata (normalmente primaria) de otra tabla.
LENGUAJE SQL
Ahora veremos el lenguaje SQL que es el que vamos a ocupar como principiantes en lo que es
BASE DE DATOS.
¿Qué es SQL?
Es un lenguaje estructurado de consulta, es decir es el lenguaje me va a permitir ver, crear,
manipular, definir, estructurar mi BD(base de datos), es un lenguaje que es universal, es decir lo
podemos utilizar en cualquier manejador de BD del Modelo Relacional, como puede ser MYSQL
SERVER, MARIA DB, SQ LITE, PostgreSQL, ORACLE etc. SGBD(manejadores de base de datos, por
sus siglas en inglés, Data Base Managment System,DBMS), hay muchos manejadores de SGBD.
Ahora SQL lo podemos dividir en dos;
La diferencia entre ellos es que el DDL, lo que me va a permitir es darle estructura, estructurar mi
base de datos y crearla, por ejemplo vamos a poder crear nuestras identidades, nuestros
atributos, la cardinalidad etc.
Algo muy importante que debemos tener en cuenta es, que no podemos utilizar un lenguaje de
manipulación de datos DML, sin haber utilizado antes uno de definición DDL.
CREATE nos sirve para crear bases de datos, tablas etc. Nos permite crear cualquier objeto
permitido por el gestor.
ALTER nos permite cambiarlas, modificarlas, etc. Altera la estructura de cualquier objeto permitido
por el gestor.
Algo que debemos tener en cuenta es que anteriormente usamos el Modelo Entidad Relación. En
sql le llamamos “MODELO RELACIONAL” es decir tus modelos tus diagramas tus tablas que hiciste
en sql lo vamos a llamar Modelo Relacional y lo que aprendimos anteriormente de entidad,
cardinalidad, mapeo etc. En sql se le da otro nombre, pero en sí es lo mismo. Ejemplo.
Entonces cuando nosotros estemos programando nuestras BD nos vamos a referir a las entidades
como tablas, a los atributos como campos etc. Esto lo tenemos que recordar para que sepamos a
que se refieren en el lenguaje sql de programación. La ventaja de sql es que es universal, las
instrucciones de programación son universales, no cambian.
Algo que nos debe de quedar muy claro también es que sql lo único que nos permite hacer es
crear nuestra base de datos, estructurarla y manipularla, cambiarla etc. Sin embargo no vamos a
poder hacer un ambiente grafico dentro de SQL, es por eso que sql se une con algunas
aplicaciones ya creadas en lenguajes que son para eso, aplicaciones con ambiente gráfico.
Ejemplos, managmentstudio, phpmyadmin etc.
Estas aplicaciones nos permiten visualizar de una manera interactiva lo que estamos creando.
Hasta este punto terminamos con la teoría y también ya casi terminamos este pequeño manual de
PRINCIPIOS DE BASE DE DATOS, pues si ya has dominado lo que se ha enseñado aquí, solo falta un
ultimo (y en mi caso gran dolor de cabeza y frustración), que voy a tratar de explicar, pues consiste
en la descarga, y hacer funcionar correctamente SQL y un servidor que instale (e hice que
corriera) en mí laptop), una aplicación que utilice para mi interface gráfica, el programa se llama
XAMPP, es muy recomendable no descargar SQL hasta después de haber descargado este servidor
para no duplicar descargas, y no tener que como en mi caso utilizar comandos en el cmd, para
poder ingresar y conectar el correcto SQLcon php.my.admin, la cual es mi interface gráfica.
Pero si en tu caso eres tan ignorante de la informática como lo soy yo, mas adelante (y si me da
tiempo ), dejare una pequeña guía de los pasos que realice para solucionar este problema, más no
mostrare los links, ni mostrare la extensa investigación que tuve que llevar a cabo para entender
un poco y solucionar el problema. Por ahora solo recomiendo seguir un tutorial de youtube para
instalar SQL sin olvidar que si vas a utilizar un servidor con aplicaciones primero realices ese paso,
ya sea con un tutorial o aplicando la técnica del tigre caído, para suplicar a tu profesor.
11