TIETOKANTOJEN PERUSTEET MARKKU SUNI



Samankaltaiset tiedostot
TIETOKANTOJEN PERUSTEET MARKKU SUNI

TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI

TIETOKANTOJEN PERUSTEET MARKKU SUNI

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

HELIA 1 (11) Outi Virkki Tiedonhallinta

HELIA 1 (14) Outi Virkki Tiedonhallinta

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

SQL:N PERUSTEET MARKKU SUNI

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien

Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC)

Tietokantakurssit / TKTL

TIETOKANTOJEN PERUSTEET OSIO 14 MARKKU SUNI

jotakin käyttötarkoitusta varten laadittu kokoelma toisiinsa liittyviä säilytettäviä tietoja

Tietojärjestelmä tuotantoympäristössä. Sovellusohjelmat Helsingin ammattikorkeakoulu Stadia / Tekniikka ja liikenne Vesa Ollikainen

TIETOKANNAT JOHDANTO

Relaatiomalli ja -tietokanta

Tietokanta (database)

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Sovellusarkkitehtuurit

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX

Järjestelmäarkkitehtuuri (TK081702) Hajautettu tietokanta. Hajautuksen hyötyjä

SQL - STRUCTURED QUERY LANGUAGE

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

Tietokantojen suunnittelu, relaatiokantojen perusteita

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

Tällä viikolla. Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

Helsingin yliopisto/tktl DO Tietokantojen perusteet, s 2000 Johdanto & yleistä Harri Laine 1. Tietokanta. Tiedosto

TIETOKANTOJEN PERUSTEET MARKKU SUNI

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

Written by Administrator Monday, 05 September :14 - Last Updated Thursday, 23 February :36

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

A TIETOKANNAT, 3 op Syksy TI07. Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi

2. Käsiteanalyysi ja relaatiomalli

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

OUTER JOIN se vanha kunnon kaveri

Kuva 7.2 vastaustaulu harjoitukseen 7.2

SELECT-lauseen perusmuoto

HELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki

Kyselyn yleisrakenne:

EXEC SQL BEGIN DECLARE SECTION

HELIA 1 (17) Outi Virkki Tiedonhallinta

Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008

PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009

TIETOKANTOJEN PERUSTEET OSIO 8 MARKKU SUNI

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

HELIA 1 (14) Outi Virkki Tiedonhallinta

HAAGA-HELIA TIKO-05 1 (19) ICT23a Tietokannan suunnittelu ja toteutus O.Virkki

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Helsingin yliopisto Tietojenkäsittelytieteen laitos (H.Laine) Tietokantojen perusteet. Liitteenä: Tiivistelmä SQL-syntaksista

HAAGA-HELIA heti09 1 (27) ICT05 Tiedonhallinta ja tietokannat O.Virkki Relaatiomalli

Tiedonhallinnan perusteet. H11 Ovien ja kulun valvontajärjestelmän tietokanta

Tietokantojen perusteet

käännös käännösvaiheessa tarkasettaan linkitys

Action Request System

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu

A TIETOKANNAT, 4 op Kevät TI09

Tietokannat II -kurssin harjoitustyö

SQL Buddy JAMK Labranet Wiki

MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO

IIO10200 Tietokantaohjelmointi (4 op)

Tietokannan hallintajärjestelmän (DBMS) palvelut ja rakenne

IIO10200 TIETOKANTAOHJELMOINTI (4 OP) OPINTOJAKSON ESITTELY JOUNI HUOTARI

HELIA 1 (12) Outi Virkki Tiedonhallinta

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2006 Tiedon mallinnus ja tietokannat. Harri Laine 1. Tietokanta.

HSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

TIEDONHALLINTA - SYKSY Luento 2. Pasi Ranne /8/17 Helsinki Metropolia University of Applied Sciences

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

Muita tietokantaobjekteja. Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu

Jouni Huotari & Ari Hovi. Käsitemallinnuksesta relaatiokantaan KÄSITEMALLI. LOOGINEN MALLI: tietomalli valittu. FYYSINEN MALLI: DBMS valittu

POLKU LUOKKAKAAVIOISTA TAULUJEN TOTEUTUKSEEN

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Kirjasto Relaatiotietokannat Kevät Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

Tietomallit. Näkökulmat tietoon. Näkökulmat tietoon. Mitä malleja olisi tarjolla? Abstraktiotasot tiedon käsittelyssä

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä

Ohjelmoinnin perusteet Y Python

Joko tunnet nämän Oracle10g SQL:n piirteet? Kari Aalto Saariston IT

Liitokset - haut useaan tauluun

1.1 Käsitteet ja termit 1.2 Historia. Luku 1. Johdanto. ITKA204 kevät

Käsiteanalyysi prosessina ja tarveanalyysi

KÄSITEANALYYSI PROSESSINA JA TARVEANALYYSI

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto. Opettajien nimet: Opiskelijoiden pääaineet

FYYSINEN SUUNNITTELU

MySQL ja PostgreSQL Seminaarityö

Fyysinen suunnittelu

Maiju Mykkänen Susanna Sällinen

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 Tietokannan suunnittelusta Harri Laine 1

Transkriptio:

TIETOKANTOJEN PERUSTEET MARKKU SUNI

OSIO 02 Tietokantojen perusteita

Tietokanta Näistä vaatimuksista seuraa: tietokantaan liittyy ohjelmisto, joka hoitaa sitä tämä ohjelmisto varsinaisesti lukee ja kirjoittaa kantaa tuotanto-ohjelmat vain pyytävät palveluja mikä tehokkaasti, mikä vähemmän näkymä -ajattelu ohjelma pyytää tietoja nimeltä READ ETUNIMI, SUKUNIMI... ohjelman ei tarvitse tietää, missä kenttä sijaitsee tietokantajärjestelmä tarvitsee myös omat työtilat VIHREÄ RYHMÄ

Tietokanta Näistä vaatimuksista seuraa myös: kukin tieto vain yhdessä kohtaa tieto on turvattava kuka saa muuttaa suojaus kuka on muuttanut tieto muutoksista, jäljitys kaikki ohjelmat käyttävät samaa tietokantaa tuettava samanaikaista käyttöä tietojen lukitus tietokanta järjestettävä ja talletettava tehokkaasti PUNAINEN RYHMÄ

Tietokanta asiakas tilaus Korjaamo Varaosat Tietokantarakenteita hierarkinen esim DL/1 relaatiomalli erilliset pienet taulut taulujen välillä relaatiot kyselyn tulos aina: monta havaintoa kaikki ehdon täyttävät

Tehdas A Jylhävuori OY Jylhävuori kauppaneuvos Tehdas B Maailma on hierarkinen Tietokantarakennekin voi olla hierarkinen esim DL/1

Asiakasrekisteri Tunnistetiedot nimi, LYT Yht. hlöt Tietokantarakenteita hierarkinen esim DL/1 Tässä kuvaus yhdestä asiakkaasta Yks. A Yks. B

Yks. A Asiakasrekisteri Tunnistetiedot nimi, LYT Yht. hlöt hakupolku Yks. B Tietokantarakenteita hierarkinen esim DL/1 juurisegmentti segmentti lapsi, vanhempi sisarukset segmentti koostuu kentistä

Asiakasrekisteri Tunnistetiedot nimi, LYT Tietokantarakenteita hierarkinen esim DL/1 Yht. hlöt Yks. A Yks. B Yht. henkilöitä voi olla monta... segmentilla monta ilmentymää

Asiakasrekisteri Tunnistetiedot nimi, LYT Yht. hlöt Tietokantarakenteita hierarkinen esim DL/1 Ohjelmat lukevat Erilaisia segmenttien yhdistelmiä Yks. A Yks. B

Tietokantarakenteita hierarkinen esim DL/1 relaatiomalli erilliset pienet taulut taulujen välillä relaatiot kyselyn tulos aina: monta havaintoa kaikki ehdon täyttävät

Relaatiomalli ei hierarkinen Dr. E. F. Codd julkaisi vuonna 1970 artikkelin: Tiedon relaatiomalli suurissa jaetuissa tietovarastoissa Codd määritteli 13 sääntöä relaatiomallille

Relaatiomalli Coddin 13 sääntöä 1. Relaatiotietokannan hallittavuus relaatio-ominaisuuksin 2. Informaatiosääntö: kaikki informaatio arvoina tauluissa 3. Varmistettu saatavuus: jokainen arvo saavutettava 4. Järjestelmällinen null-arvon tuki 5. Aktiivinen reaaliaikainen luettelo 6. Suhteellinen tiedon alikieli 7. Näkymän päivityssääntö 8. Joukko-tason lisäys, päivitys ja poisto 9. Fyysinen tiedon riippumattomuus 10. Looginen tiedon riippumattomuus 11. Eheysriippumattomuus 12. Hajautusriippumattomuus 13. Ei ole mahdollista ohittaa eheyssääntöjä

Relaatiomalli Coddin 13 sääntöä 1. Relaatiotietokannan hallittavuus relaatio-ominaisuuksin Relaatiotietokannassa voitava hallita tietokantoja sen relaatioominaisuuksien kautta Sama käsittelykieli, samat operaatiot käytössä kannan hallintaan 2. Informaatiosääntö: kaikki informaatio arvoina tauluissa kaikki informaatio relaatiokannassa (myös taulujen ja sarakkeiden nimet) esitetään arvoina tauluissa Ei erillistä hallintasysteemiä tai hallintataulustoa 3. Varmistettu saatavuus jokainen arvo tietokannassa on saavutettava taulun nimen, pääavaimen ja sarakenimen perusteella Jokainen arvo tarkoittaa sekä dataa, että rakennetietoa 4. Järjestelmällinen null-arvon tuki Null tarkoittaa tässä tuntematonta arvoa tietokanta tuottaa täydellisen tuen null-arvolle erotuksena oletusarvoista ja riippumatta toiminta-alueesta

Relaatiomalli Coddin 13 sääntöä 5. Aktiivinen reaaliaikainen luettelo tietokannan ja sen sisällön määrittely esitetään loogisella tasolla tauluina ja voidaan siksi kysellä tietokannan kielellä 6. Suhteellinen tiedon alikieli Vähintään yhdellä tuetulla kielellä tulee olla hyvin määritelty rakenne Sen täytyy tukea tietojen määrittelyä, käsittelyä, eheyssääntöjä, oikeuksia ja tapahtumia 7. Näkymän päivityssääntö Kaikki näkymät, jotka ovat teoreettisesti päivitettäviä, voidaan päivittää järjestelmällä 8. Joukko-tason lisäys, päivitys ja poisto DBMS tukee joukkohakujen lisäksi joukko-tason lisäystä, päivitystä ja poistoa DBMS = Data Base Management System

Relaatiomalli Coddin 13 sääntöä 9. Fyysinen tiedon riippumattomuus Sovellusohjelmat ovat loogisesti muuttumattomia, kun fyysisiä hakumenetelmiä tai tietovaraston rakennetta muutetaan 10. Looginen tiedon riippumattomuus Sovellusohjelmat ovat loogisesti muuttumattomia, mikäli mahdollista, kun fyysisiä hakumenetelmiä tai tietovaraston rakennetta muutetaan 11. Eheysriippumattomuus Tietokantakielen täytyy kyetä määrittelemään eheyssääntöjä Ne täytyy voida tallettaa online-luetteloon eikä niitä voi ohittaa 12. Hajautusriippumattomuus Sovellusohjelmat ovat loogisesti muuttumattomia, kuin tietoa ensimmäisen kerran hajautetaan, tai kun sitä uudelleenhajautetaan 13. Ei ole mahdollista ohittaa eheyssääntöjä Ei edes käyttämällä alemman tason kieltä

Relaatiomalli Relaatiojärjestelmän ideoita Coddin idea perustuu suhteellisuusalgebran käyttöön Tieto jaetaan joukkoihin ja suhteutettuihin yleisiin alijoukkoihin Tiedot erotetaan joukkoihin, jotka muistuttavat taulurakennetta. Taulut koostuvat yksittäisistä tietoelementeistä, joita sanotaan sarakkeiksi tai kentiksi. Yksi itsenäinen kenttäjoukko on nimeltään tietue tai rivi. Tiedon jakamista erillisiin joukkoihin kutsutaan normalisoinniksi

Relaatiomalli Coddin relaatiotietokantamalli Juuritaso Taso 1 juuren lapsi Taso 2 tason 1 lapsi Taso 3 Tason 2 lapsi

Relaatiomalli Coddin relaatiotietokantamalli HUOM.: Tämä on LOOGINEN KUVA Tämä EI ole toteutus Hierarkiset tietokannat toteutettiinkin tähän tapaan

Taulu Id enimi snimi muuta 1 Aki Joki xxx 2 Esa Elo yyy 3 Ari Salmi zzz 4 Mika Virta www 5 Sami Meri sss sarake rivi Taulu on relaatiojärjestelmän perusyksikkö. Koostuu riveistä ja sarakkeista Joka rivin joka sarakkeella on arvo ehkä null

Id enimi snimi muuta 1 Aki Joki xxx 2 Esa Elo yyy Id katuos postios maa 1 Alikatu 20100 FI 2 Ylikatu 20880 FI Id tuotenro pvm kpl 1 11 010101 10 1 13 010101 12 2 11 010201 15 Tuotenro hinta nimike 11 100 metla 12 10 pesti 13 20 sevakko Taulut: asiakas osoite tilaus tuote

Id enimi snimi muuta 1 Aki Joki xxx 2 Esa Elo yyy Id katuos postios maa 1 Alikatu 20100 FI 2 Ylikatu 20880 FI Id tuotenro pvm kpl 1 11 010101 10 1 13 010101 12 2 11 010201 15 Tuotenro hinta nimike 11 100 metla 12 10 pesti 13 20 sevakko Käsitteitä: tietokanta taulu rivi sarake

Id enimi snimi muuta 1 Aki Joki xxx 2 Esa Elo yyy Id katuos postios maa 1 Alikatu 20100 FI 2 Ylikatu 20880 FI Id tuotenro pvm kpl 1 11 010101 10 1 13 010101 12 2 11 010201 15 Tuotenro hinta nimike 11 100 metla 12 10 pesti 13 20 sevakko Tilauslista: enimi snimi katuos postios tuotenro nimike kpl yhthinta yhdistävinä tekijöinä: id ja tuotenro

RELAATIOTIETOJEN KÄSITTELY SQL-kielellä: Structured Query Language Se ei ole strukturoitu (Structured) Se ei ole vain kyselyihin (Query) Se ei ole puhtaasti ottaen kieli (Language) kehittelypaikkana IBM:n laboratorio San Jose, California aika 1970-luvun loppupuoli alunperin IBM:n relaatiokantaa DB2 varten Ei-rakenteinen tarkoittaa mitä ennemmin kuin miten SQL määrittelee mitkä tiedot haetaan, poistetaan tai lisätään EI sitä, miten se tehdään

RELAATIOTIETOJEN KÄSITTELY SQL-kielellä: Structured Query Language Se ei ole strukturoitu (Structured) Se ei ole vain kyselyihin (Query) Se ei ole puhtaasti ottaen kieli (Language) SQL on hyvin standardoitu: ANSI standardi ISO standardi tuotteistajilla omia lisäyksiä ja muunnelmia yleisesti kuitenkin perus-sql on samanlainen kaikissa ympäristöissä

RELAATIOTIETOJEN KÄSITTELY SQL-kielellä: Structured Query Language Se ei ole strukturoitu (Structured) Se ei ole vain kyselyihin (Query) Se ei ole puhtaasti ottaen kieli (Language) Tietokantajärjestelmälle esitetään kysely Tietokanta tutkii kyselyn, kääntää ja analysoi sen (bind) Optimoi hakupolun (päättää, missä järjestyksessä haku) Hakee tarvittavat rivit Palauttaa kutsuvalle ohjelmalle kerralla kaikki ehdot täyttävät rivit SQL voiolla staattinen = ennalta käännetty, kiinteä dynaaminen = samantien käännös ja suoritus

TYYPILLINEN SQL-KYSELY QUIT; RUN; CREATE TABLE data.tiedot AS SELECT nw1o0.client_nr, nw1o0.client_typ, nw1a0.name, nw1a0.more_name FROM prod.nw1o0, prod.nw1a0 WHERE nw1o0.client_r = nw1a0.client_r AND nw1o0.client_typ = 40 AND nw1o0.client_c LIKE 049% ORDER BY nw1a0.name ;

TIETOKANTARATKAISUISTA Ennen sitten... nytten

TIETOKANTARATKAISUISTA Uusille sovelluksille verkkoympäristössä ominaista pienentyneet ylläpitokustannukset sovelluksia voidaan skaalata sopivimpaan kokoon voidaan käyttää myös pieniä välineitä pienentynyt verkon kuormitus toiminnot tapahtuvat siellä, missä se on edullista voidaan tehdä paljon tai vähän tietyssä laitteessa erilaiset järjestelmät voivat toimia yhdessä edellytyksenä on vain yhteinen verkkoprotokolla parantunut tietojen yhtenäisyys verkon käyttö ja siirräntä ohjaa

TIETOKANTARATKAISUISTA Asiakas/palvelin-malli (Client/Server model) Asiakas/palvelin-järjestelmä on prosessimalli, jossa yksi sovellus on jaettu kahdelle eri prosessorille ( edustaprosessori ja taustaprosessori ), jotka toimivat yhdessä (näkymättä käyttäjälle) suorittaessaan yksittäistä tehtävää. Asiakas/palvelin-tuote liittää prosessorit yhteen luoden yhden järjestelmän kuvitelman. Jaettavat resurssit ovat asiakkaita, jotka käyttävät sovittuja palveluja. Rakenne on rekursiivinen, eli palvelimet voivat muuttua asiakkaiksi ja pyytää palveluja muilta verkon palvelimilta ja niin edelleen. Bernard H. Boar kirjassa Implementing Client/Server Computing.

Microsoft Access SQL-toteutuksia Kuuluu Office-tuoteperheeseen Voit käyttää graafista käyttöliittymää tai kirjoittaa SQL:a Personal Oracle Voit kirjoittaa käskyrivejä Voit käyttää C++ tai Visual Basic-kielisiä ohjelmia Apuohjelmia tietokannan käsittelyyn ja luontiin Microsoft Query Kyselytyökalu Windows kehitystyökalujen (C++, VB) mukana Vie SQL-käskyt ohjaimelle, joka vie ne tietokannalle

IBM Universal DB2 SQL-toteutuksia Sama tietokanta kaikissa ympäristöissä ODBC Open DataBase Connectivity toiminnallinen kirjasto tarjoaa yleisen ohjelmointirajapinnan alla olevaan tietokantajärjestelmään keskustelee tietokannan kanssa ohjaimen kautta yksikään ODBC:n funktio ei ole tietokantatoimittajaan sidottu sama koodi toimii kaikilla tietokannoilla ODBC mukana monissa tuotteissa koodi yleistä, standardin etuja ei välttämättä niin tehokasta kuin suora kannan käyttö

SQL-toteutuksia Sovellus ODBC Open DataBase Connectivity kutsuu ODBC-funktioita Ohjainten hallinta ODBCohjain Tiedot lataa ODBC-ohjaimen suorittaa ODBC-kutsut, lähettää SQL-pyynnöt, palauttaa tulokset relaatiotietokanta

SQL sovellusten ohjelmoinnissa SQL määriteltiin ANSI-standardissa 1986 ANSI-standardi 1989 määrittää kolme liittymää Moduulikieli olemassaolevat proseduurit, parametrit Upotettu SQL SQL-käskyjä ohjelmakoodissa usein esikääntäjä SQL-käskyjen muodostamiseen standardissa käskyt COBOLia, FORTRANia, Pascalia PL/1:ä varten Suora ratkaisu tuotteen tekijästä kiinni

SQL sovellusten ohjelmoinnissa Upotettu SQL oli ensin suosituin tapa käyttää SQL:ä ohjelmissa käyttää staattista SQL:ä SQL-käskyt käännetään ohjelmaan, eikä niitä enää muuteta vrt. tulkki tai kääntäjä suorituskyky (tehokkuus) on hyvä ei juuri joustava Dynaaminen SQL nykyisin suosittu SQL-käskyt käsitellään suoritushetkellä joustava, ohjelma voi muuttua helposti hiukan hitaampi kuin staattinen SQL

SQL sovellusten ohjelmoinnissa ANSI-standardi 1992 laajensi kieltä määrittää kolme yhteensopivuustasoa perustaso, keskitaso, täysi taso Uusia piirteitä liittymä tietokantoihin selattavat kursorit dynaaminen SQL ulkoliitokset (outer join) upotettu SQL SQL-käskyjä ohjelmakoodissa

Some try to tell me Thoughts they cannot defend: Just what you ll want to be You ll be in the end The Moody Blues This is the end The Doors