Samenvatting: in deze tutorial leert u hoe u de SQL INSERT-instructie gebruikt om gegevens in te voegen in tabellen.
De instructie INSERT
voegt een of meer rijen in een tabel in. De INSERT
-instructie wordt soms een INSERT INTO
-instructie genoemd.
SQL INSERT-instructie – voeg één rij in een table
Het volgende illustreert de INSERT
-instructie die een enkele rij in een bestaande tabel invoegt.
1
2
|
INSERT IN TO table (column1, column2, …)
WAARDEN (waarde1, waarde2, …);
|
Om een rij in een tabel in te voegen, moet u specificeer drie dingen:
- Ten eerste, de tabel, die u een nieuwe rij wilt invoegen, in de
INSERT INTO
clausule. - Ten tweede een door kommas gescheiden lijst met kolommen in de tabel, omgeven door haakjes.
- Ten derde, een door kommas gescheiden lijst met waarden omgeven door haakjes in de
VALUES
clausule.
De lijst met kolommen moet hetzelfde aantal elementen hebben als de lijst met waarden, anders geeft de database-engine een foutmelding.
Laten we eens kijken bij de volgende shippers
tabel:
De volgende INSERT
-instructie voegt een nieuwe rij in de shippers
-tabel in:
1
2
|
VOEG IN verzender in (bedrijfsnaam, telefoon)
WAARDEN (“Alliance Shippers”, “1-800-222-0451”);
|
Twee constanten, "Alliance Shippers"
en "1-800-222-0451"
worden gespecificeerd in de VALUES
-clausule. De database-engine heeft ze respectievelijk in de companyname
en phone
kolommen ingevoegd.
Na het uitvoeren van de instructie, zal de databaseserver geeft een bericht terug om het aantal betrokken rijen aan te geven. In dit geval krijgen we een bericht “1 rij aangetast” dat er met succes een nieuwe rij is ingevoegd.
Merk op dat we de shipperID
niet hebben gespecificeerd. kolom in de kolommenlijst omdat de shipperID
-kolom een AUTO INCREMENT
-kolom is, genereert de database-engine automatisch de volgende reeks wanneer er een nieuwe rij wordt weergegeven wordt in de tabel ingevoegd.
Om u te helpen minder code te schrijven, biedt SQL een kortere vorm van de INSERT
-instructie als volgt:
1
2
|
INSERT IN tabel
WAARDEN (waarde1, waarde2, …)
|
In dit formulier moet de lijst met waarden dezelfde volgorde hebben als de lijst met kolommen in de tabel. Als u dit formulier van de statement, moet u waarden opgeven voor alle kolommen behalve de AUTO INCREMENT
kolom.
Het is een goede gewoonte om de kolomnamen in de INSERT
instructie om de code gemakkelijker te onderhouden te maken.
De volgende INSERT
instructie heeft hetzelfde effect als de instructie boven:
1
2
|
VOEG IN in verladers
WAARDEN (” Alliance Shippers “,” 1-800-222-0451 “);
|
SQL INSERT-instructie – voeg meerdere rijen in een tabel
Met de instructie INSERT
kunt u ook meerdere rijen in een tabel invoegen met een enkele instructie als volgt:
1
2
3
4
|
INSERT IN table_name (column1, column2 …)
VALUES (value1, value2, …),
(value1, value2, …) ,
…
|
In deze formulier, moet u meerdere zoeklijsten opgeven, elke lijst wordt gescheiden door een komma.
De volgende INSERT
instructie voegt twee rijen in de shippers
tabel in:
1
2
3
|
VOEG IN verzender (bedrijfsnaam, telefoon)
WAARDEN (“UPS”, “1-800-782-7892”),
(“DHL”, “1-800-225-5345”)
|
SQL INSERT-instructie – kopieer tabelgegevens
In plaats van een lijst met waarden op te geven, kunt u een SELECT-instructie gebruiken om waarden uit een andere tabel te selecteren en deze aan de INSERT
uitspraak. Hiermee kunt u gegevens van een tabel naar een andere tabel kopiëren.
De volgende verklaring illustreert hoe u gegevens van de another_table
naar de :
1
2
3
4
5
6
7
|
INSERT IN table (column1, column2, …)
SELECT
column1, column2, …
FROM
another_table
WAAR
conditie
|
De lijst met kolommen in de SELECT
-clausule moet overeenkomen met de lijst met kolommen in de INSERT INTO
clausule. Als u slechts gedeeltelijke gegevens wilt kopiëren, moet u een voorwaarde specificeren in de WHERE-clausule.
Stel dat u een tijdelijke tabel heeft met de naam shippers_tmp
die dezelfde structuur als de shippers
tabel. Om gegevens van de shippers
-tabel naar de shippers_tmp
-tabel te kopiëren, gebruik je de volgende instructie:
1
2
3
4
5
|
VOEG IN shippers_tmp (verzender-ID, naam, telefoon)
SELECTEER
verzender-ID, bedrijfsnaam, telefoon
VAN
verzenders
|
In deze tutorial heb je geleerd hoe je het INSERT
statement kunt gebruiken om een of meer rijen in een tabel in te voegen. Bovendien hebt u ook geleerd hoe u de gegevens van een tabel naar een andere tabel kopieert met behulp van de INSERT SELECT INTO
-instructie.
- Was deze tutorial nuttig?
- JaNee