11
votes

Créez un script d'insertion à partir de résultats Sélectionner des résultats

Utilisation de SQL Server Management Studio est une manière que je puisse sélectionner une ou plusieurs lignes dans la grille de sélection des résultats et que SQL Server Mangement Studio génère une ou plusieurs instructions d'insertion (une pour chaque ligne sélectionnée) qui insérerait ces données dans une table avec le même schéma?

Edit: Je sais comment créer une manuellement, mais j'espérais qu'il y aurait quelque chose qui le créerait automatiquement pour moi. Si vous connaissez le crapaud de crapaud, il existe un moyen de générer des inserts basés sur des données dans le volet de résultats et j'espérais que SSMS avait une fonction équivalante.


4 Réponses :


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

0 commentaires

4
votes

Je pense que vous avez deux options ici:

  1. Créez vos inserts manuellement. Par exemple: P>

    select Name, Surname,
      'insert into Person (Name,surname) values ('''+Name+''','''+Surname+')'
      from Person
    
  2. Cliquez avec le bouton droit sur la DB -> Tâches -> Générer des scripts. Appuyez ensuite sur l'avance et sélectionnez "Données uniquement" (Système par défaut uniquement). P> LI> ol> p>


0 commentaires

0
votes

Effectuez votre requête et cliquez avec le bouton droit de la souris sur la zone vide où les en-têtes de colonne respectent le numéro de ligne dans la vue Résultats.

Vous pouvez ensuite sélectionner Résultats de la grille de script :

Entrez la description de l'image ici


3 commentaires

Quelle version de SSMS utilisez-vous? J'utilise 2012 et je ne vois pas les résultats de la grille de script ou les options de recherche de la grille de recherche.


Je ne l'ai pas non plus. Je pense que cette fonctionnalité est fournie par un plug-in. Op?


Ceci est fait par le SSMS Tools Pack , malheureusement, la version SMSS 2012 n'est pas gratuite



10
votes

Essayez de sauvegarder le résultat de la requête dans une table jetable .

Par exemple:

Sélectionnez * dans jetable_customer_table de Customer_Table où ID dans ( dans la plage de quelque chose )

Ensuite, faites une DB -> Tâches -> Générez des scripts.

  • Sélectionnez des objets de base de données spécifiques.
  • Choisissez jetable_customer_table dans la liste des noms de table.
  • Choisissez Enregistrer dans le fichier.
  • Assurez-vous de faire une configuration anticipée et de sélectionner "Données uniquement" à partir des "Types de données au script".

    modifier le fichier de résultat et renommer le jetable_customer_table retour sur le nom de la table d'origine.

    Nettoyez-le et déposez le jetable_customer_table .


0 commentaires