sql >> Database teknologi >  >> RDS >> SQLite

Generer INSERT-sætninger fra SQLite-forespørgselsresultater

SQLite-kommandolinjegrænsefladen giver os mulighed for automatisk at generere SQL INSERT udsagn fra en forespørgsel. Dette kan gøres ved at ændre output-tilstanden til insert .

Eksempel

Antag, at vi har følgende tabel:

SELECT * FROM Pets;

Resultat:

+-------+---------+--------+
| PetId | PetName | TypeId |
+-------+---------+--------+
| 1     | Homer   | 3      |
| 2     | Yelp    | 1      |
| 3     | Fluff   | 2      |
| 4     | Brush   | 4      |
+-------+---------+--------+

Da jeg kørte det eksempel, brugte jeg tabeltilstand. Tabeltilstand præsenterer forespørgselsoutputtet som en tabel og er en af ​​flere tabelformede outputtilstande i SQLite.

Vi kan ændre det til indsættelsestilstand som denne:

.mode insert Pets2

Når du skifter til indsættelsestilstand, skal du angive navnet på den tabel, som dataene skal indsættes i. I mit tilfælde specificerede jeg Pets2 , så dataene vil blive indsat i den tabel.

Når vi nu kører den samme SQL-forespørgsel som før, får vi en masse INSERT udsagn:

SELECT * FROM Pets;

Resultat:

INSERT INTO Pets2 VALUES(1,'Homer',3);
INSERT INTO Pets2 VALUES(2,'Yelp',1);
INSERT INTO Pets2 VALUES(3,'Fluff',2);
INSERT INTO Pets2 VALUES(4,'Brush',4);

Når du går for at indsætte disse værdier i en tabel, skal du selvfølgelig først sørge for, at tabellen eksisterer. Du kan enten oprette en tabel med det korrekte navn eller indsætte i en eksisterende.


  1. PostgreSQL:Deaktiver midlertidigt forbindelser

  2. Hvordan vælger jeg de sidste 5 rækker i en tabel uden at sortere?

  3. Pivot flere kolonner baseret på én kolonne i SQL Server

  4. pgAdmin Alternativer - PostgreSQL Database Management GUI ClusterControl