Pregunta

Estoy creando un sistema de bibliotecas.

Cuando se reserva un libro, quiero que cambie automáticamente a la parte posterior de estado "disponible" en 3 días si el usuario reservado no pide prestado a él.

Me puede crear un gatillo para disparar cuando el estado cambia a "reservado", sino que me pierden en la creación de un puesto de trabajo a suceder en 3 días y cambiar la parte posterior de estado a "Disponible"

Cualquier comentario, aconseja y guía será muy apreciada:)

¿Fue útil?

Solución

En primer lugar, debe crear un procedimiento para actualizar la columna que desee, tomando como parámetro de entrada el identificador de libro (o cualquier otra cosa como PK).

En su disparador, llamar al procedimiento de enviar el paquete DBMS_SCHEDULER y definir la fecha de inicio en 3 días el tiempo, sin redundancia, y para ejecutar su procedimiento definido antes, con el:. New.bookid como parámetro de entrada

Una vez que la transacción ha comprometido ser más tarde, se presentará el trabajo. De lo contrario, en el caso de retrotracción de la transacción el trabajo se deshace también.

Nicolas.

Otros consejos

qué idioma está codificando en?

En general, para algo como esto que escribir una tarea programada que ejecute periódicamente (una vez al día antes del horario de la biblioteca?), Hacer una consulta para ver todo lo que ha sido reservado por más de 3 días, y lo puso de nuevo a disposición.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top