jueves, 24 de marzo de 2011

TAREA DE COMPUTACION

¿Qué son las bases de datos?



Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar fácilmente. A continuación te presentamos una guía que te explicará el concepto y características de las bases de datos.





El término de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA. Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada.





Desde el punto de vista informático, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos.





Cada base de datos se compone de una o más tablas que guarda un conjunto de datos. Cada tabla tiene una o más columnas y filas. Las columnas guardan una parte de la información sobre cada elemento que queramos guardar en la tabla, cada fila de la tabla conforma un registro.





Definición de base de datos





Se define una base de datos como una serie de datos organizados y relacionados entre sí, los cuales son recolectados y explotados por los sistemas de información de una empresa o negocio en particular.





Características





Entre las principales características de los sistemas de base de datos podemos mencionar:









  • Independencia lógica y física de los datos.




  • Redundancia mínima.




  • Acceso concurrente por parte de múltiples usuarios.




  • Integridad de los datos.




  • Consultas complejas optimizadas.




  • Seguridad de acceso y auditoría.




  • Respaldo y recuperación.




  • Acceso a través de lenguajes de programación estándar.




Sistema de Gestión de Base de Datos (SGBD)





Los Sistemas de Gestión de Base de Datos (en inglés DataBase Management System) son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.





Ventajas de las bases de datos





Control sobre la redundancia de datos:





Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, además de provocar la falta de consistencia de datos.





En los sistemas de bases de datos todos estos ficheros están integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos.





Consistencia de datos:





Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato está almacenado una sola vez, cualquier actualización se debe realizar sólo una vez, y está disponible para todos los usuarios inmediatamente. Si un dato está duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes.





Compartición de datos:





En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estén autorizados.





Mantenimiento de estándares:





Gracias a la integración es más fácil respetar los estándares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estos estándares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estándares de documentación, procedimientos de actualización y también reglas de acceso.





Mejora en la integridad de datos:





La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas.





Mejora en la seguridad:





La seguridad de la base de datos es la protección de la base de datos frente a usuarios no autorizados. Sin unas buenas medidas de seguridad, la integración de datos en los sistemas de bases de datos hace que éstos sean más vulnerables que en los sistemas de ficheros.





Mejora en la accesibilidad a los datos:





Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicación que realice tal tarea.





Mejora en la productividad:





El SGBD proporciona muchas de las funciones estándar que el programador necesita escribir en un sistema de ficheros. A nivel básico, el SGBD proporciona todas las rutinas de manejo de ficheros típicas de los programas de aplicación.





El hecho de disponer de estas funciones permite al programador centrarse mejor en la función específica requerida por los usuarios, sin tener que preocuparse de los detalles de implementación de bajo nivel.





Mejora en el mantenimiento:





En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los programas de aplicación que los manejan.





Esto hace que los programas sean dependientes de los datos, de modo que un cambio en su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios importantes en los programas cuyos datos se ven afectados.





Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos.





Aumento de la concurrencia:





En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder simultáneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de modo que se pierda información o se pierda la integridad. La mayoría de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas de este tipo.





Mejora en los servicios de copias de seguridad:





Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer copias de seguridad cada día, y si se produce algún fallo, utilizar estas copias para restaurarlos.





En este caso, todo el trabajo realizado sobre los datos desde que se hizo la última copia de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.





Desventajas de las bases de datos





Complejidad:





Los SGBD son conjuntos de programas que pueden llegar a ser complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder realizar un buen uso de ellos.





Coste del equipamiento adicional:





Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir más espacio de almacenamiento. Además, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una máquina más grande o una máquina que se dedique solamente al SGBD. Todo esto hará que la implantación de un sistema de bases de datos sea más cara.





Vulnerable a los fallos:





El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos que puedan producirse. Es por ello que deben tenerse copias de seguridad (Backup).





Tipos de Campos





Cada Sistema de Base de Datos posee tipos de campos que pueden ser similares o diferentes. Entre los más comunes podemos nombrar:









  • Numérico: entre los diferentes tipos de campos numéricos podemos encontrar enteros “sin decimales” y reales “decimales”.




  • Booleanos: poseen dos estados: Verdadero “Si” y Falso “No”.




  • Memos: son campos alfanuméricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados.




  • Fechas: almacenan fechas facilitando posteriormente su explotación. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los días entre una fecha y otra.




  • Alfanuméricos: contienen cifras y letras. Presentan una longitud limitada (255 caracteres).




  • Autoincrementables: son campos numéricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta: Servir de identificador ya que resultan exclusivos de un registro.




Tipos de Base de Datos





Entre los diferentes tipos de base de datos, podemos encontrar los siguientes:









  • MySql: es una base de datos con licencia GPL basada en un servidor. Se caracteriza por su rapidez. No es recomendable usar para grandes volúmenes de datos.








  • PostgreSql y Oracle: Son sistemas de base de datos poderosos. Administra muy bien grandes cantidades de datos, y suelen ser utilizadas en intranets y sistemas de gran calibre.




  • Access: Es una base de datos desarrollada por Microsoft. Esta base de datos, debe ser creada bajo el programa access, el cual crea un archivo .mdb con la estructura ya explicada.




  • Microsoft SQL Server: es una base de datos más potente que access desarrollada por Microsoft. Se utiliza para manejar grandes volúmenes de informaciones.




Modelo entidad-relación





Los diagramas o modelos entidad-relación (denominado por su siglas, ERD “Diagram Entity relationship”) son una herramienta para el modelado de datos de un sistema de información. Estos modelos expresan entidades relevantes para un sistema de información, sus inter-relaciones y propiedades.









Cardinalidad de las Relaciones





El diseño de relaciones entre las tablas de una base de datos puede ser la siguiente:









  • Relaciones de uno a uno: una instancia de la entidad A se relaciona con una y solamente una de la entidad B.




  • Relaciones de uno a muchos: cada instancia de la entidad A se relaciona con varias instancias de la entidad B.




  • Relaciones de muchos a muchos: cualquier instancia de la entidad A se relaciona con cualquier instancia de la entidad B.




Estructura de una Base de Datos





Una base de datos, a fin de ordenar la información de manera lógica, posee un orden que debe ser cumplido para acceder a la información de manera coherente. Cada base de datos contiene una o más tablas, que cumplen la función de contener los campos.





En el siguiente ejemplo mostramos una tabla “comentarios” que contiene 4 campos.









Los datos quedarían organizados como mostramos en siguiente ejemplo:









Por consiguiente una base de datos posee el siguiente orden jerárquico:









  • Tablas




  • Campos




  • Registros




  • Lenguaje SQL




El lenguaje SQL es el más universal en los sistemas de base de datos. Este lenguaje nos permite realizar consultas a nuestras bases de datos para mostrar, insertar, actualizar y borrar datos.





A continuación veremos un ejemplo de ellos:









  • Mostrar: para mostrar los registros se utiliza la instrucción Select. Select * From comentarios.




  • Insertar: los registros pueden ser introducidos a partir de sentencias que emplean la instrucción Insert. Insert Into comentarios (titulo, texto, fecha) Values ('saludos', 'como esta', '22-10-2007')




  • Borrar: Para borrar un registro se utiliza la instrucción Delete. En este caso debemos especificar cual o cuales son los registros que queremos borrar. Es por ello necesario establecer una selección que se llevara a cabo mediante la cláusula Where. Delete From comentarios Where id='1'.




  • Actualizar: para actualizar los registros se utiliza la instrucción Update. Como para el caso de Delete, necesitamos especificar por medio de Where cuáles son los registros en los que queremos hacer efectivas nuestras modificaciones. Además, tendremos que especificar cuáles son los nuevos valores de los campos que deseamos actualizar. Update comentarios Set titulo='Mi Primer Comentario' Where id='1'.




TIPOS DE BASE DE DATOS:





Esencialmente, existen dos tipos de bases de datos:

-Flot-file: tipo Excel, en donde todos los datos relacionados entre ellos se sitúan en una única tabla con el consiguiente problema que cada noticia común a diversos informes debe repetirse para cada uno de ellos.

-Vínculos: como Access, en donde se utilizan varias tablas vinculadas entre ellas.


Vínculos.- Un vínculo permite introducir información de una tabla en el informe de otra a través de un identificador (Id). Las ventajas que ofrece una base de datos vinculada son diferentes:

-Ahorro de tiempo, ya que los mismos datos se introducen una sola vez

-Ahorro de espacio, ya que la base de datos tiene dimensiones más reducidas

-Reducción de errores determinados por la introducción de datos

Para crear una relación entre dos tablas se debe:

-Abrir la base de datos, mientras que las tablas deben estar cerradas

-Elejir Herramientas Relaciones

-En la ventana Mostrar tabla que se abre, elegir las tablas deseadas y hacer click sobre el botón Agregar (al finalizar, hacer click sobre el botón Cerrar)

-Arrastrar uno de los campos implicados en la relación a la tabla deseada.





Tipos de Base de Datos





Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se esté manejando, la utilidad de las mismas o las necesidades que satisfagan.





Según la variabilidad de los datos almacenados





Bases de datos estáticas





Éstas 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.





Bases de datos dinámicas





Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización, borrado y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de un supermercado, una farmacia, un videoclub o una empresa;





Según el contenido





Bases de datos bibliográficas





Solo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro típico de una base de datos bibliográfica contiene información sobre el autor, fecha de publicación, editorial, título, edición, de una determinada publicación, etc. Puede contener un resumen o extracto de la publicación original, pero nunca el texto completo, porque si no, estaríamos en presencia de una base de datos a texto completo (o de fuentes primarias —ver más abajo). Como su nombre lo indica, el contenido son cifras o números. Por ejemplo, una colección de resultados de análisis de laboratorio, entre otras.




Bases de datos de texto completo





Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una colección de revistas científicas.





Directorios





Un ejemplo son las guías telefónicas en formato electrónico.





Bases de datos o "bibliotecas" de información química o biológica





Son bases de datos que almacenan diferentes tipos de información proveniente de la química, las ciencias de la vida o médicas. Se pueden considerar en varios subtipos:









  • Las que almacenan secuencias de nucleótidos o proteínas.




  • Las bases de datos de rutas metabólicas.




  • Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomoléculas-




  • Bases de datos clínicas.




  • Bases de datos bibliográficas (biológicas, químicas, médicas y de otros campos): PubChem, Medline, EBSCOhost.




Modelos de bases de datos





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 los métodos 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:





Bases de datos jerárquicas





Artículo principal: Base de datos jerárquica





É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





Artículo principal: 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.





Bases de datos transaccionales





Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.





Bases de datos relacionales





Artículo principal: Modelo relacional





Artículo principal: Base de datos relacional





Éste es el modelo 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 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.





El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.





Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos.





Durante los años 80 la aparición de dBASE produjo una revolución en los lenguajes de programación y sistemas de administración de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión.





Bases de datos multidimensionales





Artículo principal: Base de datos multidimensional





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 relacional 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.





[editar] Bases de datos orientadas a objetos





Artículo principal: Base de datos orientada 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.





SQL:2003, es el estándar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la compatibilidad con SQL92.





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.





Bases de datos deductivas





Un sistema de base de datos deductiva, 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. Las bases de datos deductivas son también llamadas bases de datos lógicas, a raíz de que se basa en lógica matemática.





Gestión de bases de datos distribuida (SGBD)





la base de datos y el software SGBD pueden estar distribuidos en múltiples sitios conectados por una red. Hay de dos tipos:





1. Distribuidos homogéneos: utilizan el mismo SGBD en múltiples sitios.





2. Distribuidos heterogéneos: Da lugar a los SGBD federados o sistemas multibase de datos en los que los SGBD participantes tienen cierto grado de autonomía local y tienen acceso a varias bases de datos autónomas preexistentes almacenados en los SGBD, muchos de estos emplean una arquitectura cliente-servidor.





Estas 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étera.





ELEMENTOS DE UNA BASE DE DATOS





Asistente para la base de datos.- Haciendo click sobre el icono con la "varita mágica" se abre una ventana donde aparecen diversos modelos de asistentes, entre los cuales existe la posibilidad de escoger el que más le interese (por ejemplo, "Inventario doméstico"). Es el programa quien realiza automáticamente todas las estructuras necesarias tales como las tablas, máscaras, consultas, etc. Los asistentes pueden utilizarse también como punto de partida par su diseño principal e integrarlo después en otras tablas, consultas, etc. Es en realidad, un pequeño programa que coloca unas preguntas en sucesión a las cuales debemos responder sobre lo que deseamos realizar.

Base de datos en blanco.- Seleccionado esta opción tras abrir el programa se nos pregunta dónde deseamos guardar la base de datos y con qué nombre. Tras esto, debe hacer click sobre Crear y se abrirá la ventana Database, que contiene los seis tipos de objetos que caracterizan la estructura de Access:



Vemos qué significan :

-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).

Las tablas, informes, formularios y consultas aparecen en diversos momentos, pero están vinculados entre ellos. Las tablas representan el centro de cada actividad: el resto de objetos interactúan con los datos indicados en las tablas.

















Los elementos básicos de una base de datos son:
entidades (entities)
campos (fields)
records
archivos (files)
llaves (keys)

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).