Monikon lisääminen (1) Luetellaan kaikki lisättävän rivin arvot INSERT INTO Asiakas VALUES (4, ’Assi’, ’Asiakas’); Luetellaan vain osa arvoista; muut arvot.

Slides:



Advertisements
Samankaltaiset esitykset
ER-mallista relaatiomalliin
Advertisements

Ohjelmiston tekninen suunnittelu
Tietojärjestelmät 2.
OULU ADVANCED RESEARCH ON SOFTWARE AND INFORMATION SYSTEMS Teppo Räisänen | Oulun yliopisto Facebook API Teppo Räisänen Tietojenkäsittelytieteiden.
Relaatiomalli •Ted Codd 1970 •Matemaattinen perusta •Helppo toteuttaa •Helppo omaksua •Käytetyin tietomalli •Muodostaa perustan kurssin myöhemmille asioille.
Entity-Relationship Diagrams ER-mallit Käsitemallit Kohde-suhde-kaavio
Tietokanta.
Kökkötraktori-verkkokauppa
Looginen suunnittelutMyn1 Looginen suunnittelu •Tässä lähdetään liikkeelle käsitemallista. •Laaditaan sisällöstä ja rakenteesta loogisen tason kuvaus,
Tietokannan suunnittelu
Aggregaattifunktiot (1)
Michael Sundvist, Jussi Huttunen, Tommi Vekkilä, Antti Raessalo TV10s1
Tietokannat II Lasse Bergroth Turun yliopisto, IT-laitos Kevät 2013

Pasi Helasuo Työn valvoja Professori Jukka Manner
13. Hyvä ohjelmointitapa (osa 1)
Haaga-Helia Ammattikorkeakoulu
Relaatioalgebra (1) Kokoelma relaatioiden käsittelyyn tarkoitettuja operaatioita Operaatiot muuntavat relaatioita uusiksi relaatioiksi Muodostaa perustan.

Erilaiset liitokset FROM-osassa voidaan määritellä relaatio myös erilaisia liitosoperaatioita käyttäen Vasen, oikea ja täysi puoliliitos eli ulkoliitos.
Datan käsittely MySQL SQL, Structured Query Language
© Antti Tuomisto, 2001 © Jukka Teuhola muokattu 2005 (Tommi Tapanainen) Tietojenkäsittelytieteet, Turun yliopisto Access merkkijonovertailut 
4.1-SQL-toimintoja Teuhola Relaatioskeemaa täydentäviä piirteitä: Näkymät (views) Näkymä on johdettu relaatio, jota ei fyysisesti ole välttämättä.
© Antti Tuomisto, 2001 © Jukka Teuhola muokattu 2005 (Tommi Tapanainen) Tietojenkäsittelytieteet, Turun yliopisto Kantataulujen päivitys: Lisäys.
4-Tietokantaohjelmointi Teuhola Tietokantasovellusten ohjelmointi Taustaa 4.1. Relaatioskeemaa täydentäviä piirteitä 4.2. Sulautettu SQL, Java.
SQL Standardoitu kieli, jonka avulla voidaan
PHP ja MySQL Verkkotekniikan jatkokurssi Kevät 2003
Tietokannan luominen Tietokanta luodaan komennolla CREATE DATABASE


8. SQL-99 -kyselykieli: kaavan määrittely, perusrajoitukset ja kyselyt
Tietokannat –kurssi SQL peruskyselyt
Tietokannat -kurssi KSAO, Datanomit, käytön tuki kevät 2015 Lauri Tapola.
6. Relaatioalgebra ja relaatiokalkyyli
Komponenttipohjainen ohjelmistotekniikka (TJTSS56) Osa 4 Kevätlukukausi 2010 Jyväskylän yliopisto Tietojenkäsittelytieteiden laitos Markku Sakkinen.
RAKENNUSPALIKOITA SEINÄJOEN KANSALAISOPISTO Jussi Rasku Aki Sirviö.
© Jukka Juslin1 Osio2 Olio-ohjelmointi: Merkkijonot eli Stringit Jukka Juslin.
4.2-Sulautettu SQL Teuhola Sulautettu (embedded) SQL Ohjelmointikielen (ns. isäntäkielen) laajennus ISO-standardi, määritelty kielille Ada,
DO NOT PRINT THIS DOCUMENT SQL -valintaehto CREATE TABLE opettaja ( opetunnus varchar(12) NOT NULL, nimi varchar(40) NOT NULL, puhelin varchar(12), tyohuone.
DO NOT PRINT THIS DOCUMENT SQL -valintaehto CREATE TABLE opettaja ( opetunnus varchar(12) NOT NULL, nimi varchar(40) NOT NULL, puhelin varchar(12), tyohuone.
Yleistä Kotisivuja päivitetty Demoryhmät Luentomonisteen ensimmäiset osat Luentokalvot jaossa Demot alkavat maanantaina Selvitä oma demoryhmäsi Tutustu.
Tietokannat Tietotekniikan perusteet Pekka Orponen.
SQL SQL:llä voidaan... määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta näytölle.
Java - Tietokanta. JDBC=Java database connectivity  ODBC:n kaltainen ohjelmointiliittymä SQL- tietokantoihin  Koostuu Java-kehitysympäristön (esim.
Karteesinen tulo Huomaa attribuuttien nimien tarkentaminen taulujen nimillä.
Fyysinen suunnittelutMyn1 Fyysinen suunnittelu Tässä lähdetään liikkeelle tietokannan loogisesta mallista. Nyt pitää olla tiedossa valittava DBMS-tuote.
Servlet-esimerkki: "VerkkoPizzeria"
Tietokannat -kurssi KSAO, Datanomit, käytön tuki kevät 2015 Lauri Tapola.
Tietokannat -kurssi KSAO, Datanomit, käytön tuki kevät 2015 Lauri Tapola.
Tietokannan hallinta Kevät 2006 Jan Lindström R&G Chapter 1.
MySQL & PostgreSQL Heikki Airaksinen & Janne Richter.
Tietokantapalvelimet Ville Parviainen. Sisältö Yleistä tietokannoista SQL PostgreSQL MySQL MySQL vs. PostgreSQL Linux -työ.
Hakemistot Nopeuttavat hakuoperaatioita Hidastavat päivitysoperaatioita Pääavaimelle luodaan aina indeksi; päävain toimii usein hakukriteerinä Luodaan.
Lähiverkot erikoistyökurssi TIETOKANTAPALVELIN Linux-harjoitustyö Mari Toukola
Tietokantapalvelimet -Mikko Pehkonen, Tite4. Tietokantapalvelimista  DBMS (Database Management Systems)  Tarkoitettu tiedon keskitettyyn hallintaan.
KSAO, Datanomit, käytön tuki kevät 2015 Lauri Tapola
Harjoitus 1 Perusta uusi projekti. Hae projektin kansioon NWIND.mdb. Ota kantaan yhteys. Tulosta comboboxiin rahtarien(Shippers) nimet.
Copyright Oy Thomas Antila Consulting Ab 1 Indeksointi Oracle 8i tietokannassa OUGF Syksy 2000.
SQL ● Structured Query Language ● Standardoitu kieli tietokantakyselyiden tekemiseen – Standardoitu ei tarkoita etteikö olisi useampia versioita, joten.
Tietokantakyselyt.  Tietokantakysely eli osajoukon erottaminen suuremmasta tietokannasta  Esimerkiksi: Suomen kunnat: Oulu Suomen kunnat: yli
Procedural Language Extensions to SQL
SPARQL.
Y56 Luku 23 Yrityksen teoria: toimialan tarjonta
Tietomallista tietokannaksi
Linux palomuurina ( IPTABLES )
Jouni Juntunen Oulun seudun ammattikorkeakoulu Liiketalouden yksikkö
Samanaikaisuuden hallinta ohjelmoinnin näkökulmasta
PHP Tietokantaohjelmointi 1
PHP Tietokantaohjelmointi 2
16. Ohjelmoinnin tekniikkaa
Esityksen transkriptio:

Monikon lisääminen (1) Luetellaan kaikki lisättävän rivin arvot INSERT INTO Asiakas VALUES (4, ’Assi’, ’Asiakas’); Luetellaan vain osa arvoista; muut arvot alustetaan oletusarvolla INSERT INTO Asiakas (Id, Etunimi) VALUES (5, ’Jussi’); Käytetään kyselytuloksia INSERT INTO Tilaajat SELECT DISTINCT Asiakas.* FROM Asiakas, Tilaus WHERE Asiakas.Id=AsiakasId;

Monikon lisääminen (2) Lisäysoperaatio onnistuu vain, jos se Ei riko viite- tai entiteettieheyttä Ei riko avainrajoitetta Ei riko arvojoukkorajoitetta (esim. lukuattribuutin arvoksi ei voida asettaa merkkijonoa)

Monikon poistaminen DELETE FROM Taulu WHERE Ehto DELETE FROM Asiakas WHERE Id>3; DELETE FROM Asiakas WHERE Id NOT IN ( SELECT AsiakasId FROM Tilaus); Saattaa viiteavainmäärittelyistä riippuen aiheuttaa muidenkin rivien tuhoamisen (vyörytys)

Monikon muuttaminen (1) UPDATE... SET –komento UPDATE Tuote SET Hinta=1.1*Hinta; Jos päivityksessä tarvitaan tietoja useammasta taulusta, käytetään alikyselyitä UPDATE Tuote SET Hinta=1.1*Hinta WHERE ToimittajaId IN (SELECT Id FROM Toimittaja WHERE Nimi=’Jaskan vimpain’);

Transaktiot (1) Transaktioille taataan ACID-ominaisuudet Atomic: transaktio suoritetaan kokonaan tai jätetään kokonaan suorittamatta Consistent: eheä ja oikeellinen tietokanta on transaktion jälkeen eheä ja oikeellinen Isolated: transaktiot toimivat toisistaan riippumatta Durable: transaktio muuttaa tietokantaa pysyvästi Jokainen yksittäinen kysely tai päivitys on transaktio

Transaktiot (2) Transaktio voi koostua myös useammasta päivitysoperaatiosta tai kyselystä Siirretään 1000 euroa tililtä 123 tilille 321 BEGIN; UPDATE Tili SET Saldo=Saldo-1000 WHERE ID=123; UPDATE Tili SET Saldo=Saldo+1000 WHERE ID=321; COMMIT;

Kertaus (1) Ongelmallisiksi koetut alueet ER-kaavion muuntaminen relaatioiksi Ulkoliitokset Aggregaattifunktiot Peruskyselyt hallitaan ER-kaavion muuntaminen relaatioiksi Luentomonisteen tarkkuus riittää (ei heikkoja entiteettejä, tunnistavia liittymiä tms.)

Kertaus (2) Ulkoliitokset Käytännössä vaihtoehtoisia alikyselyille ja erityisesti NOT IN –operaatiolle Eivät keskeisessä asemassa myöskään tentissä Selitetty tarkemmin monisteen luvussa Aggregaattifunktiot Tarpeen myös käytännössä, vaikka peruskyselyillä pääseekin pitkälle

Aggregaattifunktiot (1) Kirjoitetaan kyselyn SELECT-osaan Aggregaattifunktioiden käytöstä SELECT-osassa voi esiintyä vain aggregaattifunktioita ja ryhmittelyattribuutteja Ryhmittelyattribuutit mainittava kyselyn GROUP BY –osassa Jos ryhmittelyattribuutteja ei ole, on tuloksessa aina vain yksi rivi Jos ryhmittelyattribuutteja käytetään on tuloksessa yksi rivi jokaista ryhmittelyattribuuttien arvoyhdistelmää kohden

Aggregaattifunktiot (2) Hae toimittajien nimet sekä kunkin toimittaja toimittamien tuotteiden minimi- ja maksimihinta SELECT Toimittaja.Nimi, MIN(Hinta), MAX(Hinta) FROM Tuote, Toimittaja WHERE ToimittajaId=Toimittaja.Id GROUP BY Toimittaja.Nimi;

Aggregaattifunktiot (3)

Tietokannat II Osat Luennot: Jukka Teuhola Demot Tietokantaohjelmointiin liittyvä harjoitustyö Aiheet Tietokantaohjelmointi: Java & JDBC, Web- tietokannat Suunnittelu: laajennettu ER-malli, normalisointi

Tentistä Tenttialue: luvut 1, 2, 4 ja 5 Painopisteet Peruskäsitteet Suunnittelu SQL Tenttipäivät 1.3. klo 9:00-12:00 Alpha klo 9:00-13:00 IX, X klo 9:00-13:00 IX, X