Supresión de tablas:
DROP TABLE: suprime una tabla de la base de datos. Cada usuario puede borrar sus propias tablas, pero solo el administrador o algún usuario con el privilegio "DROP ANY TABLE" puede borrar las tablas de otro usuario. Al suprimir una tabla también se suprimen los índices y los privilegios asociados a ella. Las vistas y los sinónimos creados a partir de esta tabla dejan de funcionar pero siguen existiendo en la base de datos por tanto deberíamos eliminarlos.
Ejemplo:
DROP TABLE [USUARIO].NOMBRETABLA [CASCADE CONSTRAINTS];
TRUNCATE: permite suprimir todas las filas de una tabla y liberar el espacio ocupado para otros usos sin que reaparezca la definición de la tabla de la base de datos. Una orden TRUNCATE no se puede anular, como tampoco activa disparadores DELETE.
TRUNCATE TABLE [USUARIO.]NOMBRETABLA [{DROP | REUSE} STORAGE];
Modificación de tablas:
Se modifican las tablas de dos formas: Cambiando la definición de una columna (MODIFY) ó añadiendo una columna a una tabla existente (ADD):
Formato:
ALTER TABLE NOMBRETABLA
{[ADD (COLUMNA [,COLUMNA]…)]
[MODIFY (COLUMNA [,COLUMNA]…)]
[ADD CONSTRAINT RESTRICCION]
[DROP CONSTRAINT RESTRICCION]};
ADD= Añade una columna o mas al final de una tabla.
MODIFY= Modifica una o mas columnas existentes en la tabla.
ADD CONSTRAINT= Añade una restricción a la definición de la tabla.
DROP CONSTRAINT= Elimina una restricción de la tabla.
A la hora de añadir una columna a una tabla hay que tener en cuenta:
DROP TABLE: suprime una tabla de la base de datos. Cada usuario puede borrar sus propias tablas, pero solo el administrador o algún usuario con el privilegio "DROP ANY TABLE" puede borrar las tablas de otro usuario. Al suprimir una tabla también se suprimen los índices y los privilegios asociados a ella. Las vistas y los sinónimos creados a partir de esta tabla dejan de funcionar pero siguen existiendo en la base de datos por tanto deberíamos eliminarlos.
Ejemplo:
DROP TABLE [USUARIO].NOMBRETABLA [CASCADE CONSTRAINTS];
TRUNCATE: permite suprimir todas las filas de una tabla y liberar el espacio ocupado para otros usos sin que reaparezca la definición de la tabla de la base de datos. Una orden TRUNCATE no se puede anular, como tampoco activa disparadores DELETE.
TRUNCATE TABLE [USUARIO.]NOMBRETABLA [{DROP | REUSE} STORAGE];
Modificación de tablas:
Se modifican las tablas de dos formas: Cambiando la definición de una columna (MODIFY) ó añadiendo una columna a una tabla existente (ADD):
Formato:
ALTER TABLE NOMBRETABLA
{[ADD (COLUMNA [,COLUMNA]…)]
[MODIFY (COLUMNA [,COLUMNA]…)]
[ADD CONSTRAINT RESTRICCION]
[DROP CONSTRAINT RESTRICCION]};
ADD= Añade una columna o mas al final de una tabla.
MODIFY= Modifica una o mas columnas existentes en la tabla.
ADD CONSTRAINT= Añade una restricción a la definición de la tabla.
DROP CONSTRAINT= Elimina una restricción de la tabla.
A la hora de añadir una columna a una tabla hay que tener en cuenta:
- Si la columna no esta definida como NOT NULL se le puede añadir en cualquier momento.
- Si la columna esta definida como NOT NULL se pueden seguir estos pasos:
- Se añade una columna sin especificar NOT NULL.
- Se da valor a la columna para cada una de las filas.
- Se modifica la columna NOT NULL.
Al modificar una columna de duna tabla se han de tener en cuenta:
- Se puede aumentar la longitud de una columna en cualquier momento.
- Es posible aumentar o disminuir el numero de posiciones decimales en una columna de tipo NUMBER.
- Si la columna es NULL en todas las filas de la tabla, se puede disminuir la longitud y modificar el tipo de dato
- La opción MODIFY… NOT NULL solo será posible cuando la tabla no contenga ninguna fila con valor nulo en la columna que se modifica.
Bases de datos Relacionales en Access
Una base de datos relacional permite la utilización simultánea de datos procedentes de más de una tabla .
Al hacer uso de las relaciones, se evita la duplicidad de datos , ahorrando memoria y espacio en el disco , aumentando lavelocidad de ejecución y facilitando al usuario/a el trabajo con tablas.
Para conseguir una correcta base de datos relacional es imprescindible realizar un estudio previo del diseño de la base de datos.
Para poder relacionar tablas entre sí se deberá especificar un campo en común que contenga el mismo valor en las dos tablas y dicho campo será clave principal en una de ellas.
Las tablas se relacionan de dos a dos, donde una de ellas será la tabla principal de la que parte la relación y la otra será la tabla secundaria destino de la relación.
Se pueden distinguir tres tipos de relaciones:
Relación Uno a Uno : Cuando un registro de una tabla sólo puede estar relacionado con un único registro de la otra tabla y viceversa .
Por ejemplo: tenemos dos tablas una con los datos de diferentes poblaciones y otra con una lista de Alcaldes, una población sólo puede tener un alcalde, y un alcalde lo será únicamente de una población.
Relación Uno a Varios : Cuando un registro de una tabla (tabla secundaria) sólo puede estar relacionado con un único registro de la otra tabla (tabla principal) y un registro de la otra tabla (tabla principal) puede tener más de un registro relacionado en la primera tabla (tabla secundaria).
Por ejemplo: tenemos dos tablas una con los datos de diferentes poblaciones y otra con los habitantes, una población puede tener más de un habitante, pero un habitante pertenecerá (estará empadronado) en una única población.
Relación Varios a Varios : Cuando un registro de una tabla puede estar relacionado con más de un registro de la otra tabla y viceversa .
Por ejemplo: tenemos dos tablas una con los datos de clientes y otra con los artículos que se venden en la empresa, una cliente podrá realizar un pedido con varios artículos, y un artículo podrá ser vendido a más de un cliente.
Las relaciones varios a varios se suelen representar definiendo una tabla intermedia entre las dos tablas. Siguiendo el ejemplo anterior sería definir una tabla lineas de pedido relacionada con clientes y con artículos.
La integridad referencial es un sistema de reglas que utiliza Access2000 para asegurarse que las relaciones entre registros de tablas relacionadas son válidas y que no se borren o cambien datos relacionados de forma accidental.
Al exigir integridad referencial en una relación le estamos diciendo a Access2000 que no nos deje introducir datos en la tabla secundaria si previamente no se han introducido en la tabla principal .
Por ejemplo: siguiendo con el ejemplo anterior del tipo de relación Uno a Varios, no nos dejará introducir un habitante a una población si dicha ciudad no existe en la tabla de Poblaciones.
La integridad referencial dispone de dos acciones:
Actualizar registros en cascada : Cuando se cambie el valor del campo de la tabla principal, automáticamente cambiarán los valores de sus registros relacionados en la tabla secundaria.
Por ejemplo: Si cambiamos el nombre de la población Onteniente por Ontinyent en la tabla de poblaciones, automáticamente todos los habitantes de Onteniente se cambiarán a Ontinyent.
Eliminar registros en cascada : Cuando se elimina un registro de la tabla principal se borrarán también los registros relacionados en la tabla secundaria.Por ejemplo: Si borramos la población Onteniente en la tabla de poblaciones, automáticamente todos los habitantes de Onteniente se borrarán de la tabla de habitantes.
No hay comentarios:
Publicar un comentario