BASE DE DATOS Una base de datos es una colección de archivos relacionados que almacenan una representación abstracta del dominio de un problema del mundo real cuyo manejo resulta de intereses para una organización, como los datos los datos correspondientes a una información acerca del mismo. Tanto la representación como los datos están sujetos a una serie de restricciones, las cuales forman parte de un dominio del problema y cuya descripción esta también almacenada en esos ficheros. (3) Es una entidad en la cual se pueden almacenar de manera estructurada, con la menor redundancia posible. Diferentes programas de diferentes usuarios deben poder utilizar estos datos Es un conjunto de archivos vinculados que se administran como una sola unidad1 Una base de datos es una recopilación de información relativa a un asunto o propósito particular, como el seguimiento de pedidos de clientes o el mantenimiento de una colección de música. Si la base de datos no está almacenada en un equipo, o sólo están instaladas partes de la misma, puede que deba hacer un seguimiento de información procedente de varias fuentes en orden a coordinar y organizar la base de datos. (4) GESTORES DE BASE DE DATOS Son un tipo de software muy específico y dedicado a servir de interfaz entre base de datos, el usuario y las aplicaciones que la utilizan (5)
My SQL:
Es un sistema de gestión de bases de datos relacional, fue creada por la empresa sueca MySQL AB, la cual tiene el copyright del código fuente del servidor SQL, así como también de la marca. MySQL es un software de código abierto, licenciado bajo la GPL de la GNU, aunque MySQL AB distribuye una versión comercial, en lo único que se diferencia de la versión libre, es en el soporte técnico que se ofrece, y la posibilidad de integrar este gestor en un software propietario, ya que de otra manera, se vulneraría la licencia GPL. El lenguaje de programación que utiliza MySQL es Structured Query Language (SQL) que fue desarrollado por IBM en 1981 y desde entonces es utilizado de forma generalizada en las bases de datos relacionales. MySQL surgió alrededor de la década del 90, Michael Windenis comenzó a usar mSQL para conectar tablas usando sus propias rutinas de bajo nivel (ISAM). Tras unas primeras pruebas, llegó a la conclusión de que mSQL no era lo bastante flexible ni rápido para lo
que necesitaba, por lo que tuvo que desarrollar nuevas funciones. Esto resulto en una interfaz SQL a su base de datos, totalmente compatible a mSQL. El origen del nombre MySQL no se sabe con certeza de donde proviene, por una lado se dice que en sus librerías han llevado el prefijo “my” durante los diez últimos años, por otra parte, la hija de uno de los desarrolladores se llama My. Así que no está claramente definido cual de estas dos causas han dado lugar al nombre de este conocido gestor de bases de datos. (7)
SQL SERVER:
Es un conjunto de objetos eficientemente almacenados. Los objetos donde se almacena la información se denominan tablas, y éstas a su vez están compuestas de filas y columnas. En el centro de SQL Server está el motor de SQL Server, el cual procesa los comandos de la base de datos. Los procesos se ejecutan dentro del sistema operativo y entienden nicamente de conexiones y de sentencias SQL. SQL Server incluye herramientas para la administración de los recursos que el ordenador nos proporciona y los gestiona para un mejor rendimiento de la base de datos. (6)
Historia:
La historia de SQL (que se pronuncia deletreando en inglés las letras que lo componen, es decir "ese-cu-ele" y no "siquel" como se oye a menudo) empieza en 1974 con la definición, por parte de Donald Chamberlin y de otras personas que trabajaban en los laboratorios de investigación de IBM, de un lenguaje para la especificación de las características de las bases de datos que adoptaban el modelo relacional. Este lenguaje se llamaba SEQUEL (Structured English Query Language) y se implementó en un prototipo llamado SEQUEL-XRM entre 1974 y 1975. Las experimentaciones con ese prototipo condujeron, entre 1976 y 1977, a una revisión del lenguaje (SEQUEL/2), que a partir de ese momento cambió de nombre por motivos legales, convirtiéndose en SQL. El prototipo (System R), basado en este lenguaje, se adoptó y utilizó internamente en IBM y lo adoptaron algunos de sus clientes elegidos. Gracias al éxito de este sistema, que no estaba todavía comercializado, también otras compañías empezaron a desarrollar sus productos relacionales basados en SQL. A partir de 1981, IBM comenzó a entregar sus productos relacionales y en 1983 empezó a vender DB2. En el curso de los años ochenta, numerosas compañías (por ejemplo Oracle y Sybase, sólo por citar algunos) comercializaron productos basados en SQL, que se convierte en el estándar industrial de hecho por lo que respecta a las bases de datos relacionales. En 1986, el ANSI adoptó SQL (sustancialmente adoptó el dialecto SQL de IBM) como estándar para los lenguajes relacionales y en 1987 se
transfomó en estándar ISO. Esta versión del estándar va con el nombre de SQL/86. En los años siguientes, éste ha sufrido diversas revisiones que han conducido primero a la versión SQL/89 y, posteriormente, a la actual SQL/92. El hecho de tener un estándar definido por un lenguaje para bases de datos relacionales abre potencialmente el camino a la intercomunicabilidad entre todos los productos que se basan en él. Desde el punto de vista práctico, por desgracia las cosas fueron de otro modo. Efectivamente, en general cada productor adopta e implementa en la propia base de datos sólo el corazón del lenguaje SQL (el así llamado Entry level o al máximo el Intermediate level), extendiéndolo de manera individual según la propia visión que cada cual tenga del mundo de las bases de datos. Actualmente, está en marcha un proceso de revisión del lenguaje por parte de los comités ANSI e ISO, que debería terminar en la definición de lo que en este momento se conoce como SQL3. (14)
ORACLE:
Oracle es básicamente una herramienta cliente/servidor para la gestión de Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran potencia que tiene y su elevado precio hacen que sólo se vea en empresas muy grandes y multinacionales, por norma general. En el desarrollo de páginas web pasa lo mismo: como es un sistema muy caro no está tan extendido como otras bases de datos (14)
Historia:
Oracle surge a finales el año 1970 del nombre de Relational Software a partir de un estudio sobre SGBD (Sistemas Gestores de Base de Datos) Computer World definió este estudio como uno de los más completos jamás escritos sobre bases de datos. Usaba la filosofía de las bases de datos relacionales, algo que por aquella época era todavía desconocido. La tecnología Oracle se encuentra prácticamente en todas las industrias alrededor del mundo. Oracle es la primera compañía de software que desarrolla e implementa software para empresas 100 por ciento activado por Internet a través de toda su línea de productos: base de datos, aplicaciones comerciales y herramientas de desarrollo de aplicaciones y soporte de decisiones. Oracle garantiza el funcionamiento de sus bases de datos, que en caso de caidas del servidor compensa economicamente con cifras cercanas a las 7 cifras. PG ADABAS: Es una base de datos de lista invertida sistema de gestión de propiedad de Software AG. It is used in applications that require very (10)
high volumes of data processing or in OLAP . Se utiliza en aplicaciones que requieren de muy altos volúmenes de procesamiento de datos o en OLAP. (9)
ACCESS:
Es un sistema de gestión de base de datos que utiliza por defecto el motor de base de datos Microsoft Jet. Con esto quiero decir que Access en realidad es una interfaz preparada para gestionar cualquier base de datos, no sólo una base de datos Access. Los sistemas Windows disponen de ODBC, que es una pasarela para poder acceder a cualquier base de datos. A través de ODBC podemos conectarnos a cualquier base de datos utilizando un lenguaje de programación o una aplicación como Access. (12)
(12)
TIPOS DE BASE DE DATOS
Bases de datos analíticas:
Estas son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones. (12)
Bases de datos operacionales:
Estas son bases de datos más dinámicas, orientadas a almacenar información que es modificada con el tiempo, permitiendo operaciones como actualización y adición de datos, además de las operaciones fundamentales de consulta. Además de la clasificación por la función de las bases de datos, éstas también se pueden clasificar de acuerdo a su modelo de administración de datos. Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la información), así como de las metodologías para almacenar y recuperar información de esos contenedores. Los modelos de datos no son cosas físicas; son abstracciones que permiten la implementación de un sistema eficiente de base de datos, por lo general se refieren a algoritmos, y conceptos matemáticos. Algunos modelos con frecuencia utilizados en las bases de datos: Modelos de bases de datos (12)
Bases de datos jerárquicas:
Estas son bases de datos que, como su nombre lo indican, almacenan su información en una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El nodo que no tiene padres se le conoce como raíz, y a los nodos que no tienen hijos se les conoce como hojas. Una de las principales limitaciones de este modelo, es su incapacidad de representar eficientemente la redundancia de datos. . Así, el modelo jerárquico puede representar dos tipos de relaciones entre los datos: relaciones de uno a uno y relaciones de uno a muchos. En el primer tipo se dice que existe una relación de uno a uno si el padre de la estructura de información tiene un solo hijo y viceversa, si el hijo tiene solamente un padre. En el segundo tipo se dice que la relación es de uno a muchos si el padre tiene más de un hijo, aunque cada hijo tenga un solo padre. Inconveniente del modelo jerárquico Relación maestro-alumno, donde un maestro tiene varios alumnos, pero un alumno también tiene varios maestros, uno para cada clase. En este caso, si la información estuviera representada en forma jerárquica donde el padre es el maestro y el alumno es el hijo, la información del alumno tendrá que duplicarse para cada uno de los maestros. Otra dificultad que presenta el modelo jerárquico de representación de datos es respecto a las bajas. En este caso, si se desea dar de baja a un padre, esto necesariamente implicará dar de baja a todos y cada uno de los hijos que dependen de este padre. (12)
Bases de datos de red:
Este es un modelo ligeramente distinto del jerárquico, en donde su diferencia fundamental es la modificación del concepto de un nodo, permitiendo que un mismo nodo tenga varios padres (algo no permitido en el modelo jerárquico). Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos, pero aun así, la dificultad que significa administrar la información en una base de datos de red, ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales. El modelo de red evita redundancia en la información, a través de la incorporación de un tipo de registro denominado el conector, que en
este caso pueden ser las calificaciones que obtuvieron los alumnos de cada profesor. La dificultad surge al manejar las conexiones o ligas entre los registros y sus correspondientes registros conectores. (12)
Bases de datos relacionales:
Este es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Cuando fue creado a finales de los años sesenta, no tardó en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental se basa en el concepto de "tablas", que a su vez se componen de registros (las filas de una tabla) y campos (las columnas de una tabla). En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar para un usuario casual de la base de datos. La información puede ser recuperada o almacenada por medio de "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información. Bases de datos orientadas a objetos Este modelo, bastante reciente, y propio de los propio de los modelos informaticos y orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento)
ELEMENTOS DE LAS BASE DE DATOS 1. Entidad – Persona, lugar, objeto u evento para el cual se obtiene y mantiene datos. Ejemplo: Cliente, Orden, Producto, Suplidor. 2. Campo: Atributo o característica de la entidad. Ejemplo: en la entidad Cliente, algunos campos pueden ser Nombre, Apellido, Dirección. 3.
Record: Es una colección o grupo de campos que describen un miembro de una entidad. Ejemplo, el record de un cliente, o de un producto.
4.
Archivo: Es un grupo de records que contienen datos sobre una entidad en específico. Ejemplo: el archivo de clientes, es archivo de productos, o de empleados.
5.
Llave o "Key": Es un campo que se usa para localizar, acceder o identificar un record en específico. Hay cuatro tipos de “key”: a.
"Primary key": es un campo u combinación de campos que en forma única y mínima identifica un miembro en particular de una entidad. Es único porque no hay dos miembros con el mismo "key". Es mínimo porque contiene tan solo la información necesaria para identificar al miembro de la entidad. Si el "primary key" es una combinación de varios campos se conoce como “multivalue key".
b.
"Candidate key": cualquier campo que pueda servir como "primary key". Para seleccionar al "primary key", se escoge el campo que tenga menos datos y sea más fácil de usar. Cualquier campo que no es un "primary key" o un "candidate key" se llama "nonkey field."
c. "Foreign key": es un cambo en un archivo que debe parear con el valor del "primary key" de otro archivo para que se pueda establecer una relación o “link” entre ambos archivos. d. "Secondary key": es un campo u combinación de campos que se puede usa para acceder records. Los "secondary keys" no necesitan ser únicos. Ejemplo: nombre del cliente, código postal (zipcode). (11)6. -Tablas: son el "corazón" de la Base de datos y aparecen en una hoja electrónica formada por filas (informes) y columnas (campos). El informe contiene una voz de la Base de datos, mientras que el campo contiene cada uno de los detalles.
Consultas (Query): Son "herramientas" que sirven para "eliminar" todos los datos que no interesan haciendo aparecer únicamente aquellos que interesan. -Máscaras o formularios: permiten la visualización y la gestión de los datos contenidos en las tablas y en las consultas. Normalmente representan la interface principal entre el programa y el usuario para que de este modo resulte más fácil la introducción de los datos.
Report o informes:
Recopilan los datos de las tablas o consultas para permitir su impresión o análisis, facilitando la individualización de los datos más improtantes. -Macros: automatizan las funciones de la base de datos -Módulos: registran de Access Basic (programación). (13)
Restricciones:
Una restricción es una condición que obliga el cumplimiento de ciertas condiciones en la base de datos. Algunas no son determinadas por los usuarios, sino que son inherentemente definidas por el simple hecho de que la base de datos sea relacional. Algunas otras restricciones las puede definir el usuario, por ejemplo, usar un campo con valores enteros entre 1 y 10. Las restricciones proveen un método de implementar reglas en la base de datos. Las restricciones restringen los datos que pueden ser almacenados en las tablas. Usualmente se definen usando expresiones que dan como resultado un valor booleano, indicando si los datos satisfacen la restricción o no. Las restricciones no son parte formal del modelo relacional, pero son incluidas porque juegan el rol de organizar mejor los datos. Las restricciones son muy discutidas junto con los conceptos relacionales.
SQL
SQL es una herramienta para organizar, gestionar y recuperar datos almacenados en una base de datos. Es la abreviatura de Strutured Query Languaje (lenguaje estructurado de consulta ) y funciona con un tipo de base de datos especifico. Las bases de datos relacionales. SQL además de ser una herramienta de consulta y recuperación
(1)http://www.pdfcoke.com/doc/6609101/Base-de-Datos (2) http://es.kioskea.net/contents/bdd/bddintro.php3 (3) http://www.pdfcoke.com/doc/8452365/Sistemas-Gestores-de-Basesde-Datos (4) http://www.duiops.net/manuales/access/access1.htm (5)www.uaem.mx/posgrado/mcruz/cursos/miic/MySQL.pdf (6)www.it.uc3m.es/spickin/docencia/comsoft/resources/curso_SQL.pdf
(7)www.formaselect.com/curso/experto-en-sql-server2000/Introduccion-a-SQL-Server%202000.pdf (8)www.uaem.mx/posgrado/mcruz/cursos/miic/oracle.pdf (9) http://paginadigital.cultura.com.ar/articulos/2006/2006seg/tecnologia22/acess-lunes-corta080107.asp (10)http://translate.google.es/translate_s?q=que+es+ADABAS&hl=es &rlz=1B3GGGL_esCO315CO315&um=1&ie=UTF8&sl=es&tl=en&tq=is+ADABAS&ei=kYuSYqPE5LcMY_b4d8E&sa=X&oi=clir&ct=search_link (11) http://www.mailxmail.com/curso/informatica/access/capitulo2.htm (12)http://mx.geocities.com/vic_omar/bd.htm (13) http://www.mitecnologico.com/Main/BaseDeDatosRelacional (14) www.iessanvicente.com/colaboraciones/oracle.pdf