RESUMÉ: Denne artikel gennemgår hvordan du bruger de grundlæggende data manipulation language (DML) typer INSERT, UPDATE, UPDATE SLUTTER, SLETTE og UPSERT at ændre data i tabeller.,
- Data Manipulation Language (DML)
- DML Typer
- INDSÆT Erklæring
- UPDATE-Sætning
- UPDATE SLUTTER med
- DELETE-Sætning
- UPSERT
Data Manipulation Language (DML)
EN DML sætning er udført, når du:
- Tilføje nye rækker til en tabel.
- Rediger eksisterende rækker i en tabel.
- Fjern eksisterende rækker fra en tabel.,
DML Typer
- INDSÆT
- OPDATERING
- SLET
INDSÆT Erklæring
Du kan tilføje nye rækker til en tabel ved hjælp af INSERT-sætningen:
Syntaks
INSERT INTO table )] VALUES (value );
Med ovenstående syntaks, kun en række indsættes på en gang.
a) indsæt nye rækker: indsæt nye rækker for hver kolonne.,
Table Structure
Example
INSERT INTO departments(department_id,department_name,manager_id, location_id) VALUES (10, 'IT', 100, 1100);
Or
INSERT INTO departments VALUES (10, 'IT', 100, 1100);
b) Insert Rows with null values:
Example
INSERT INTO departments(department_id,department_name) values (20,'HR');
Or
INSERT INTO departments values (30,'Sales',null,null);
UPDATE Statement
Using an UPDATE statement a user can modify an existing row.,
Syntaks
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
Eksempel 1:
Ændre en værdi afdeling id til 50 for en medarbejder, hvis id er 100 ved hjælp af WHERE::
Eksempel 2
Uden WHERE hele tabellen vil blive opdateret:
Eksempel 3
Opdater FLERE RÆKKER.
Vi kan opdatere mere end en række ved hjælp af en OPDATERINGSERKLÆRING:
OPDATERINGSFORBINDELSER
Vi kan bruge OPDATERINGSFORBINDELSER til at tilføje værdier fra en separat tabel.,
i nedenstående eksempel har vi opdateret værdierne i den anden tabel ved at forbinde værdierne fra den første tabel med angivelse af betingelsen i clausehere-klausulen.
Opdatere værdierne i den anden tabel ved at forene værdier fra den første tabel:
Oprette to tabeller med data:
Opdatere værdierne i den anden tabel ved at forene værdier fra den første tabel:
postgres=# UPDATE states SET Name = countries.Name FROM countries WHERE states.ID = countries.ID;
Resultat:
postgres=# select * from states ; id | name ----+--------- 1 | America 2 | Brazil 3 | Canada(3 rows)
DELETE-Sætning
DELETE-sætning bruges til at fjerne eksisterende rækker fra en tabel.,
Syntaks
DELETE table ;
Eksempel 1:
Slet rækker ved at begrænse en tilstand ved hjælp af en WHERE-delsætning. Hvis clausehere-klausulen udelades, vil alle rækker fra tabellen blive slettet.
postgres=# delete from departments where department_name = 'HR';
Eksempel 2
En underforespørgsel vil hente et output først, og derefter HVOR betingelsen vil blive udført:
postgres=# DELETE FROM departmentsWHERE department_id = (SELECT department_id FROM departments where location_id=1200);
UPSERT ERKLÆRING
ved Hjælp af en UPSERT erklæring, kan du opdatere en registrering, hvis det allerede eksisterer, eller indsæt en ny rekord hvis det ikke er tilfældet. Dette kan gøres i en enkelt erklæring.,
eksempel
nedenfor prøveeksempel for brug af INSERT…Om konflikt: