Poista vs. pudota
Sekä Delete että Drop -komennot kuuluvat SQL (Structured Query Language) -käskyihin, ja niitä käytetään tietojen poistamiseen tietokannasta. Poista on DML (Data Manipulation Language) -komento. Se poistaa osan tai kaikki tiedot taulukosta käyttäjän määrittelemän ehdon mukaan. Poista lause poistaa vain taulukon tietueet, mutta taulukon rakenne on sama tietokannassa. Drop-komento on DDL (Data Definition Language) -käsky, ja se toimii eri tavalla kuin Delete-komento. Se ei ole ehdollinen lauseke, joten se poistaa kokonaiset tiedot taulusta ja myös poistaa taulukon rakenteen ja kaikki viittaukset taulukkoon pysyvästi tietokannasta.
Poista lause
Kuten edellä mainittiin, Delete-lause poistaa tiedot taulukosta annettujen ehtojen perusteella, ja Where-lauseketta käytetään Delete: n kanssa tämän vaaditun ehdon määrittämiseksi. Jos Where-lauseketta ei ilmoiteta Delete-toiminnolla, kaikki taulukon tiedot poistetaan taulukosta. Poista-toiminnossa taulukon nykyinen rakenne kuitenkin pysyy samana. Siksi käyttäjän ei tarvitse määrittää taulukon rakennetta, jos hän haluaa käyttää taulukkoa uudelleen. Koska Poista on DML-komento, se ei sitoudu automaattisesti suorituksen jälkeen. Joten tämä voidaan palauttaa edellisen toiminnon kumoamiseksi. Muussa tapauksessa Commit-lausunto tulisi kutsua tekemään muutoksista pysyviä. Suorittaessaan Poista-käskyä se tallentaa tapahtumalokiin merkinnän jokaiselle rivin poistolle. Joten tämä vaikuttaa toiminnan hidastamiseen. Yhtä hyvin,se ei jaa suorituksen jälkeen käytettyä tilaa.
Seuraava on syntaksin Poista-lause.
POISTA
tai
POISTA MISTÄ
Pudotuslausuma
Pudotuslauseke poistaa kaikki taulukkotietueet tietokannasta ilman ehtoja, mutta se myös poistaa taulukon rakenteen, eheysrajoitukset, hakemistot ja käyttöoikeudet tietokannasta pysyvästi. Joten kaikkia muiden taulukoiden suhteita ei myöskään ole enää olemassa, ja taulukon tiedot poistetaan datasanakirjasta. Joten, jos käyttäjä haluaa käyttää taulukkoa uudelleen, hänen on määriteltävä taulukon rakenne ja kaikki muut viitteet taulukkoon uudelleen. Drop on DDL-komento, jota komennon suorittamisen jälkeen ei voida palauttaa takaisin, koska Drop-komento käyttää automaattista sitoutumista. Siksi käyttäjän tulisi olla erittäin varovainen käyttäessään tätä komentoa. Drop-käskyä ei voida käyttää järjestelmää koskevissa taulukoissa, eikä sitä voida käyttää myös taulukoissa, joissa on ulkomaisia avainrajoituksia.
Drop-komentoa voidaan käyttää paitsi SQL-taulukoihin, myös tietokantoihin, näkymiin ja taulukon sarakkeisiin, ja kaikki näihin objekteihin tallennetut tiedot menetetään ikuisesti objektien mukana.
Seuraava on Drop-komennon tyypillinen syntakse.
PUDOTUSTAULUKKO
Mitä eroa on Poista ja Pudota välillä? 1. Poista ja pudota -komennot poistaa taulukon tiedot tietokannasta. 2. Mutta Poista-lause suorittaa ehdollisen poistamisen, kun taas Drop-komento poistaa kokonaiset tietueet taulukosta. 3. Poista käsky poistaa myös vain taulukon rivit ja säilyttää taulukon rakenteen samalla tavalla, kun taas Drop-komento poistaa kaikki taulukon ja taulukon tiedot sekä kaikki muut viitteet tietokannasta. 4. Poista on DML-käsky, kun taas Drop on DDL-komento. Joten, Delete-toiminto voidaan palauttaa takaisin eikä sitä ole määritetty automaattisesti, kun taas Drop-toimintoa ei voida palauttaa millään tavalla, koska se on automaattisesti sitoutunut käsky. 5. Drop-komentoa ei voi käyttää taulukoissa, joihin ulkomaisten avainten rajoitukset ovat viitanneet, kun taas Delete-komentoa voidaan käyttää sen sijaan. 6. Drop-komentoa on käytettävä huolellisesti ja ymmärrettävästi SQL-sovellusten Delete-käskyyn verrattuna. |