Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Practica N° 05
Normalmente se define luego este campo como clave primaria. Para establecer que
un campo autoincremente sus valores automáticamente, éste debe ser de tipo serial:
Hasta ahora, al ingresar registros, colocamos el nombre de todos los campos antes de
los valores; es posible ingresar valores para algunos de los campos de la tabla, pero
recuerde que al ingresar los valores debemos tener en cuenta los campos que
detallamos y el orden en que lo hacemos. Cuando un campo es de tipo serial no es
necesario ingresar valor para él, porque se inserta automáticamente tomando el
último valor como referencia, o 1 si es el primero.
Para ingresar registros omitimos el campo definido como serial, por ejemplo:
reneluque.milaulas.com 1
Administración de Base de Datos Computación e Informática
Ejercicio 1:
Trabajamos con la tabla "libros" de una librería.
Note que al detallar los campos para los cuales ingresaremos valores hemos omitido
"codigo"; cuando un campo es serial no es necesario ingresar valor para él, porque
se genera automáticamente. Recuerde que si es obligatorio ingresar los datos de
todos los campos que se detallan y en el mismo orden.
reneluque.milaulas.com 2
Administración de Base de Datos Computación e Informática
9. Insertamos un nuevo libro e indicamos el valor que debe tomar el campo serial:
Luego si insertamos otro registro sin indicar el valor del campo serial el valor
generado es el siguiente del último generado:
Ejercicio 2:
Una tienda de venta de películas en DVD almacena información sobre sus películas
en una tabla llamada "peliculas".
reneluque.milaulas.com 3
Administración de Base de Datos Computación e Informática
7- Elimine todas las películas cuya duración sea igual a 120 minutos.
Para borrar todos los registros de una tabla se usa "delete" sin condición "where".
También podemos eliminar todos los registros de una tabla con "truncate table". Por
ejemplo, queremos vaciar la tabla "libros", usamos:
La sentencia "truncate table" vacía la tabla (elimina todos los registros) y vuelve a crear
la tabla con la misma estructura.
La diferencia con "drop table" es que esta sentencia borra la tabla, "truncate table" la
vacía. La diferencia con "delete" es la velocidad, es más rápido "truncate table" que
"delete" (se nota cuando la cantidad de registros es muy grande) ya que éste borra los
registros uno a uno.
Por ejemplo, recuperamos los registros de la tabla "libros" ordenados por el título:
reneluque.milaulas.com 4
Administración de Base de Datos Computación e Informática
También podemos colocar el número de orden del campo por el que queremos que se
ordene en lugar de su nombre, es decir, referenciar a los campos por su posición en la
lista de selección. Por ejemplo, queremos el resultado del "select" ordenado por
"precio":
select titulo,autor,precio
from libros order by 3;
select * libros
order by editorial desc;
También podemos ordenar por varios campos, por ejemplo, por "titulo" y "editorial":
Incluso, podemos ordenar en distintos sentidos, por ejemplo, por "titulo" en sentido
ascendente y "editorial" en sentido descendente:
Debe aclararse al lado de cada campo, pues estas palabras claves afectan al campo
inmediatamente anterior.
Ejercicio 3:
En una página web se guardan los siguientes datos de las visitas: número de visita,
nombre, mail, pais, fecha.
reneluque.milaulas.com 5
Administración de Base de Datos Computación e Informática
4- Muestre el nombre del usuario, pais y el número de mes, ordenado por pais
(ascendente) y número de mes (descendente)
5- Muestre el pais, el mes, el día y la hora y ordene las visitas por nombre del mes,
del día y la hora.
select nombre,mail,
extract(month from fecha) as mes,
extract(day from fecha) as dia,
extract(hour from fecha) as hora
from visitas
order by 3,4,5;
6- Muestre los mail, país, ordenado por país, de todos los que visitaron la página en
octubre (4 registros)
select mail, pais
from visitas
where extract(month from fecha)=10
order by 2;
reneluque.milaulas.com 6