SQL-92

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 14. tammikuuta 2018 tarkistetusta versiosta . tarkastukset vaativat 3 muokkausta .

SQL-92 on SQL - tietokannan kyselykielen  kolmas versio . Toisin kuin SQL-89- standardi , kolmas versio oli erittäin merkittävä kielen päivitys. Joitakin pieniä epäjohdonmukaisuuksia lukuun ottamatta SQL-89-standardi on lähes täysin yhteensopiva SQL-92-standardin kanssa.

Historia

Ensimmäinen kansainvälinen SQL-kielistandardi otettiin käyttöön vuonna 1989 (selle sai vastaavan nimityksen SQL/89), ja suurin osa DBMS-järjestelmistä ilmoitti 90-luvun alussa tukevansa tätä standardia. Tässä standardissa on kuitenkin puutteita, nimittäin: standardi määrittää monia tärkeitä kielen ominaisuuksia sellaisina kuin ne on määritelty toteutuksessa tai siitä riippuvaisia. Tämä on antanut paljon tilaa eroille SQL:n eri toteutusten välillä. Toiseksi, joitain kielen käytännön puolia ei mainita lainkaan SQL/89-standardissa. Näitä ovat ensisijaisesti säännöt SQL-kielen upottamisesta C-ohjelmointikieleen ja ns. dynaamiseen SQL:ään. Tämän seurauksena DBMS-toimittajat ottivat käyttöön omia mekanismejaan, jotka tuskin olivat yhteensopivia keskenään. Tämä johti tilanteeseen, jossa yhden SQL/89-standardin mukaisen DBMS:n koodi osoittautui ei-siirrettäväksi toiseen, myös SQL/89-standardin mukaiseen DBMS-järjestelmään [1] .

SQL/89-standardin puutteiden poistamiseksi vuoden 1992 lopussa otettiin käyttöön uusi kansainvälinen standardi SQL-kielelle (SQL/92). Se ei myöskään osoittautunut virheettömäksi, mutta oli silti huomattavasti tarkempi ja täydellisempi kuin SQL/89. SQL/92 ei ainoastaan ​​korvaa SQL/89:n puutteita, vaan sisältää myös monia uusia ominaisuuksia.

Tärkeimmät erot SQL/89:stä

Uudessa standardissa tuli mahdolliseksi käyttää muuttuvan pituisten merkkijonojen tietotyyppiä (eli saraketta määritettäessä ilmoitetaan tallennetun merkkijonon suurin sallittu koko merkeissä, mutta todellisuudessa tallennetaan täsmälleen niin monta merkkiä tietokannassa käyttäjän kirjoittaessa ne), vakio- ja vaihtelevan pituisten bittijonojen tietotyypit (miten ne tosiasiallisesti tallennetaan tietokantaan, ei ole määritelty standardissa), standardoidut tietotyypit päivämäärän ja kellonajan kanssa työskentelyyn: DATE (päivämäärä) ), TIME (aika) ja INTERVAL (aikaväli) [2] .

Tietokantaskeemaa luotaessa (jota voidaan muuttaa myöhemmin) voidaan määritellä kansallisen merkistön ominaisuudet, mukaan lukien lajittelusäännöt, ja voidaan määritellä sekä tallennetuissa tekstijonoissa että tunnisteissa käytettävät merkistöt [2] .

Uusi standardi tarjoaa mahdollisuuden luoda tallennettuja ja katseltavia taulukoita ja asettaa tai poistaa käyttöoikeuksia käyttämällä operaattoreita ( CREATE TABLE, CREATE VIEW, GRANT, REVOKE) milloin tahansa missä tahansa tapahtumassa skeemamäärittelykäskyn ulkopuolella. Siellä oli taulukon tuhoamisoperaattoreita ( DROP TABLEja DROP VIEW), jotka voidaan myös suorittaa minkä tahansa tapahtuman sisällä (jos sinulla on asianmukaiset oikeudet). Lisäksi määritettiin ensimmäistä kertaa operaattori ALTER TABLE, jonka avulla voit muuttaa dynaamisesti aiemmin luodun taulukon ominaisuuksia (erityisesti lisätä siihen uusia sarakkeita) [2] .

Lista innovaatioista

Muistiinpanot

  1. SQL-relaatiotietokannan kielistandardit: yleiskatsaus , arkistoitu 29. joulukuuta 2010 Wayback Machinessa  (venäjä)
  2. 1 2 3 Yhteenveto eroista SQL/92:n ja SQL/89: n välillä Arkistoitu 13. joulukuuta 2009 Wayback Machinessa  (venäjäksi)

Linkit