Compartir vía


Crear consultas de inserción de resultados (Visual Database Tools)

se aplica a:sql Server

Puede copiar filas de una tabla a otra o dentro de una tabla mediante una consulta Insertar resultados. Por ejemplo, en una tabla de titles, puede usar una consulta Insertar resultados para copiar información sobre todos los títulos de un publicador en una segunda tabla que puede poner a disposición de ese publicador. Una consulta Insertar resultados es similar a Hacer consultas de tabla, pero copia filas en una tabla existente.

Propina

También puede copiar filas de una tabla a otra mediante cortar y pegar. Cree una consulta para cada tabla y ejecute las consultas. Copie las filas que desee de una cuadrícula de resultados a la otra.

Al crear una consulta Insertar resultados, especifique lo siguiente:

  • Tabla de base de datos en la que se van a copiar filas (la tabla de destino).

  • Tabla o tablas de origen de las que se van a copiar filas. La tabla o tablas de origen forman parte de una subconsulta. Si va a copiar dentro de una tabla, la tabla de origen es la misma que la tabla de destino.

  • Columnas de la tabla de origen cuyo contenido desea copiar.

  • Columnas de destino de la tabla de destino a las que copiar los datos.

  • Condiciones de búsqueda para definir las filas que desea copiar.

  • Criterio de ordenación, si desea copiar las filas en un orden determinado.

  • Las opciones de agrupar por, si desea copiar solo la información en resumen.

Por ejemplo, la consulta siguiente copia la información de título de la tabla de titles en una tabla de archivo denominada archivetitles. La consulta copia el contenido de cuatro columnas para todos los títulos que pertenecen a un publicador determinado:

INSERT INTO archivetitles   
   (title_id, title, type, pub_id)  
SELECT title_id, title, type, pub_id  
FROM titles  
WHERE (pub_id = '0766')  

Nota

Para insertar valores en una nueva fila, use una consulta Insertar valores.

Puede copiar el contenido de las columnas seleccionadas o de todas las columnas de una fila. En cualquier caso, los datos que va a copiar deben ser compatibles con las columnas de las filas a las que va a copiar. Por ejemplo, si copia el contenido de una columna como price, la columna de la fila que va a copiar debe aceptar datos numéricos con posiciones decimales. Si va a copiar una fila completa, la tabla de destino debe tener columnas compatibles en la misma posición física que la tabla de origen.

Al crear una consulta Insertar resultados, el panel Criterios cambia para reflejar las opciones disponibles para copiar datos. Se agrega una columna Append para permitir especificar las columnas en las que se deben copiar los datos.

Cautela

No se puede deshacer la acción de ejecutar una consulta Insertar resultados. Como medida de precaución, realice una copia de seguridad de los datos antes de ejecutar la consulta.

Para crear una consulta de inserción de resultados

  1. Cree una nueva consulta y agregue la tabla desde la que desea copiar filas (la tabla de origen). Si va a copiar filas dentro de una tabla, puede agregar la tabla de origen como tabla de destino.

  2. En el menú Diseñador de Consultas, seleccione Cambiar Tipoy luego haga clic en Insertar Resultados.

  3. En el cuadro de diálogo Elegir tabla de destino para insertar resultados, seleccione la tabla en la que copiar filas (la tabla de destino).

    Nota

    El Diseñador de consultas y vistas no puede determinar con antelación qué tablas y vistas se pueden actualizar. Por lo tanto, la lista Nombre de tabla en el cuadro de diálogo Elegir tabla para insertar desde la consulta muestra todas las tablas y vistas disponibles en la conexión de datos que está consultando, incluso aquellas a las que es posible que no pueda copiar filas.

  4. En el rectángulo que representa la tabla o el objeto con valores de tabla, elija los nombres de las columnas cuyo contenido desea copiar. Para copiar filas completas, elija * (Todas las columnas).

    El Diseñador de consultas y vistas agrega las columnas que elija a la columna Columna del panel Criterios.

  5. En la columna Anexar del panel de criterios, seleccione una columna objetivo en la tabla de destino para cada columna que esté copiando. Elija tablename.* si va a copiar filas completas. Las columnas de la tabla de destino deben tener los mismos tipos de datos (o compatibles) que las columnas de la tabla de origen.

  6. Si desea copiar filas en un orden determinado, especifique un criterio de ordenación. Para obtener más información, consulte ordenar y agrupar resultados de consulta (Visual Database Tools).

  7. Especifique las filas que se van a copiar escribiendo condiciones de búsqueda en la columna filtro . Para obtener más información, consulte Especificar criterios de búsqueda (Herramientas Visuales de Bases de Datos).

    Si no especifica una condición de búsqueda, todas las filas de la tabla de origen se copiarán en la tabla de destino.

    Nota

    Al agregar una columna para buscar en el panel Criterios, el Diseñador de consultas y vistas también lo agrega a la lista de columnas que se van a copiar. Si desea usar una columna para buscar, pero no copiarla, desactive la casilla situada junto al nombre de columna en el rectángulo que representa la tabla o el objeto con valores de tabla.

  8. Si desea copiar información de resumen, especifique las opciones de Agrupar por. Para obtener más información, consulte Resumen de resultados de consulta (Visual Database Tools).

Al ejecutar una consulta Insertar resultados, no se notifica ningún resultado en el panel de resultados. En su lugar, aparece un mensaje que indica cuántas filas se copiaron.

Consulte también

Tipos de Consultas (Visual Database Tools)
Temas con instrucciones sobre consultas y vistas de diseño (Visual Database Tools)