Primjer aplikacije koja koristi bazu podataka Objektno-relacijsko preslikavanje Povezivanje aplikacija sa bazom podataka 13. tjedan T. Cari´ c, T. Erdeli´ c Zavod za inteligentne transportne sustave Fakultet prometnih znanosti Sveuˇ ciliˇ ste u Zagrebu Baze podataka T. Cari´ c, T. Erdeli´ c ITS::Baze podataka (13. tjedan)1/17
17
Embed
Povezivanje aplikacija sa bazom podataka - 13. tjedan podataka/Predavanja/05...Primjer aplikacije koja koristi bazu podataka Objektno-relacijsko preslikavanje Povezivanje aplikacija
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
Povezivanje aplikacija sa bazompodataka13. tjedan
T. Caric, T. Erdelic
Zavod za inteligentne transportne sustaveFakultet prometnih znanosti
Sveuciliste u Zagrebu
Baze podataka
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)1/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Pregled 1. poglavlja
Primjer aplikacije koja koristi bazu podatakaCrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Objektno-relacijsko preslikavanje
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)2/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Primjer aplikacije koja koristi bazu podataka
I CrosbiFPZI Aplikacija prati broj objavljenih publikacija svih nastavnika sa
Fakulteta prometnih znanostiI Nastavnici su podijeljeni u katedre i zavodeI Osim pojedinacne evidencije publikacija potrebno je pratiti i
grupnu (zavodi, katedre) evidenciju o publikacijama premagodinama odnosno rasponu godina koji se promatra
I Izvor podataka za aplikaciju je sluzbena Hrvatska znanstvenabibliografija (CROSBI) (www.bib.irb.hr)
I Svaka publikacija pripada u jednu od vrsta publikacije (radoviu casopisima, radovi objavljeni na konferenciji, disertacije, . . . )
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)3/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Izvor podataka - CROSBI
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)4/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Izvor podataka - CROSBI
I URL adresa CROSBI-a: www.bib.irb.hrI URL adresa za pristup publikacijama svakog autora
pojedinacnoI Svaki nastavnik ima jedinstveni maticni broj znanstvenikaI www.bib.irb.hr/lista-radova?autor=213324I Koristi se uvijek isti URL mijenja se samo crveni dio URL-a
koji predstavlja broj znanstvenika te na taj nacin se mozepristupiti popisu radova svakog nastavnika
I Na ovoj stranici se dobije popis svih publikacija (naslov, autori,mjesto i vrsta publikacije), ali ne i detalji o njoj
I URL za pristup svakoj publikaciji posebnoI https://bib.irb.hr/prikazi-rad?&rad=602946
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)5/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
CrosbiFPZ
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)6/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
CrosbiFPZ
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)7/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
CrosbiFPZ
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)8/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
CrosbiFPZ
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)9/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Relacijski model
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)10/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
CrosbiFPZ - opis zahtjevaCrosbiFPZ - izvor podatakaCrosbiFPZ - desktop aplikacijaCrosbiFPZ - relacijski model i upiti
Upiti
I Dohvati sve vrste ugovoraSELECT Id , Naziv , Active FROM VrstaUgovora
I Azuriraj vrstu ugovora@active bit , @id int --parametri
UPDATE VrstaUgovoraSET Active = @active
WHERE Id = @id
I Dohvati popis nastavnika koji pripadaju odredenoj katedri ilizavodu@katedraId int , @zavodId int --parametri
SELECT * FROM NastavnikWHERE KatedraId = @katedraId OR ZavodId = @zavodId
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)11/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
Pregled 2. poglavlja
Primjer aplikacije koja koristi bazu podataka
Objektno-relacijsko preslikavanje
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)12/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
Objektno-relacijsko preslikavanje
I Objektno-relacijsko preslikavanje - posredovanje izmedu bazepodataka i aplikacije
I Objektno-relacijska neuskladenost podatakaI Relacijski model podatak shvaca kao
I instanca entiteta je n-torkaI veze se ostvaruju spajanjem tablica odnosno stranim
kljucevimaI Objektni model podatak shvaca kao
I instanca entiteta je objektI objekti su povezani referencama, nasljedivanjem, ...
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)13/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
ORM maperi
I ORM maperi su programi koji automatski radeobjektno-relacijsko preslikavanje
I Koristenjem ORM mapera znacajno se ubrzava razvoj ismanjuje se cijena odrzavanja aplikacije te je sa njimaomogucen agilan razvoj
I Mana ORM maperima su njihove performanse koje uglavnomdolaze dolaze do izrazaja jer njihovi korisnici ne znaju do krajaiskoristiti njihove prednosti
I Neki od najcesce koristenih suI LINQ to SQLI NHibernate
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)14/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
LINQ 2 SQL (Entity Framework)
I Prvi Microsoftov OR maper - preslikava relacijski model bazeu objektni model aplikacije
I To je infrastruktura koja upravlja relacijskim podacima ipredstavlja ih kao obicne objekte u aplikaciju
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)15/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
LINQ 2 SQL (Entity Framework)
I EDM - podatkovni model se sastoji od tri glavna dijela:konceptualnog, mapiranja i baze podataka (Storage Model)
I Storage Model se sastoji od tablica, veza medu njima ipodataka u njima te svega onoga sto smo ucili do sada
I Mapiranje se brine o tome kako je konceptualni modelpovezan sa bazom podataka
I LINQ 2 SQL|Entities je klijentski upitni jezikI Object Service - je zaduzen za materijalizaciju podatakaI Entity Client Data Provider - ovaj upitni jezik LINQ 2
SQL|Entities automatski pretvara u SQL upiteI ADO.Net Data Provider - komunikacija sa bazom koristenjem
ADO.Net.-a
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)16/17
Primjer aplikacije koja koristi bazu podatakaObjektno-relacijsko preslikavanje
Pitanja
T. Caric, T. Erdelic ITS::Baze podataka (13. tjedan)17/17