PostgreSQL INFOGA: Infoga data i en tabell

โšก Smart sammanfattning

PostgreSQL INSERT-satsen lรคgger till nya rader i en tabell med hjรคlp av SQL. Lessons tรคcker syntax, infogningar med en och flera rader, RETURNING-klausulen, standardvรคrden och att lรคgga till poster visuellt via pgAdmin-grรคnssnittet.

  • ๐Ÿ“ฅ Grundlรคggande syntax: INSERT INTO table (cols) VALUES (vals) โ€” kanonisk form.
  • ๐Ÿ“‹ Flera rader: Kommaseparerade vรคrdetupler fรถr att infoga mรฅnga rader.
  • ๐Ÿ”„ ร…TERVร„NDANDE: Hรคmtar infogade rader i samma anrop.
  • ???? Standardvรคrden: Utelรคmnade kolumner fรฅr DEFAULT eller NULL.
  • ๐Ÿ–ฅ๏ธ pgAdmin GUI: Lรคgg till rader visuellt utan att skriva SQL.
  • ๐Ÿค– AI SQL: Copilot genererar parametriserade INSERTs.

PostgreSQL INFOGA

PostgreSQL INSERT-sats

In PostgreSQL, hjรคlper insert-satsen att infoga en ny rad eller rad i tabellen. Du kan infoga rader som anges av vรคrdeuttryck, noll eller flera rader som hรคrrรถr frรฅn frรฅgan.

Syntax fรถr PostgreSQL INSERT IN

INSERT INTO TABLE_NAME (column1, column2, ...columnN)
VALUES (value1, value2,...valueN);

Du kan se i ovanstรฅende syntaxkolumn 1 till N รคr namnen pรฅ kolumnerna i tabellen som du ville infoga data i. Mรฅlkolumnen mรฅste listas i valfri ordning. Vรคrdena som tillhandahรฅlls av frรฅgan eller vรคrdesatsen รคr antingen motsvarande vรคrden fรถr kolumnerna.

Nรคr frรฅgan har kรถrts kan du se utmatningsmeddelandet.

Insert oid 1

Detta utgรฅende meddelande kommer att visas om endast en enstaka rad infogas, oid รคr det numeriska OID som tilldelats den infogade raden.

Exempel pรฅ PostgreSQL Sรคtt in i tabell

Betrakta fรถljande tabell, "tutorials", med tvรฅ kolumner.

"id" heltal DEFAULT vรคrde 1
"tutorial_name" text DEFAULT vรคrde postgre
Och inga begrรคnsningar

PostgreSQL Sรคtt in i tabell

Hรคr รคr steg fรถr PostgreSQL infoga i tabellen:

Steg 1) Infogar en rad i

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');

PostgreSQL Sรคtt in i tabell

ANMร„RKNINGAR: Endast tecknen eller datumvรคrdena behรถver omges av enkla citattecken nรคr du infogar en rad.

Steg 2) Men om du infogar data i alla kolumner kan du utelรคmna kolumnnamnen. Samma infogningssats kan ocksรฅ skrivas som,

INSERT INTO tutorials VALUES (1, 'postgre');

PostgreSQL Sรคtt in i tabell

Steg 3) Datavรคrdena listas i den ordning som kolumnerna visas i tabellen, separerade med kommatecken.

Ovanstรฅende syntax har ett problem som du behรถver fรถr att veta ordningen pรฅ kolumnerna i tabellen. Fรถr att รถvervinna detta problem kan du ocksรฅ lista kolumnerna explicit.

Till exempel har bรฅda nedan givna kommandon samma effekt som visas nedan:

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
INSERT INTO tutorials(tutorial_name, id) VALUES ('postgre',1);

PostgreSQL Sรคtt in i tabell

Steg 4) I det hรคr exemplet kan du se att om du inte har vรคrden fรถr alla kolumner kan du utelรคmna nรฅgra av dem.

I sรฅ fall kommer kolumnerna automatiskt att fyllas med sina standardvรคrden om de anges.

INSERT INTO tutorials(id) VALUES (5);

PostgreSQL Sรคtt in i tabell

Steg 5) Du kan ocksรฅ begรคra standardvรคrden fรถr enskilda kolumner eller hela raden:

INSERT INTO tutorials(id, tutorial_name) VALUES (1, DEFAULT);
INSERT INTO tutorials DEFAULT VALUES;

PostgreSQL Sรคtt in i tabell

Steg 6) Du kan flera rader med ett enda kommando:

INSERT INTO tutorials(id, tutorial_name) VALUES
(1, 'postgre'),
(2, 'oracle'),
(3, 'mysql'),
(4, 'mongo');

PostgreSQL Sรคtt in i tabell

Steg 7) In PostgreSQL, รคr det ocksรฅ fรถr att infoga resultatet av en frรฅga som kanske inte รคr nรฅgra rader, en rad eller flera rader:

INSERT INTO tutorials (id, tutorial_name)
SELECT id, tutorial_name FROM tutorials
WHERE tutorial_name = 'mysql';

PostgreSQL Sรคtt in i tabell

PostgreSQL Infoga uttalande med pgAdmin

Hรคr รคr steg fรถr att infoga uttalande med hjรคlp av pgAdmin i Postgre SQL

Steg 1) I objekttrรคdet

  1. Hรถgerklicka pรฅ tabellen dรคr du vill infoga data
  2. Vรคlj Skript
  3. INFOGA skript

PostgreSQL Infoga uttalande med pgAdmin

Steg 2) I infogningspanelen

  1. Redigera frรฅgan
  2. Klicka pรฅ belysningsknappen
  3. Observera utgรฅngen

PostgreSQL Infoga uttalande med pgAdmin

Steg 3) Du kan ocksรฅ gรฅ till Verktyg > Frรฅgeverktyg fรถr att รถppna Frรฅgeredigeraren, men du fรฅr inte standardinfogningsfrรฅgan.

PostgreSQL Infoga uttalande med pgAdmin

Vanliga frรฅgor

Anvรคnd en enda INSERT med kommaseparerade tupler: INSERT INTO t (a,b) VALUES (1,2), (3,4). Mycket snabbare รคn flera enradiga INSERT-vรคrden.

AI-verktyg genererar parametriserade INSERT-filer fรถr att fรถrhindra SQL-injektion, fรถreslรฅr RETURNING-klausuler och konverterar kalkylbladsdata till INSERT-filer med flera rader.

Ja. AI producerar realistiska startdata, hรคrleder kolumntyper frรฅn scheman och skriver Python eller shell-skript fรถr att batch-bearbeta INSERTs.

RETURNING hรคmtar kolumner frรฅn raderna som just infogades i samma sats. Anvรคnd RETURNING * fรถr alla kolumner eller lista specifika kolumner.

PostgreSQL har ingen fast radgrรคns, men mycket stora satser kan nรฅ minnesgrรคnser. Anvรคnd COPY fรถr massinlรคsningar.

Anvรคnd alltid parametriserade frรฅgor med platshรฅllare fรถr $1 och $2. Sammanfoga aldrig anvรคndarinmatning med INSERT SQL-strรคngar.

Ja. ร–ppna tabellen, vรคlj Visa/Redigera data, lรคgg till en ny rad i rutnรคtet. pgAdmin genererar INSERT-satsen รฅt dig.

INSERT lรคgger till rad fรถr rad via SQL. COPY strรถmmar massdata frรฅn filer mycket snabbare. Anvรคnd COPY fรถr initiala inlรคsningar.

Sammanfatta detta inlรคgg med: