Base D. Biblioteca actualizar campo desde otra tabla

Tengo una base de datos (Biblioteca), con las tablas: socios, libros, prestamos. En la tabla libros tengo un campo denominado: prestado (tipo S/N), y en la tabla prestamos, también tengo un campo igual: prestado (S/N). Lo que deseo es que a través de la tabla o en formulario de prestamos, cuando yo realice un préstamo u marque el campo prestado, se actualice automáticamente el campo prestado en la tabla libros.

1 respuesta

Respuesta
1

Si tu tabla libro tiene un campo ID único para cada libro, y ese id es el que figura en la tabla préstamos (es decir, ambas tablas se relacionan por ese id), puedes ponerle este código en el evento "Después de actualizar" del campo prestado en tu formulario "prestamos"

Dim miSQL As String

miSQL = "UPDATE libros SET prestado=" & IIF(Me.Prestado=True,-1,0) & " WHERE ID=" & Me.Libro

CurrentDb. Execute miSQL
Si no tuvieras un ID único, o relacionas ambas tablas directamente por el título, el código sería así:

Dim miSQL As String

miSQL = "UPDATE libros SET prestado=" & IIF(Me.Prestado=True,-1,0) & " WHERE Titulo='" & Me.Libro & "'"

CurrentDb. Execute miSQL
Te dejo un ejemplo para el primer caso.

¡Gracias! 

Gracias, con el ejemplo lo he visto muy claro. Si es posible, desearía ahora: sobre el mismo ejemplo; que cuando el libro estuviera prestado me saliera un mensaje  "este libro ya está prestado", lo tengo casi hecho, pero no se como actuar sobre otra tabla, reitero mi agradecimiento. Saludos

No le encuentro sentido a lo que pides. De todas formas, plantéalo en una nueva pregunta, explicando exactamente lo que pretendes hacer.

¡Gracias!, por tu pronta respuesta. Mi deseo, sobre la misa base de datos que me enviaste, ahora sobre el formulario prestamos, cuando intentara hacer un registro nuevo de un préstamo, si ese libro estuviera ya prestado, me saliera el mensaje: "este libro ya está prestado" .

Mi problema es debido a que la indicación de que el libro está prestado, está en la tabla libros, y opero desde la tabla préstamos. Espero haberme explicado bien.

Gracias de nuevo y saludos

Abre un nuevo hilo con esta consulta, pues no tiene que ver con la original.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas