Compartir a través de

Error de sintaxis SQL

Nzé Montalbán, René Manuel 20 Puntos de reputación
2026-02-12T12:42:11.12+00:00

Estoy intentando crear una unión de consultas, pero me da error de sintaxis en la cláusula FROM:

"INSERT INTO [04_AMFEC-RCM] ( ID_ILS, SNS, [NOMBRE ELEMENTO], [FUNCIÓN ELEMENTO] )

SELECT [02_CONF_FUN].ID_ILS, [02_CONF_FUN].SNS, [02_CONF_FUN].[NOMBRE ARTÍCULO], [02_CONF_FUN].[FUNCIÓN DEL ARTÍCULO]

FROM 02_CONF_FUN

UNION

INSERT INTO [04_AMFEC-RCM] ( ID_ILS, SNS, [NOMBRE ELEMENTO] )

SELECT [03_TABLA DE PARTES].ID_ILS, [03_TABLA DE PARTES].[SNS PADRE], [03_TABLA DE PARTES].[NOMBRE PARTE]

FROM [03_TABLA DE PARTES]

WHERE ((([03_TABLA DE PARTES].APLIC_AMFEC)="SI"));"

Microsoft 365 y Office | Access | Para el negocio | Windows
0 comentarios No hay comentarios

2 respuestas

Ordenar por: Muy útil
  1. Karl Donaubauer 3,356 Puntos de reputación
    2026-02-12T15:01:16.94+00:00

    Hola,

    El operador UNION solo funciona para consultas de selección, no para/en/con consultas de acción. Hay dos formas de resolver la tarea:

    1. Puedes crear dos consultas de datos anexados independientes, una por cada tabla de origen.
    2. Puedes crear una consulta UNION que combine los datos de las dos tablas de origen. A continuación, crea una segunda consulta que añada los datos de la consulta UNION a la tabla de destino.

    Servus
    Karl


    Access Forever News DevCon
    Access-Entwickler-Konferenz AEK

    ¿Le ha resultado útil esta respuesta?

    0 comentarios No hay comentarios

  2. Gabriel-N 19,035 Puntos de reputación Personal externo de Microsoft Moderador
    2026-02-12T13:32:46.6+00:00

    Nota: Esta respuesta ha sido traducida automáticamente. Como resultado, puede contener errores gramaticales o expresiones incómodas.

    Hola Nzé Montalbán, René Manuel

    Gracias por contactar con el Foro de Preguntas y Respuestas.

    Por favor, prueba la siguiente sintaxis SQL para ver si resuelve tu problema. Si encuentras algún error, no dudes en compartir conmigo el mensaje de error exacto.

    INSERT INTO [04_AMFEC-RCM] ( ID_ILS, SNS, [NOMBRE ELEMENTO], [FUNCIÓN ELEMENTO] ) SELECT ID_ILS, SNS, [NOMBRE ARTÍCULO], [FUNCIÓN DEL ARTÍCULO] FROM [02_CONF_FUN]
     
    UNION ALL
     
    SELECT ID_ILS, [SNS PADRE], [NOMBRE PARTE], NULL FROM [03_TABLA DE PARTES] WHERE [03_TABLA DE PARTES].APLIC_AMFEC = "SI";
    
    

    Espero tu respuesta.


    Si la respuesta es útil, por favor haz clic en "Aceptar respuesta" y dale un voto positivo. Si tienes preguntas adicionales sobre esta respuesta, haz clic en "Comentar".

    Nota: Por favor, siga los pasos en nuestra documentación para habilitar las notificaciones por correo electrónico si desea recibir la notificación correspondiente para este hilo.

    ¿Le ha resultado útil esta respuesta?


Su respuesta

Las respuestas pueden ser marcadas como "Aceptadas" por el autor de la pregunta y "Recomendadas" por los moderadores, lo que ayuda a los usuarios a saber que la respuesta ha resuelto el problema del autor.