Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
MS Access 2007: consulta de actualización para actualizar un valor en una tabla con un valor en otra tabla
Este tutorial de MSAccess explica cómo crear una consulta de actualización que actualice valores en una tabla con valores de otra tabla en Access 2007 (con capturas de pantalla e instrucciones paso a paso).
Ver soluciones en otras versiones de Access:
- Visita 2003
Problema: en Microsoft Access 2007, intento actualizar alrededor de 6000+ registros en una tabla con valores de otra tabla, pero me encuentro con un problema. En realidad, estoy tratando de actualizar la tabla MFG de Bot con la tabla grande MFG cuando Big.PART = Bot.PART.
La consulta que estoy usando es:
UPDATE Bot SET Bot.MFG = (SELECT Big.MFG FROM Big WHERE Big.PART = Bot.PART) WHERE EXISTS (SELECT Big.MFG FROM Big WHERE Big.PART = Bot.PART);
¿Podrias ayudarme por favor?
R: Primero, debe crear una nueva consulta.Para hacer esto, seleccione Crear pestaña en la barra de herramientas en la parte superior de la pantalla.Luego haga clic en el botón Diseño de consulta otros grupos.
Cuando aparezca la ventana Mostrar tabla, seleccione la tabla que desea usar en la consulta y haga clic en el botón Agregar. Después de agregar la tabla, haga clic en el botón Cerrar.
En este ejemplo, hemos seleccionado las tablas Big y Bot. Puede seleccionar varias tablas manteniendo presionada la tecla Ctrl mientras selecciona los nombres de las tablas.
A continuación, haga clic con el botón derecho en algún lugar junto a (pero no sobre) la tabla en el editor de consultas y seleccione Tipo de consulta > Actualizar consulta en el menú emergente.
A continuación, cree una consulta como esta:
Cuando el valor de PARTE coincida, esta consulta actualizará el campo MFG en la tabla Bot con el valor en el campo MFG en la tabla grande.
El SQL para esta consulta es el siguiente:
UPDATE Big INNER JOIN Bot ON Big.PART = Bot.PART SET Bot.MFG = [Big].[MFG];