Imath wiki - SQL nyelv, történelem, az alapvető gazdasági
Mint már említettük, 1970-ben Edgar Kodd javasolt a használata a relációs modell. Amellett, hogy maga a modell, ez is azt javasolta, nyelvi adatok manipulálására keretében ezt a modellt, az úgynevezett DSL / Alpha. Ezt követően, a DSL / Alpha-alapú nyelv jelent meg SQUARE, és ennek alapján viszont a SEQUEL nyelve, amely (köszönhető, hogy néhány zavart védjegy) nevezték később az SQL.
SQL lekérdezés eredménye egy asztal (vagy ha úgy tetszik, az arány), és a legtöbb lekérdezés működik a kapcsolat. Akkor beszélhetünk az a tény, hogy az SQL nagyrészt kifejezi a relációs algebra.
Még egy utolsó megjegyzés. SQL történelmileg nem egy mozaikszó, de gyakran áll a Structured Query Language. Olvassa el, vagy varázslat, vagy a „folytatás” (a folytatást).
Sokan közületek ismerik imperatív programozási nyelvek. SQL nem feltétlenül a nyelv, és most már el lehet végezni a deklaratív. Egyéb deklaratív nyelvek - ez például jelölőnyelveket például HTML vagy XML.
A deklaratív SQL hogy ahelyett, hogy meghatározzák, hogyan lehet elérni az eredményt (mint kényszerítő nyelvre), akkor adja meg, milyen eredményeket kell elérni az alapján, amit a bemeneti adatokat. A többi munkát az adatbázis-összetevő az úgynevezett optimalizáló.
Az SQL meglehetősen nehéz írni „teljes” program - általában megköveteli a beágyazott SQL-hívások bizonyos kényszerítő (vagy funkcionális) nyelvet.
SQL eredetileg a fő módja a felhasználó dolgozik az adatbázisban, és lehetővé teszi, hogy hajtsa végre a következő műveleteket:
- hozzanak létre egy új táblát alapú adatok
- Új nevek az asztalra;
- megváltoztatni nyilvántartások;
- törlését nyilvántartások;
- minta bejegyzéseket egy vagy több táblát (megfelelően egy előre meghatározott feltétel);
- megváltoztatni táblaszerkezetek.
Idővel egyre összetettebbé válik, SQL - gazdagodott új struktúrákat, lehetőséget nyújtott arra, hogy leírja és kezeli az új tárolt objektumok (például indexek, nézetek, triggerek és tárolt eljárások) -, és elkezdte, hogy megszerezzék jellemzője, általános célú programozási nyelv.
Mert minden változás SQL az egyetlen mechanizmus közötti kommunikációs szoftver és az adatbázis. Ugyanakkor, modern adatbázisok és információs rendszerek adatbázis, hogy a felhasználó speciális szerszámok vizuális lekérdezés épület.
Minden javaslatot SQL - ez a kérelem az adatokat az adatbázisból bármilyen utalás egy adatbázis, ami a változás az adatokat az adatbázisba. A következő típusú kéréseket, összhangban az adatbázis változását eredményeként a teljesítmény:
- kéri, hogy hozzon létre vagy módosítson egy adatbázist az új vagy meglévő létesítmények (a típus a kérelemben, és a szerkezet a tárgy létrehozott vagy módosított);
- adatkérések;
- kérelmeket az új, adatok (rekordok);
- kéri az adatok törlésére;
- az adatbázis eléréséhez.
Alapvetően az összes SQL utasítás a következő szintaxist:
Az együttműködés fő célja áruház egy relációs adatbázis tábla, így az összes SQL-lekérdezések - műveletek asztalokon. Ezzel összhangban, lekérdezések vannak osztva:
- kéri, hogy működik a táblázatok maguk (létrehozása és módosítása táblázatok);
- lekérdezések, hogy működnek az egyes bejegyzések (vagy sorok), illetve meghatározza a rekordok.
Minden asztal le, mint egy átadását a mezők (oszlopok a táblázatban), jelezve,
- írja tárolt minden mező értékeit;
- Közötti kapcsolatok táblák (hozzárendelés az elsődleges és másodlagos billentyűk);
- A szükséges információkat építeni az indexet.
Kéri az első típusú, viszont vannak osztva kérelmeket új adatbázis táblákat és lekérdezéseket módosítja a meglévő táblákat. Kéri a második típusú működnek húrok, és akkor lehet osztani a kérdésre a következő formában:
- helyezze be az új vonal
- Az értékek módosítása mezők karaktersorozat vagy állítsa a húrok;
- törlése egy sorban vagy meghatározott sorok.
A fő fajta kérés - a kérés visszatérő (felhasználó), egy sor húrok, amelyekkel hogy készítsen egy három műveletet:
Így a használata SQL csökken, sőt, a formáció mindenféle minták sorok és műveleteket végeznek az összes rekordot tartozó készlet.
Az SQL nyelv egy sor
- szereplők
- utasítás
- és számított funkciókat.
Előnyök és hátrányok
előnyök
hiányosságokat
Hibás a relációs adatmodell
Az alkotók a relációs adatmodell Edgar Kodd, Kristofer Deyt és támogatóik azt a tényt, hogy az SQL nem igaz relációs nyelvet. Különösen, hogy pont a következő hibákat SQL szempontjából relációs elmélet:
- SQL lehetővé ismétli az egy string-asztal, hogy keretében a relációs adatmodell lehetetlen és elfogadhatatlan;
- SQL támogatja meghatározatlan érték (NULL) és többértékű logika;
- SQL oszlopot használja a rend és a hivatkozások számát hangszórók;
- SQL lehetővé oszlopok nincs neve és ismétlődő oszlopok neveit.
Bár az összetettsége SQL és tervezték, mint azt, hogy a végfelhasználó, a végén annyira összetett, hogy lett programozó eszköz. Eltérések előírások ellenére a jelenléte a nemzetközi szabvány ANSI sok fejlesztő módosíthatja az adatbázist az SQL használt nyelvet fejlesztett adatbázis, ami eltérne a szabvány. Így vannak az egyes adott adatbázis nyelv SQL nyelvjárások.
Az SQL, négy nagy üzemeltetői csoportok.
Az üzemeltetők ellenőrzési adatok séma
A szereplők, amelyek lehetővé teszik, hogy hozzon létre, módosítani és törölni táblák (relációk) adatbázis, megszorítások, indexek stb valamint, hogy információt kapjunk a meglévő adatok sémát.
- Create adatbázis-objektumot (az alap is, a táblák, nézetek, a felhasználó, és így tovább. D.)
- ALTER megváltoztatja az objektum,
- DROP eltávolítja az objektumot;
A szereplők, amelyek lehetővé teszik, hogy megkapja, létrehozni, módosítani és törölni adatok létrehozott táblázatokat.
- SELECT adatokat olvas kielégítő előre meghatározott körülmények között,
- INSERT egészíti ki az új adatokat,
- UPDATE módosítja a meglévő adatokat,
- DELETE törli az adatokat;
Ez lehetővé teszi a szereplők szabni az adatbázis, jogosultságok kezelésére, felhasználókat létrehozni, stb
- GRANT biztosítja a felhasználó (csoport), hogy lehetővé tegye bizonyos műveletek a tárgy,
- REVOKE visszavonja a korábban kiadott engedélyek,
- DENY készletek tilalom elsőbbséget élvez a felbontás;
Ez lehetővé teszi, hogy meghatározza a műveletek csoportját, hogy lehet törölni, vagy elkötelezett egyetlen „minden együtt”. Ie A hibát egy ügylet, az egész tranzakció automatikusan törlődik.
- COMMIT vonatkozik a tranzakció,
- ROLLBACK vissza minden változás történt a keretében a jelenlegi tranzakció,
- Mentési pont ügylet oszlik kisebb adagokban.
Nézzük meg ezek közül néhányat részletesebben.
Az üzemeltetők ellenőrzési adatok séma
Az üzemeltetők létrehozása rendszer elemek általában nevezik CREATE.
üzemeltetők létrehozása
Adatbázis létrehozása