M2 - Bases de dades / Apunts UF4 : Practica 6
Exercici 1
- Creeu el tipus adreça amb els atributs: carrer varchar2(50) ciutat varchar2(25) i codi_postal varchar2(5)
- Creeu el tipus adreça_niuada com taula d'adreça.
- Creeu la taula persones amb els atributs: Id number(3), cognoms varchar2(25) adreça adreça_niuada (taula niuada).
- Mostra l'estructura del tipus adreça_niuada i de la taula persones.
- Afegiu 2 registres a persones (Id=1 i Id=2 )amb varies adreces a la taula niuada.
- Seleccioneu tots els registres de persones.
- Comproveu si està permès accedir a una columna de la taula niuada
- Feu una consulta estàndard per recuperar totes les adreces de la persona amb Id=1.
- Mostreu només les adreces de la persona amb Id=2.
- Obteniu una adreça concreta d'una de les ciutats (la que vulgueu) de la persona amb Id=1.
- afegiu una nova adreça per a la persona amb Id=2.
Exercici 2
Supongamos que queremos almacenar la información de clientes, y que hay clientes que tienen 3 móviles (el móvil de su trabajo, su móvil particular y otro móvil de otra compañía que le ofrece buenos descuentos en llamadas) Id_cli Nombre 1 Francisco Apelli Dirección Población Provincia teléfono do Pérez sol madrid madrid 91345655 En el modelo E/R la solución óptima sería crear una relación que sea cliente-movil y que contenga el id_cliente y su número de móvil. Id_cli móvil 1 654555555 1 666543211 1 699767676 Las BBDD orientadas a objetos brindan la posibilidad de crear un tipo de objeto. Crear un tipo objeto llamado telefono con dos atributos Tipo varchar(30) Numero number Crear una tabla tipo llamada listin basada en el tipo objeto, para añadir la funcionalidad de múltiples valores. Crear la tabla clientes con los campos Id_cli number Nombre varchar(30) Apellido varchar(30) Dirección varchar(30) Población varchar(30) Provincia varchar(30) Telefonos ,siendo teléfonos de tipo listin, añade la tabla anidada teléfonos que se almacena como tel_tab.
Inserta 3 registros, con 3 teléfonos cada uno. Selecciona todos los clientes Lista la vista user_nested_tables Lista todos los teléfonos del cliente 3, usando el operador TABLE. Actualiza la tabla clientes cambiando los números de teléfono del cliente 1 por : 'fijo',934444444 'movil personal',65555555 'movilempresa',644444444 Visualizar todos los teléfonos de todos los clientes Visualizar el nombre, id , tipo de teléfono, número de teléfono de todos los teléfonos de todos los clientes