PostgreSQL:n DELETE-komennon käyttö
PostgreSQL DELETE avulla voit poistaa tietoja taulukosta. Komentoa voidaan tarkentaa ehtojen avulla, jolloin voit määrittää yksittäisten rivien poistamisen. Koska poistot ovat PostgreSQL:ssä peruuttamattomia, on tärkeää käyttää komentoa huolellisesti.
Mikä on PostgreSQL DELETE?
PostgreSQL: n DELETE käytetään tietueiden poistamiseen taulukosta. WHERE avulla voit valita poistettavat rivit. Ilman WHERE kaikki määrittämäsi taulukon tiedot poistetaan pysyvästi. Koska tiedot poistetaan pysyvästi, sinun tulee noudattaa varovaisuutta tätä komentoa käytettäessä.
Mikä on PostgreSQL DELETE:n syntaksi?
PostgreSQL DELETE:n perusrakenteet ovat seuraavat:
DELETE FROM table_name
WHERE [condition];postgresqlKomento DELETE FROM käynnistää rivien poistamisen määrittämästäsi taulukosta. Lausekkeella WHERE voit määrittää yksittäiset rivit, joiden tiedot halutaan poistaa. Useiden ehtojen määrittämiseen voit käyttää AND tai OR.
Ennen tietojen poistamista varmista, että sinulla on ajantasainen varmuuskopio tietokannasta. Voit myös suorittaa poistotoiminnon osana transaktiota. Näin vältät tahattoman tietojen menetyksen, jos komento suoritetaan virheellisesti.
Kuinka poistaa tietoja taulukosta
Jotta saisimme paremman käsityksen siitä, miten DELETE toimii PostgreSQL:ssä, tarkastellaanpa käytännön esimerkkiä. Ensin luomme CREATE TABLE -komennolla taulukon nimeltä ”customer_list”. Sen jälkeen täytämme sen INSERT INTO-komennolla. Taulukossa on kolme saraketta (id, name ja city) ja se sisältää neljä tietuetta:
|id|name|city|
|-|-|-|
|1|Haines|Sheffield|
|2|Sullivan|Glasgow|
|3|Smith|Newcastle|
|4|Haines|Belfast|postgresqlJos käytät PostgreSQL DELETE ilman ehtoa, kaikki taulukon tiedot poistetaan. Taulukon rakenne itsessään ei kuitenkaan poistu. Komento näyttää tältä:
DELETE FROM customer_list;postgresqlKuinka poistaa rivi PostgreSQL:ssä
Usein joudut poistamaan yksittäisen rivin. Voit tehdä tämän lisäämällä WHERE. Oletetaan esimerkiksi, että haluamme poistaa Sullivanin (tunnusnumero 2) luettelostamme. Voimme tehdä sen seuraavalla koodilla:
DELETE FROM customer_list
WHERE id = 2;postgresqlKuinka määrittää rivi useiden ehtojen avulla
Jos käsittelet suuria taulukoita, niissä voi olla päällekkäisiä tietueita. Varmistaaksesi, että vain yksi rivi poistetaan, voit käyttää useita ehtoja. Yllä olevassa taulukossa on kaksi Haines-nimistä asiakasta, mutta haluamme poistaa vain toisen tietueen. Tätä varten voimme yhdistää kaksi ehtoa:
DELETE FROM customer_list
WHERE name = 'Haines'
AND id >= 3;postgresqlTämä komento poistaa kaikki rivit, joiden nimessä on Haines ja joiden id arvo on vähintään 3. Koska ensimmäisen Haines-merkinnän id arvo on alle 3, se säilyy tietokannassa poistokomennon suorittamisen jälkeen.