Hola T!..tengo ganas de compartir un tema que me gusta mucho, que es la teoria de las bases de datos..Aclaro que el post es 100 % de mi autoria con imagenes sacadas de Google
Para empezar a definir este concepto, podemos decir que una BD (base de datos) es un registro, que justamente contiene datos, estos como elementos aislados que son no representan valor informativo, sin embargo, ordenados de manera significativa proveen toda la información que requerimos..
Bien, entonces para que sirve? Podemos decir que lo que hace es almacenar datos que ingresamos a traves de algun medio (como puede ser un programa) y mostrarlos de forma ordenada cada vez que lo deseamos...
___________________________________________________
Se los explico con un ejemplo..
¿Vieron cuándo van a hacerse socio de un videoclub y la chica que atiende, les pide sus datos (Nombre, DNI, etc)?
Bueno lo que está haciendo es ingresar sus datos en un programa (construido especificamente para videoclubs) para que se almacenen en la BD...Cuando van otro dia a alquilar una pelicula, la chica les pregunta su Apellido, lo ingresa a traves del programa y la BD le devuelve información...(acerca de que pelicula alquilaron, si la devolvieron, etc)...Entonces resumimos, que una base de datos sirve para el almacenamiento y devolución de datos.
Al haber definido como es usada, conviene aclarar sus partes...podemos decir que una BD..esta compuesta, muy básicamente, de Campos, Tablas y "Relaciones" (existen muchisimos mas elementos)
Campos..Son el lugar donde se ingresan y registran los datos; por ejemplo en el caso del videoclub un campo seria "Nombre" otro campo seria "DNI" ..etc.
Tienen que estar ordenados y no ser repetitivos..por ejemplo no poner el campo "Fecha de Nacimiento" y desde poner otro que sea "Edad"
Tablas.. Una tabla es un conjunto de campos, estas tablas dentro de una base de datos deben estar relacionadas...
________________________________________________________
Para explicarlo mejor sigamos con el ejemplo del videoclub...los datos DNI o Nombre, que ingresaron, deberian encontrarse en una tabla llamada por ej. "Datos_Cliente"..bien yo dije que cuando la chica del videoclub queria ver sus datos también le mostraba las peliculas alquiladas y si habian sido devueltas o no..estos elementos deben encontrarse en otra tabla que puede ser llamada "Alquileres"..esta tabla contendrá losv campos..DNI_Cliente..Numero_Pelicula..Nombre_Pelicula y Devuelta (que contendrá valores como "Si" o "No".....
_________________________________________________________
Para que todos estos datos se muestren en un conjunto, y no como elementos aislados, estas tablas deben estar relacionadas...
Y aqui aparecen dos conceptos...
Clave Primaria o PK (primary key) : Es aquel campo identificatorio de cada tabla, por lo que debe ser único, por ejemplo en el videoclub una clave primaria de la tabla "Datos_Cliente" es el DNI. Mientras que de la tabla "Alquileres" la PK es Numero_Pelicula.
Clave Foranea o FK (Foreign key): Es aquel campo que sirve para relacionarse con otra tabla.. a cada Clave Foranea le corresponde una clave primaria..En la tabla "Alquileres" la clave foranea es DNI_Cliente que se relaciona con la otra tabla la cual su PK es DNI...ok?
De esta manera las tablas se relacionan para devolver una unidad de información, sin datos dispersos ni inconsistencia y redundacia..
Ya explicado su composición hablare un poco de la arquitectura y su historia...
Antes de que existiera esta tecnologia, la única forma de acceder a información era a traves del procedimiento de compartir archivos..es decir se entraba a un disco duro se hacia click derecho en un archivo y se ponia "compartir" y listo eso era todo..este mecanismo traia arraigado problemas graves. como son la seguridad, el riesgo de inconsistencia y problemas de almacenamiento, entre otros..
Por lo que se implementó la tecnologia de motores de bases de datos y gestores de bases de datos..basados en una arquitectura Cliente-Servidor
Una arquitectura Cliente-Servidor esta constituida por varias maquinas o pc's (cliente) que le hacen peticiones a una maquina central (servidor)
El gestor de base de datos atiende o traduce estas peticiones y se las pasa al motor, para que devuelva la información requerida..
disculpen si no fui muy explicativo, estoy medio cansado
________________________________________________________________
Este tipo de implementación es mucho mas confiable, estable y seguro..ya que permite personalizar el tipo de información que se mostrará para cada cliente (a traves de perfiles)
Vamos con ejemplo para finalizar..
"Crear Post en Taringa." ---> se almacena en su base de datos
Ver el post ---> Se muestra la información que requerimos..
(explicado muy burdamente)
PD: Existen muchos tipos de gestores y motores de bases de datos..SQL Server, My Sql, Oracle, entre otros..yo particularmente uso el SQL Server que es de microsoft
Pueden bajar la versión express del motor y el gestor de acá
MOTOR: http://www.microsoft.com/downloads/es-es/details.aspx?familyid=58ce885d-508b-45c8-9fd3-118edd8e6fff&displaylang=es
Gestor (SQL Management Studio): http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=08E52AC2-1D62-45F6-9A4A-4B76A8564A2B&displaylang=es
Bueno amigos, este es el fin del post, espero que a alguien le haya servido, y tengan en cuenta que lo hice con mucho esfuerzo, asi que por favor no insulten ni hagan bardo...Nos vemos!!
Para empezar a definir este concepto, podemos decir que una BD (base de datos) es un registro, que justamente contiene datos, estos como elementos aislados que son no representan valor informativo, sin embargo, ordenados de manera significativa proveen toda la información que requerimos..
Bien, entonces para que sirve? Podemos decir que lo que hace es almacenar datos que ingresamos a traves de algun medio (como puede ser un programa) y mostrarlos de forma ordenada cada vez que lo deseamos...
___________________________________________________
Se los explico con un ejemplo..
¿Vieron cuándo van a hacerse socio de un videoclub y la chica que atiende, les pide sus datos (Nombre, DNI, etc)?
Bueno lo que está haciendo es ingresar sus datos en un programa (construido especificamente para videoclubs) para que se almacenen en la BD...Cuando van otro dia a alquilar una pelicula, la chica les pregunta su Apellido, lo ingresa a traves del programa y la BD le devuelve información...(acerca de que pelicula alquilaron, si la devolvieron, etc)...Entonces resumimos, que una base de datos sirve para el almacenamiento y devolución de datos.
Al haber definido como es usada, conviene aclarar sus partes...podemos decir que una BD..esta compuesta, muy básicamente, de Campos, Tablas y "Relaciones" (existen muchisimos mas elementos)
Campos..Son el lugar donde se ingresan y registran los datos; por ejemplo en el caso del videoclub un campo seria "Nombre" otro campo seria "DNI" ..etc.
Tienen que estar ordenados y no ser repetitivos..por ejemplo no poner el campo "Fecha de Nacimiento" y desde poner otro que sea "Edad"
Tablas.. Una tabla es un conjunto de campos, estas tablas dentro de una base de datos deben estar relacionadas...
________________________________________________________
Para explicarlo mejor sigamos con el ejemplo del videoclub...los datos DNI o Nombre, que ingresaron, deberian encontrarse en una tabla llamada por ej. "Datos_Cliente"..bien yo dije que cuando la chica del videoclub queria ver sus datos también le mostraba las peliculas alquiladas y si habian sido devueltas o no..estos elementos deben encontrarse en otra tabla que puede ser llamada "Alquileres"..esta tabla contendrá losv campos..DNI_Cliente..Numero_Pelicula..Nombre_Pelicula y Devuelta (que contendrá valores como "Si" o "No".....
_________________________________________________________
Para que todos estos datos se muestren en un conjunto, y no como elementos aislados, estas tablas deben estar relacionadas...
Y aqui aparecen dos conceptos...
Clave Primaria o PK (primary key) : Es aquel campo identificatorio de cada tabla, por lo que debe ser único, por ejemplo en el videoclub una clave primaria de la tabla "Datos_Cliente" es el DNI. Mientras que de la tabla "Alquileres" la PK es Numero_Pelicula.
Clave Foranea o FK (Foreign key): Es aquel campo que sirve para relacionarse con otra tabla.. a cada Clave Foranea le corresponde una clave primaria..En la tabla "Alquileres" la clave foranea es DNI_Cliente que se relaciona con la otra tabla la cual su PK es DNI...ok?
De esta manera las tablas se relacionan para devolver una unidad de información, sin datos dispersos ni inconsistencia y redundacia..
Ya explicado su composición hablare un poco de la arquitectura y su historia...
Antes de que existiera esta tecnologia, la única forma de acceder a información era a traves del procedimiento de compartir archivos..es decir se entraba a un disco duro se hacia click derecho en un archivo y se ponia "compartir" y listo eso era todo..este mecanismo traia arraigado problemas graves. como son la seguridad, el riesgo de inconsistencia y problemas de almacenamiento, entre otros..
Por lo que se implementó la tecnologia de motores de bases de datos y gestores de bases de datos..basados en una arquitectura Cliente-Servidor
Una arquitectura Cliente-Servidor esta constituida por varias maquinas o pc's (cliente) que le hacen peticiones a una maquina central (servidor)
El gestor de base de datos atiende o traduce estas peticiones y se las pasa al motor, para que devuelva la información requerida..
disculpen si no fui muy explicativo, estoy medio cansado
________________________________________________________________
Este tipo de implementación es mucho mas confiable, estable y seguro..ya que permite personalizar el tipo de información que se mostrará para cada cliente (a traves de perfiles)
Vamos con ejemplo para finalizar..
"Crear Post en Taringa." ---> se almacena en su base de datos
Ver el post ---> Se muestra la información que requerimos..
(explicado muy burdamente)
PD: Existen muchos tipos de gestores y motores de bases de datos..SQL Server, My Sql, Oracle, entre otros..yo particularmente uso el SQL Server que es de microsoft
Pueden bajar la versión express del motor y el gestor de acá
MOTOR: http://www.microsoft.com/downloads/es-es/details.aspx?familyid=58ce885d-508b-45c8-9fd3-118edd8e6fff&displaylang=es
Gestor (SQL Management Studio): http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=08E52AC2-1D62-45F6-9A4A-4B76A8564A2B&displaylang=es
Bueno amigos, este es el fin del post, espero que a alguien le haya servido, y tengan en cuenta que lo hice con mucho esfuerzo, asi que por favor no insulten ni hagan bardo...Nos vemos!!

