S7 TP D - RELACIONES Y CONSULTAS MULTITABLAS EN LA BASE DE DATOS

Al crear una base de datos, el sentido común dicta que usamos tablas separadas para diferentes tipos de entidades. Algunos ejemplos son: clientes, pedidos, artículos, mensajes, etc ... Pero también necesitamos tener relaciones entre estas tablas. Por ejemplo, los clientes realizan pedidos y los pedidos contienen elementos. Estas relaciones deben ser representadas en la base de datos. Además, al buscar datos con SQL, necesitamos usar ciertos tipos de consultas JOIN para obtener lo que necesitamos.
Hay varios tipos de relaciones de base de datos. Hoy vamos a cubrir lo siguiente:
  • Relaciones de uno a uno
  • Relaciones de uno a muchos y muchas a una
  • Relaciones muchas a muchas
relaciones en sql

Las relaciones permiten evitar los datos redundantes, en una base de datos relacional todos los datos se almacenan y se accede a ellos por medio de relaciones.
Las relaciones que almacenan datos son llamadas  “relaciones base” y su implementación es  es llamada “tabla”


Las relaciones que se establecen entre los diferentes elementos de dos tablas en una base de datos relacional pueden ser de tres tipos distintos:

 1. Relación Uno a Varios

Ocurre cuando un registro de la tabla A puede tener mas de un registro asociado en la tabla B, mientras que, un registro de la tabla B posee como máximo un registro asociado en la tabla A.se establecen entre varias entidades de una tabla y una entidad de otra tabla. Un ejemplo sería una tabla de pluviómetros en la que se indicara el municipio en el que se encuentra. La relación sería entre un municipio y varios pluviómetros

2. Relación Varios a Varios
Ocurre cuando un registro de la tabla A puede tener mas de un registro asociado en la tabla B y, análogamente, un registro en la tabla B puede tener mas de un registro asociado en la tabla A.Cada registro de la tabla 1 puede estar enlazado con varios registros de la tabla 2 y viceversa. 

3. Relación Uno a Uno
Ambos campos comunes deben tener indice único. Esto significa que la propiedad indexado de estos campos debe tener "SI". Si ambos campos tienen un indice único Access crea una relación uno a uno.


consultas en sql

SELECT

Consulta de Ejemplo:

               SELECT * FROM tabla1, tabla2;
Con la consulta anterior mostrara todos los datos de la tabla1 y tabla2.
Consultando 2 tablas indicando mediante que campos se unirán y mostrara solo los registros que coincidan:

              SELECT * FROM tabla1, tabla2 WHERE campo1=campo2;



* UNION

El operador UNION se utiliza cuando se necesita combinar los resultados de dos consultas diferentes. Los resultados no tienen que tener ninguna vinculación entre ellos; se quiere mostrar todos los resultados juntos.

SELECT * FROM tabla1 UNION SELECT * FROM tabla2;

FROM

Esta cláusula permite indicar las tablas o vistas de las cuales vamos a obtener la información. De momento veremos ejemplos para obtener información de una sola tabla.Como se ha indicado anteriormente, también se pueden renombrar las tablas usando la instrucción “AS”.
SELECT * FROM Customers

WHERE

Especifica la condición de filtro de las filas devueltas. Se utiliza cuando no se desea que se devuelvan todas las filas de una tabla, sino sólo las que cumplen ciertas condiciones. Lo habitual es utilizar esta cláusula en la mayoría de las consultas.
"preciocompra='".$pre."',estado='".$est."' WHERE codlibro='".$cod."' ";
UPDATE
 Actualiza información de una tabla. 
UPDATE libros SET titulo='".$tit."',autor='".$aut."',fechacompra='".$fec."',";
DELETE
Borra filas de una tabla. Se corresponde con la “D”.
delete from libros where codlibro="'.$cod.'"';



Comentarios