2012-01-10 22 views
7

Usar SQL Server Management Studio es una manera de seleccionar una o más filas en la cuadrícula de resultados selectos y SQL Server Mangement Studio generar una o más instrucciones de inserción (una para cada fila seleccionada) que insertaría esos datos en una tabla con el mismo esquema?Crear una secuencia de comandos de inserción desde Seleccionar resultados

Editar: Sé cómo crear uno manualmente, pero esperaba que hubiera algo que lo creara automáticamente para mí. Si está familiarizado con Toad, hay una forma de que Toad genere inserciones basadas en datos en el panel de resultados y esperaba que SSMS tuviera una función equivalente.

+2

posible duplicado de [Convertir resultados Seleccionar en Insertar script] (http: // stackoverflow.com/questions/4526461/converting-select-results-into-insert-script) –

Respuesta

4
select 'insert into tableB values (', tableA.x ,',',tableA.y,',',tableA.z,')' from tableA 
4

yo creo que hay dos opciones:

  1. Crear su inserta manualmente. Por ejemplo:

    select Name, Surname, 
        'insert into Person (Name,surname) values ('''+Name+''','''+Surname+')' 
        from Person 
    

    Esto le muestra los resultados y, en la última columna, el script de inserción para la fila. A continuación, puede seleccionar y pegar en una ventana del Editor.

  2. Haga clic con el botón derecho en db -> Tareas -> Generar secuencias de comandos. Presione luego Avanzar y seleccione "Solo datos" (el valor predeterminado es solo esquema).

0

Realice su consulta y haga clic derecho en el área en blanco donde los encabezados de columna se encuentran con el número de fila en la vista de resultados.

A continuación, puede seleccionar escritura de Salida Resultados de:

enter image description here

+5

¿Qué versión de sms está usando? Estoy usando 2012 y no veo las opciones RESULTADOS DE LA PLANILLA DE SCRIPT ni la de RESULTADOS DE LA BÚSQUEDA DE LA BÚSQUEDA. – greg

+0

Yo tampoco lo tengo. Creo que la funcionalidad es proporcionada por un complemento. OP? –

+2

esto lo realiza el [SSMS Tools Pack] (http://www.ssmstoolspack.com/), desafortunadamente la versión de SMSS 2012 no es gratuita – tburi

9

intenta guardar el resultado de la consulta en una tabla desechable.

Por ejemplo:

SELECT * EN disposable_customer_table DE customer_table donde id IN (en el rango de algo)

A continuación, hacer una base de datos -> Tareas -> generar secuencias de comandos.

  • Seleccionar objetos específicos de la base de datos.
  • Elija deseable_customer_table de la lista de nombres de tabla.
  • Seleccione Guardar en el archivo.
  • Asegúrese de hacer una configuración Avanzada y seleccione "Datos solamente" de los "Tipos de datos para secuencia de comandos".

modificar el archivo de resultados y cambiar el nombre del disposable_customer_table de nuevo al nombre de tabla original.

Limpiar y soltar el deseable_customer_table.

Cuestiones relacionadas