Crear y ejecutar una consulta de eliminación

Crear y ejecutar una consulta de eliminación

Nota: Nos gustaría proporcionarle el contenido de ayuda actual lo más rápido posible en su idioma. Esta página se ha traducido mediante un sistema automático y es posible que contenga imprecisiones o errores gramaticales. Nuestro objetivo es que este contenido sea útil para usted. ¿Puede informarnos sobre si la información le ha sido útil al final de la página? Aquí tiene el artículo en inglés para que pueda consultarlo fácilmente.

Cuando desea rápidamente eliminar una gran cantidad de datos o eliminar un conjunto de datos de forma regular en una base de datos de escritorio de Access, una eliminación o una consulta de actualización puede ser útil porque las consultas que pueda especificar criterios para buscar y eliminar los datos rápidamente. Mediante una consulta, también puede ser un ahorro de tiempo porque puede volver a usar una consulta guardada.

Nota: Antes de eliminar datos o ejecutar una consulta de eliminación, asegúrese de que tiene una copia de seguridad de la base de datos de escritorio de Access.

Si solo quiere eliminar unos pocos registros, no necesitará una consulta: bastará con abrir la tabla en la vista Hoja de datos, seleccionar los campos (columnas) o registros (filas) que quiera eliminar y, tras ello, presionar SUPR.

Importante: La información en este artículo está destinada únicamente a las bases de datos de escritorio. No puede utilizar eliminar o actualizar consultas en aplicaciones web de Access.

En este artículo

Elegir un tipo de consulta

Usar consulta de eliminación

Usar una consulta de actualización

Información adicional

Sugerencias para la solución de problemas

Elegir un tipo de consulta

Si va a eliminar datos de la base de datos, puede optar por una consulta de actualización o por una de eliminación. Elíjala según los detalles recogidos en la siguiente tabla:

Tipo de consulta

Cuándo usarla

Resultados

Usar una consulta de eliminación

Para quitar registros enteros (filas) de una tabla o de dos tablas relacionadas al mismo tiempo.

Nota: Si los registros se encuentran en el lado "uno" de una relación uno a varios, puede que tenga que cambiar la relación antes de ejecutar la consulta de eliminación. Vea la sección sobre cómo eliminar datos de tablas relacionadas.

Mediante las consultas de eliminación se quitan todos los datos de cada campo, incluido el valor de clave que hace que un registro sea único.

Usar una consulta de actualización

Para eliminar valores de campo concretos de una tabla.

Hace que sea más fácil eliminar valores al actualizar los valores existentes a un valor nulo (esto es, sin datos) o a una cadena de longitud cero (un par de comillas dobles sin espacio entre ellas).

Principio de página

Qué comprobar antes de usar una consulta para eliminar datos

  • Confirme que el archivo no es de solo lectura:

    1. Haga clic con el botón secundario en Inicio y haga clic en Abrir el Explorador de Windows.

    2. Haga clic con el botón secundario en el archivo de base de datos y, después, haga clic en Propiedades.

    3. Vea si está seleccionado el atributo Solo lectura.

  • Compruebe que dispone de los permisos necesarios para eliminar registros de la base de datos. Si no está seguro, póngase en contacto con el administrador del sistema o el diseñador de la base de datos.

  • Procure haber habilitado contenido en la base de datos. Access bloquea de forma predeterminada las consultas de acción (sean de eliminación, de actualización o para crear una tabla) a menos que se establezca una confianza con la base de datos. Para más información sobre cómo confiar en una base de datos, vea la sección Evitar que el modo deshabilitado bloquee una consulta.

  • Pida a otros usuarios de la base de datos que cierren todos los formularios, tablas, consultas e informes que usen los datos que desee eliminar. De este modo, evitará infracciones de bloqueo.

  • Antes de modificar o eliminar registros, conviene hacer una copia de seguridad de la base de datos, por si quiere revertir los cambios.

Sugerencia: Si un gran número de usuarios conectarse a la base de datos, debe cerrar la base de datos y vuelva a abrirlo en modo exclusivo.

Para abrir una base de datos en modo Exclusivo

  1. Haga clic en la pestaña Archivo > Abrir.

  2. Busque la base de datos, selecciónela, haga clic en la flecha situada junto al botón Abrir y, después, haga clic en Abrir en modo exclusivo.

    Abrir un archivo en modo exclusivo

Hacer una copia de seguridad de la base de datos

  1. Haga clic en la pestaña Archivo y apunte a Guardar como.

  2. Haga clic en Guardar base de datos como y en Realizar copia de seguridad de la base de datos. Access cierra el archivo original, crea una copia de seguridad y, tras ello, vuelve a abrir el archivo original.

  3. Haga clic en Guardar como, escriba un nombre y una ubicación para la copia de seguridad y haga clic en Guardar.

Nota:  Si usa una base de datos de solo lectura o una creada con una versión anterior de Access, puede que aparezca un mensaje que indique que no es posible crear una copia de seguridad de la base de datos.

Para revertir a una copia de seguridad, cierre el archivo original y cambie su nombre, de modo que se pueda usar el nombre de la versión original para la copia de seguridad. Asigne el nombre de la versión original a la copia de seguridad y, después, ábrala con el nombre cambiado en Access.

Usar consulta de eliminación

Para crear una consulta de eliminación, haga clic en el ficha crear, en la grupo de consultas, haga clic en Diseño de la consulta. En la cuadro de diálogo Mostrar tabla cuadro, haga doble clic en cada tabla desde la que desea eliminar registros y, a continuación, haga clic en Cerrar.

La tabla aparece como una ventana en la sección superior de la cuadrícula de diseño de la consulta. En la lista de campos, haga doble clic en el asterisco (*) para agregar todos los campos de la tabla a la cuadrícula de diseño.

Usar un criterio específico en una consulta de eliminación

Importante: Use criterios para obtener solo los registros que quiera eliminar. Si no lo hace, la consulta de eliminación quitará todos los registros de la tabla.

Haga doble clic en el campo que desea especificar los criterios de eliminación, especifique uno de los criterios de la la fila criterios de la consulta en el diseñador y, a continuación, desactive la la casilla de verificación Mostrar de cada campo de criterio.

Veamos un ejemplo en el que probablemente sea necesario recurrir a esta opción: imagine que quiere quitar todos los pedidos pendientes de un cliente. Para encontrar solo esos registros en concreto, habría que agregar los campos Id. de cliente y Fecha de pedido a la cuadrícula de diseño de la consulta y, tras ello, especificar el número de identificación del cliente y la fecha en la que los pedidos de dicho cliente pasaron a ser no válidos.

  1. En la ficha Diseño, haga clic en Ver > Vista Hoja de datos.

  2. Compruebe que la consulta devuelve los registros que quiere eliminar y presione CTRL+G para guardar la consulta.

  3. Para ejecutar la consulta, haga doble clic en ella en el panel de navegación.

Principio de página

Usar una consulta de actualización

Nota: No puede usar la opción de consulta de actualización en una aplicación web de Access.

En esta sección se explica cómo usar una consulta de actualización para eliminar campos concretos de tablas. Recuerde que ejecutar una consulta de actualización para eliminar datos cambiará los valores existentes a NULL o a una cadena de longitud cero (un par de comillas dobles sin espacio entre ellas), según cuáles hayan sido los criterios especificados.

  1. Haga clic en la pestaña Crear y, en el grupo Consultas, haga clic en Diseño de la consulta.

  2. Seleccione la tabla que contiene los datos que quiere eliminar (si la tabla es relacionada, selecciónela en el lado "uno" de la relación). Después, haga clic en Agregar y en Cerrar.

    La tabla aparece como una ventana en la sección superior de la cuadrícula de diseño de la consulta. En la ventana se muestran todos los campos de la tabla seleccionada.

  3. Haga doble clic en el asterisco (*) para agregar todos los campos de la tabla a la cuadrícula de diseño. Cuando se agregan todos los campos de tabla, la consulta de eliminación puede quitar registros completos (filas) de la tabla.

    Si lo desea, puede especificar criterios relativos a uno o más campos en la fila Criterios del diseñador y, después, desactivar la casilla Mostrar en cada campo de criterio. Para más información sobre cómo usar criterios, vea la tabla Criterios de ejemplo para consultas de selección.

    Nota: Los criterios sirven para obtener únicamente los registros que quiera cambiar. Si no se usan, la consulta de actualización establece en NULL todos los registros de cada uno de los campos de la consulta.

  4. En el grupo Resultados de la pestaña Diseño, haga clic en Ver y, después, en Vista Hoja de datos.

  5. Compruebe que la consulta devuelve los registros que desee establecer en NULL o una cadena de longitud cero (un par de comillas dobles sin espacio entre ellas ("").

  6. Según sea necesario, repita los pasos 3 a 5 y cambie los campos o criterios hasta que la consulta devuelva solamente los datos que desea eliminar y, a continuación, presione CTRL+S para guardar la consulta.

  7. Para ejecutar la consulta, haga doble clic en ella en el panel de navegación.

Principio de página

Información adicional

Eliminar datos de tablas relacionadas

Para eliminar datos de varias tablas relacionadas hay que habilitar las opciones Integridad referencial y Eliminar en cascada los registros relacionados de cada relación. Esto hace que la consulta elimine los datos de las tablas en los lados "uno" y "varios" de la relación. Es necesario comprobar los siguientes aspectos antes de eliminar datos relacionados:

  • Averigüe qué registros residen en el lado "uno" de la relación y cuáles residen en el lado "varios".

  • Si necesita eliminar registros del lado "uno" de la relación y los registros relacionados del lado "varios", será necesario habilitar un conjunto de reglas denominado Integridad referencial y, también, la eliminación en cascada. En esta sección se explica la integridad referencial y se indica cómo llevar a cabo ambas tareas.

  • Si necesita eliminar registros únicamente del lado "uno" de la relación, elimine primero esa relación y, después, los datos.

Si necesita eliminar datos únicamente del lado "varios" de la relación, puede crear y ejecutar una consulta de eliminación sin tener que alterar la relación.

Para saber qué registros están en los lados "uno" y "varios" de una relación, en el grupo Relaciones de la pestaña Herramientas de bases de datos, haga clic en Relaciones. La pestaña Relaciones muestra las tablas de la base de datos y las relaciones. Cada relación aparece reflejada como una línea que conecta tablas entre campos.

En la siguiente ilustración se muestra una relación típica. La mayoría de las relaciones de una base de datos, si no todas, tienen un lado "uno" y un lado "varios". En el diagrama de relaciones se indica el lado "uno" con el número 1 y el lado "varios" con el símbolo del infinito ().

Relación entre dos tablas

Cuando se eliminan registros del lado "uno" de una relación, también se quitan todos los registros relacionados del lado "varios" de la relación. Sin embargo, cuando se eliminan registros del lado "varios" de una relación, no se suelen quitar los registros del lado "uno".

Además, Access implanta automáticamente un conjunto de reglas denominado Integridad referencial. Estas reglas garantizan que las claves externas de una base de datos contienen los valores correctos. Una clave externa es una columna cuyos valores coinciden con los valores de la columna de clave principal de otra tabla.

Modificar la relación

Siga estos pasos únicamente cuando necesite eliminar datos del lado "uno" y del lado "varios" de una relación.

  1. En la pestaña Herramientas de base de datos, en el grupo Relaciones, haga clic en Relaciones.

  2. Haga clic con el botón secundario en la relación (línea) que conecta las tablas implicadas en la acción de eliminación y, después, haga clic en Modificar relación en el menú contextual.

  3. Confirme que la casilla Exigir integridad referencial está activada en el cuadro de diálogo Modificar relaciones.

  4. Active la casilla Eliminar en cascada los registros relacionados.

    Nota: Hasta que vuelva a deshabilitar esta propiedad, cuando se elimine un registro del lado "uno" de la relación, se eliminarán todos los registros relacionados del lado "varios" de la relación.

  5. Haga clic en Aceptar, cierre el panel Relaciones y continúe con los siguientes pasos.

Eliminar una relación

  1. Si aún no lo ha hecho, abra el panel Relaciones.

  2. En la pestaña Herramientas de base de datos, en el grupo Relaciones, haga clic en Relaciones.

    Anote los campos implicados en la relación para poder restaurar la relación después de eliminar los datos.

  3. Haga clic en la relación (línea) que conecta las tablas implicadas en la operación de eliminación y, a continuación, haga clic en Eliminar en el menú contextual.

Nota: Para restaurar la relación, siga los pasos anteriores para abrir el panel Relaciones y, luego, arrastre el campo de clave principal de la tabla del lado "uno" para colocarlo en el campo de clave externa de la tabla del lado "varios". Se abrirá el cuadro de diálogo Modificar relación. Si la relación antigua exigía integridad referencial, seleccione Exigir integridad referencial y haga clic en Crear. Si no, haga clic sencillamente en Crear.

Principio de página

Criterios de ejemplo para consultas de selección

En la siguiente tabla se muestran algunos criterios de ejemplo que se pueden usar en las consultas de selección para garantizar que se eliminan únicamente los datos deseados. En algunos de estos ejemplos se usan caracteres comodín.

Criterios

Efecto

> 234

Devuelve todos los números mayores que 234. Para buscar todos los números menores que 234, use < 234.

>="Díaz"

Devuelve todos los registros desde Díaz hasta el final del alfabeto.

Entre #2/2/2010# Y #1/12/2010#

Devuelve las fechas comprendidas entre el 2 de febrero de 2010 y el 1 de diciembre de 2010 (ANSI-89). Si la base de datos usa los caracteres comodín ANSI-92, use comillas simples (') en vez de signos de almohadilla (#). Ejemplo: Entre '2/2/2010' Y '1/12/2010'.

Sin "Alemania"

Encuentra todos los registros en los que el contenido exacto del campo no es exactamente igual a "Alemania". El criterio devolverá registros que contienen caracteres además de "Alemania," como "Alemania (euro)" o "Europa (Alemania)".

Sin "T*"

Busca todos los registros, salvo los que empiezan por T. Si la base de datos usa los caracteres comodín ANSI-92, use el signo de porcentaje (%) en vez del asterisco (*).

Sin "*t"

Busca todos los registros que no terminen en t. Si la base de datos utiliza el juego de caracteres comodín ANSI-92, use el signo de porcentaje (%) en vez del asterisco (*).

En(Canadá,Reino Unido)

En una lista, busca todos los registros que contengan Canadá o Reino Unido.

Como "[A-D]*"

En un campo de texto, encuentra todos los registros que empiecen por las letras comprendidas entre la A y la D, ambas inclusive. Si la base de datos usa el juego de caracteres comodín ANSI-92, use el signo de porcentaje (%) en vez del asterisco (*).

Como "*ar*"

Busca todos los registros que incluyan la secuencia de letras "ar". Si la base de datos usa el juego de caracteres comodín ANSI-92, use el signo de porcentaje (%) en vez del asterisco (*).

Como "Casa Dewe?"

Busca todos los registros que empiecen por "Casa" y contengan una segunda cadena de 5 letras, cuyas cuatro primeras letras son "Dewe" y cuya última letra se desconoce. Si la base de datos usa el juego de caracteres comodín ANSI-92, use el carácter de subrayado (_) en vez del signo de interrogación (?).

#2/2/2010#

Encuentra todos los registros del 2 de febrero de 2010. Si la base de datos usa el juego de caracteres comodín ANSI-92, incluya la fecha entre comillas simples en lugar de entre signos de almohadilla ('02/02/10').

< Fecha() - 30

Usa la función Fecha para devolver todas las fechas con una antigüedad de más de 30 días.

Fecha()

Usa la función Fecha para devolver todos los registros que contienen la fecha actual.

Entre Fecha() Y AgregFecha("M", 3, Fecha())

Usa las funciones Fecha y AgregFecha para devolver todos los registros entre la fecha actual y tres meses a partir de la fecha actual.

Es Nulo

Devuelve todos los registros que contengan un valor nulo (en blanco o sin definir).

No es Nulo

Devuelve todos los registros que contengan algún valor (que no sea nulo).

""

Devuelve todos los registros que contengan una cadena de longitud cero. Las cadenas de longitud cero se usan cuando es necesario agregar un valor a un campo obligatorio, pero aún no se conoce el valor. Un ejemplo sería un campo que necesita un número de fax cuando hay algunos clientes que no tienen fax. En ese caso, en vez de especificar un número, se incluye un par de comillas dobles sin espacios entre ellas ('''').

Principio de página

Sugerencias para la solución de problemas

¿Por qué aparece este mensaje de error y cómo se soluciona?

Si crea una consulta de eliminación con varias tablas y el valor de la propiedad Registros únicos está establecido en No, Access muestra el mensaje de error No se pudo eliminar nada en las tablas especificadas cuando ejecute la consulta.

Para solucionar este problema, establezca el valor de la propiedad Registros únicos de la consulta en .

  1. Abra la consulta de eliminación en la vista Diseño.

  2. Si la hoja de propiedades de la consulta no está abierta, presione F4 para abrirla.

  3. Haga clic en el diseñador de consultas para mostrar las propiedades de la consulta (en vez de las propiedades de campo).

  4. En la hoja de propiedades de la consulta, busque la propiedad Registros únicos y establezca su valor en .

Evitar que el modo deshabilitado bloquee una consulta

De forma predeterminada, si se abre una base de datos de escritorio que ha elegido no confiar o no resida en una ubicación de confianza, Access bloquea todas las consultas de acción de ejecución.

Si trata de ejecutar una consulta de acción y parece que no ocurre nada, compruebe si en la barra de estado de Access aparece el siguiente mensaje:

El modo deshabilitado ha bloqueado la acción o el evento.

Si ve este mensaje, siga estos pasos para habilitar el contenido bloqueado:

  • En la barra de mensajes de Advertencia de seguridad, haga clic en Habilitar contenido, y vuelva a ejecutar la consulta.

Volver al principio

Ampliar sus conocimientos de Office
Explorar los cursos
Obtener nuevas características primero
Únase a los participantes de Office Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×