• Una base de datos o banco de datos (database), es un conjunto de
datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. (wikipedia).
• Es una colección de archivos interrelacionados, son creados con un
DBMS. El contenido de una base de datos engloba a la información concerniente (almacenadas en archivos) de una organización, de tal manera que los datos estén disponibles para los usuarios, una finalidad de la base de datos es eliminar la redundancia o al menos minimizarla. Los tres componentes principales de un sistema de base de datos son el hardware, el software DBMS y los datos a manejar, así como el personal encargado del manejo del sistema.
• También conocida como Database, la base de datos es un conjunto de
información que está almacenada en forma sistemática, de manera tal que los datos que la conforman puedan ser utilizados en forma fragmentada cuando sea necesario. (http://www.mastermagazine.info/termino/4012.php)
• (database). Almacén de datos relacionados con diferentes modos de
organización. Una base de datos representa algunos aspectos del mundo real, aquellos que le interesan al diseñador. Se diseña y almacena datos con un propósito específico. Con la palabra "datos" se hace referencia a hechos conocidos que pueden registrarse, como ser números telefónicos, direcciones, nombres, etc.
• Las bases de datos almacenan datos, permitiendo manipularlos
fácilmente y mostrarlos de diversas formas. El proceso de construir una base de datos es llamado diseño de base de datos.( http://www.alegsa.com.ar/Dic/base%20de%20datos.php)
MOTORES DE BASES DE DATOS
Actualmente esa al alcance de sistema operativos estandar para PC la
posibilidad de utilizar distintos motores de bases de datos, que brindan mayor seguridad en la información y posibilidades en lo que se refiere al manejo de los datos. Es factible utilizar Oracle, Informix, SQL Server como motores de base de datos, siendo nuestros programas "front end" del motor que se utilice. . Es posible implementar interfaces entre distintos sistemas de información ya que contamos con esa posibilidad en el diseño del sistema. Además hemos implementado varios standares de información para realizar interfaces.
ACCCES: Microsoft Access es un Sistema de gestión de base de datos
Relacional creado y modificado por Microsoft (DBMS) para uso personal de pequeñas organizaciones. Es un componente de la suite Microsoft Office aunque no se incluye en el paquete "básico". Una posibilidad adicional es la de crear ficheros con bases de datos que pueden ser consultados por otros programas. Generalidades Es un software de gran difusión entre pequeñas empresas (PYMES) cuyas bases de datos no requieren de excesiva potencia, ya que se integra perfectamente con el resto de aplicaciones de Microsoft y permite crear pequeñas aplicaciones con unos pocos conocimientos de programación. Tiene un sistema de seguridad de cifrado bastante primitivo y puede ser la respuesta a proyectos de programación de pequeño y mediano tamaño.
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 hace 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, por ejemplo, Access, MySQL, SQL Server, etc.
MYSQL: MySQL es un sistema de administración de bases de datos
(Database Management System, DBMS) para bases de datos relacionales. Así, MySQL no es más que una aplicación que permite gestionar archivos llamados de bases de datos o , lo que es lo mismo, U.
SQL SERVER: Es un sistema de gestión de bases de datos relacionales
(SGBD) basado en el lenguaje Transact-SQL, y específicamente en Sybase IQ, capaz de poner a disposición de muchos usuarios grandes cantidades de datos de manera simultánea, así como de tener más ventajas. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son Oracle, Sybase ASE, PostgreSQL, Interbase, Firebird o MySQL.
POSTGRESQL es un sistema de gestión de base de datos relacional
orientada a objetos de software libre, publicado bajo la licencia BSD. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es manejado por una sola compañía sino que es dirigido por una comunidad de desarrolladores y organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).
INTERBASE es un Sistema de Administración de Base de Datos
Relacionales (RDBMS) desarrollada y comercializada por la compañía Borland Software Corporation y actualmente desarrollada por su filial CodeGear. Interbase se destaca de otros DBMS's por su bajo consumo de recursos, su casi nula necesidad de administración y su arquitectura multi-generacional. InterBase corre en plataformas Linux, Microsoft Windows y Sistemas Operativos Solaris.
FIREBIRD es una base de datos relacional que ofrece muchas
características de SQL ANSI estándar y que funciona en Linux, Windows, MacOSX y una variedad de plataformas UNIX. Firebird ofrece una concurrencia excelente, alto rendimiento y un poderoso lenguaje de procedimientos almacenados y disparadores. Ha estado usándose en producción bajo varios nombres desde 1981. El Proyecto Firebird es un proyecto independiente de programadores de C y C++, asesores técnicos y colaboradores que desarrollan y mejoran a Firebird, la base de datos relacional basada en el código fuente liberado por Inprise Corp (ahora conocida como Borland Software Corp) el 25 de julio de 2000.
TIPOS DE BASES DATABASE
Bases de datos jerárquicas: Éstas son bases de datos que, como su
nombre indica, 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 es llamado raíz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos.
Base de datos de red: Éste es un modelo ligeramente distinto del
jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida 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.
Base de datos relacional: Éste es el modelo más utilizado en la
actualidad para modelar problemas reales y administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José (California), no tardó en consolidarse como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales creadas por Edgar Frank Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla), que representarían las tuplas, 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 esporádico de la base de datos. La información puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la información.
Bases de datos multidimensionales: Son bases de datos ideadas
para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos multidimensional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.
Bases de datos orientadas a objetos: Este modelo, bastante
reciente, y propio de los modelos informáticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento). Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:
• Encapsulación - Propiedad que permite ocultar la información al
resto de los objetos, impidiendo así accesos incorrectos o conflictos. • Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases. • Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir
operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones. Bases de datos documentales: Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.
Base de datos deductivas: Un sistema de base de datos deductivas,
es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. También las bases de datos deductivas son llamadas base de datos lógica, a raíz de que se basan en lógica matemática.
Gestión de bases de datos distribuida: La base de datos está
almacenada en varias computadoras conectadas en red. Surgen debido a la existencia física de organismos descentralizados. Esto les da la capacidad de unir las bases de datos de cada localidad y acceder así a distintas universidades, sucursales de tiendas, etc.
ELEMENTOS DE LAS BASES DE DATOS
Tablas: Se refiere al tipo de modelado de datos, donde se guardan los
datos recogidos por un programa. Su estructura general se asemeja a la vista general de un programa de Hoja de cálculo.
Las tablas se componen de dos estructuras:
• Campo: Corresponde al nombre de la columna. Debe ser único y
además de tener un tipo de dato asociado. • Registro: Corresponde a cada fila que compone la tabla. Allí se componen los datos y los registros. Eventualmente pueden ser nulos en su almacenamientos.
En la definición de cada campo, debe existir un nombre único, con su
tipo de dato correspondiente. Esto es útil a la hora de manejar varios campos en la tabla, ya que cada nombre de campo debe ser distinto entre sí. A los campos se les puede asignar, además, propiedades especiales que afectan a los registros insertados. El campo puede ser definido como índice o autoincrementable, lo cual permite que los datos de ese campo cambien solos o sean el principal indicar a la hora de ordenar los datos contenidos. Cada tabla creada debe tener un nombre único en la cada Base de Datos, haciéndola accesible mediante su nombre o su seudónimo (Alias) (dependiendo del tipo de base de datos elegida).
Indice de una base de datos es una estructura de datos que mejora la
velocidad de las operaciones, permitiendo un rápido acceso a los registros de una tabla. Al aumentar drásticamente la velocidad de acceso, se suelen usar sobre aquellos campos sobre los cuales se hagan frecuentes búsquedas. El índice tiene un funcionamiento similar al índice de un libro, guardando parejas de elementos: el elemento que se desea indexar y su posición en la base de datos. Para buscar un elemento que esté indexado, sólo hay que buscar en el índice dicho elemento para, una vez encontrado, devolver el registro que se encuentre en la posición marcada por el índice. Los índices pueden ser creados usando una o más columnas, proporcionando la base tanto para búsquedas rápidas al azar como de un ordenado acceso a registros eficiente.
Una clave externa (FK) es una columna o combinación de columnas
que se utiliza para establecer y exigir un vínculo entre los datos de dos tablas. Puede crear una clave externa mediante la definición de una restricción FOREIGN KEY cuando cree o modifique una tabla. En una referencia de clave externa, se crea un vínculo entre dos tablas cuando las columnas de una de ellas hacen referencia a las columnas de la otra que contienen el valor de clave principal. Esta columna se convierte en una clave externa para la segunda tabla.
Por ejemplo, la tabla Sales.SalesOrderHeader de la base de datos
AdventureWorks tiene un vínculo a la tabla Sales.SalesPerson porque existe una relación lógica entre pedidos de ventas y personal de ventas. La columna SalesPersonID de la tabla SalesOrderHeader coincide con la columna de clave principal de la tabla SalesPerson. La columna SalesPersonID de la tabla SalesOrderHeader es la clave externa para la tabla SalesPerson.
PK: Es un concepto que surgió con la normalización de bases de datos, y
ser refiere a la unicidad de los registros en una tabla, de forma que debe existir una clave que haga único y diferente a cada registro en particular, así pues, para que exista una PK esta no debe estar duplicada, se permite que la llave primaria ser forme de varios campos, por ejemplo: si es una tabla de alumnos la matricula es candidata a ser pk, si es el padre de contribuyentes, podría establecerse el PK sobre el RFC, suponiendo que el campo RFC se duplique para dos contribuyentes, entonces es necesario agregar un campo que los diferencie, como la homoclave. En tablas donde no es posible establecer una PK “natura”, simplemente se crea un campo numérico consecutivo que va incrementándose en el orden que vayan agregandose los registros. Una tala puede vivir bien sin tener PK. Busca mas información en AltaVista en “bases de datos” o “normalización”
RESTRICCIONES Cuando aplicamos las metodologías de desarrollo de
base de datos nos encontramos que los modelos conceptuales son cada vez más ricos semánticamente hablando y esto implica que son capaces de recoger con mayor precisión las especificaciones del dominio. El problema surge cuando queremos mantener esta semántica en la siguiente fase de la metodología: la fase lógica; donde la mayoría de las metodologías coinciden en la utilización del modelo relacional para transformar el esquema conceptual en un esquema cercano a la implementación. Para ello se aplican un conjunto de reglas de transformación. Estas reglas básicas sólo especifican la transformación de los elementos más simples y sencillos del modelo conceptual. En general, esto implica una pérdida de semántica significativa que lleva al diseñador a controlar y chequear las restricciones de integridad de la base de datos.
Las restricciones de integridad garantizan que el contenido de la base de
datos es conforme con las reglas establecidas para presentar el Universo del Discurso. La integridad de una base de datos significa la existencia de dos componentes importantes que son la exactitud (CORRECTNESS) y la completitud (COMPLETENESS). Es decir, que la integridad de base de datos garantiza que todos los datos son correctos (validos) y relevantes.
LENGUAJE DE CONSULTA ESTRUCTURADO, en informática, un sub
lenguaje utilizado en bases de datos para consultar, actualizar y manejar bases de datos relacionales. Se deriva de un proyecto de investigación de IBM, que creó el "lenguaje estructurado de consulta en inglés" (SEQUEL) en la década de los setenta. El SQL es un estándar aceptado en productos de bases de datos. A pesar de que no se trata de un lenguaje de programación como puedan serlo C o Pascal, puede utilizarse en el diseño de consultas interactivas y puede incluirse en una aplicación como un conjunto de instrucciones de manejo de datos. El SQL estándar cuenta también con elementos destinados a la definición, modificación, control y protección de los datos. Tanto los usuarios técnicos como los que no lo son pueden utilizar este lenguaje.