27 - Funciones para el uso de fecha y hora.


Problema:

Una pequeña biblioteca de barrio registra los préstamos de sus libros en una tabla llamada "prestamos". En ella almacena la siguiente información:

 -título del libro,
 -documento de identidad del socio a quien se le presta el libro,
 -fecha de préstamo,
 -fecha de devolución del libro,
 -devuelto: si el libro ha sido o no devuelto.

Eliminamos la tabla "prestamos" si existe:

 drop table if exists prestamos;

Creamos la tabla:

 create table prestamos(
  titulo varchar(40) not null,
  documento char(8) not null,
  fechaprestamo date not null,
  fechadevolucion date,
  devuelto char(1) default 'n'
 );

Los libros se prestan por 5 días.

Ingresamos un registro con los 3 primeros datos y calculamos con una función la fecha de devolución:

 insert into prestamos (titulo,documento,fechaPrestamo,fechaDevolucion) values 
  ('Manual de 1 grado','23456789','2006-08-10',date_add('2006-08-10', interval 5 day));
Con un "select" vemos cómo quedó almacenado el registro ingresado anteriormente:
 select * from prestamos;

Ingresemos otros registros de la misma manera:

 insert into prestamos (titulo,documento,fechaPrestamo,fechaDevolucion)
  values ('Alicia en el pais de las maravillas','23456789',
'2006-08-12',date_add('2006-08-12', interval 5 day));
 insert into prestamos (titulo,documento,fechaPrestamo,fechaDevolucion) values 
   ('El aleph','22543987','2006-08-15',date_add('2006-08-15', interval 5 day));
 insert into prestamos (titulo,documento,fechaPrestamo,fechaDevolucion)
  values ('Manual de geografia 5 grado','25555666','2006-08-30',
date_add('2006-08-30', interval 5 day));

Ahora utilizaremos la función "current_date" para la fecha de préstamo:

 insert into prestamos (titulo,documento,fechaPrestamo,fechaDevolucion)  values 
  ('Atlas universal','24000111',current_date,date_add(current_date, interval 5 day));



Retornar