Ero pudotuksen ja katkaisun välillä

Ero pudotuksen ja katkaisun välillä
Ero pudotuksen ja katkaisun välillä

Video: Ero pudotuksen ja katkaisun välillä

Video: Ero pudotuksen ja katkaisun välillä
Video: 20 Secrets And Tricks In Toca Life Office 2024, Marraskuu
Anonim

Pudota vs. Katkaise

Drop ja Truncate ovat kaksi SQL (Structured Query Language) -käskyä, joita käytetään tietokannan hallintajärjestelmissä, joissa haluamme poistaa tietueita tietokannasta. Sekä Drop- että Truncate-käskyt poistavat taulukon ja siihen liittyvän SQL-käskyn koko tiedot. Poistotoiminto ei ole tehokas tässä tapauksessa, koska se käyttää enemmän tallennustilaa kuin Pudota ja Katkaise.

Jos haluamme hylätä tietokannan taulukon kokonaan kaikkine tiedoineen, SQL antaa meille mahdollisuuden tehdä tämä helposti Drop-käskyn avulla. Pudotuskomento on DDL (Data Definition Language) -komento, ja sitä voidaan käyttää olemassa olevan tietokannan, taulukon, hakemiston tai näkymän tuhoamiseen. Se poistaa koko taulukon tiedot sekä taulukkorakenteen tietokannasta. Saatamme myös haluta päästä eroon kaikista taulukon tiedoista yksinkertaisesti, mutta ilman taulukkoa, ja voimme käyttää Truncate-käskyä SQL:ssä tällaisessa tilanteessa. Truncate on myös DDL-komento ja se poistaa kaikki taulukon rivit, mutta säilyttää taulukon määritelmän samana tulevaa käyttöä varten.

Poista komento

Kuten aiemmin mainittiin, Drop-komento poistaa taulukon määritelmän ja kaikki sen tiedot, eheysrajoitukset, indeksit, liipaisimet ja käyttöoikeudet, jotka luotiin kyseiselle taulukolle. Joten se pudottaa olemassa olevan objektin tietokannasta kokonaan, ja suhteet muihin taulukoihin eivät myöskään ole enää voimassa komennon suorittamisen jälkeen. Lisäksi se poistaa kaikki tiedot taulukosta tietosanakirjasta. Seuraavassa on tyypillinen syntaksi Drop-käskyn käyttämiselle taulukossa.

PUDOTA PÖYTÄ

Meidän on yksinkertaisesti korvattava taulukon nimi, jonka haluamme poistaa tietokannasta yllä olevassa Drop-komennon esimerkissä.

On tärkeää huomauttaa, että Drop-käskyä ei voida käyttää taulukon poistamiseen, johon on jo viitattu vierasavainrajoitteella. Siinä tapauksessa viittaava vieraan avaimen rajoitus tai kyseinen taulukko on ensin hylättävä. Drop-käskyä ei myöskään voi käyttää tietokannan järjestelmätaulukoissa.

Koska Drop-komento on automaattinen vahvistuslauseke, käynnistettyä toimintoa ei voi peruuttaa eikä laukaisua käynnistetä. Kun taulukko hylätään, kaikki viittaukset taulukkoon eivät ole kelvollisia, joten jos haluamme käyttää taulukkoa uudelleen, se on luotava uudelleen kaikilla eheysrajoitteilla ja käyttöoikeuksilla. Kaikki suhteet muihin tauluihin on myös sijoitettava uudelleen.

Katkaise komento

Truncate-komento on DDL-komento, ja se poistaa kaikki taulukon rivit ilman käyttäjän määrittämiä ehtoja ja vapauttaa taulukon käyttämän tilan, mutta taulukon rakenne sarakkeineen, indekseineen ja rajoitteineen pysyy samana. Katkaiseminen poistaa tiedot taulukosta irrottamalla taulukon tietojen tallentamiseen käytetyt tietosivut, ja vain nämä sivujen purkaukset säilytetään tapahtumalokissa. Joten se käyttää vähemmän tapahtumalokiresursseja ja järjestelmäresursseja verrattuna muihin vastaaviin SQL-komentoihin, kuten Delete. Joten Truncate on hieman nopeampi lausunto kuin muut. Seuraava on Tyypillinen syntaksi komennossa Truncate.

Katkaise taulukko

Meidän pitäisi korvata taulukon nimi, josta haluamme poistaa kaikki tiedot, yllä olevassa syntaksissa.

Katkaisua ei voi käyttää taulukossa, johon on viitattu vierasavainrajoitteella. Se käyttää sitoumusta automaattisesti ennen kuin se toimii ja toista sitoumusta sen jälkeen, joten tapahtuman peruuttaminen on mahdotonta, eikä laukaisimia käynnistetä. Jos haluamme käyttää taulukkoa uudelleen, tarvitsemme vain tietokannan olemassa olevan taulukon määritelmän.

Mitä eroa on pudotuksen ja katkaisun välillä?

Sekä Pudota- että Katkaise-komennot ovat DDL-komentoja ja myös automaattisia vahvistuslausekkeita, joten näillä komennoilla suoritettuja tapahtumia ei voida peruuttaa.

Ensisijainen ero Pudotuksen ja Katkaisun välillä on se, että Pudota-komento poistaa kaikki taulukon tiedot, mutta se myös poistaa taulukkorakenteen pysyvästi tietokannasta kaikilla viittauksilla, kun taas Katkaise-komento poistaa vain kaikki tiedot. taulukon rivit, ja se säilyttää taulukon rakenteen ja sen viitteet.

Jos taulukko hylätään, suhteet muihin taulukoihin eivät ole enää voimassa ja myös eheysrajoitukset ja käyttöoikeudet poistetaan. Joten jos taulukkoa vaaditaan käytettäväksi uudelleen, se on rekonstruoitava suhteiden, eheysrajoitusten ja myös käyttöoikeuksien kanssa. Mutta jos taulukko katkaistaan, taulukon rakenne ja sen rajoitukset säilyvät myöhempää käyttöä varten, joten mitään yllä olevista luomisista ei vaadita uudelleenkäyttöön.

Kun näitä komentoja käytetään, meidän on oltava varovaisia niiden käytössä. Lisäksi meidän pitäisi ymmärtää paremmin näiden komentojen luonne, niiden toiminta ja myös huolellinen suunnittelu ennen niiden käyttöä, jotta vältytään puuttumiselta olennaiseen. Lopuksi molempia näitä komentoja voidaan käyttää tietokantojen puhdistamiseen nopeasti ja helposti, mikä kuluttaa vähemmän resursseja.

Suositeltava: