A tudás egy kis része annak a tudatlanságnak, amit rendszerezünk és osztályozunk. Ambrose Bierce
|
|
- Sándor Dudás
- 9 évvel ezelőtt
- Látták:
Átírás
1 A relációs adatbázisok és az SQL I
2
3 1 Mit jelent az, hogy relációs? A tudás egy kis része annak a tudatlanságnak, amit rendszerezünk és osztályozunk. Ambrose Bierce A fejezet témakörei Az adatbázisok fajtái A relációs modell rövid története A relációs adatbázisok felépítése Miért hasznosak számunkra a relációs adatbázisok? Összefoglalás Mielõtt fejest ugranánk az SQL világába, nem árt, ha rendelkezünk némi háttérinformációval a relációs adatbázisokról, ezért elõször arról fogunk beszélni, hogy miért találták ki a relációs adatbázisokat, hogyan épülnek fel, és miért hasznosak a számunkra. Ez az az alap, amelyen biztosan kell állnunk, hogy megérthessük az SQL lényegét, és tisztán lássuk, hogy miként aknázhatjuk ki legjobban az SQL képességeit. Az adatbázisok fajtái Mit nevezünk adatbázisnak? Amint azt bizonyára tudjuk, az adatbázis adatok rendezett gyûjteménye, amellyel valamilyen szervezett dolgot vagy szervezési folyamatot modellezünk. Tulajdonképpen nem számít, hogy papírt vagy egy számítógépes programot használunk az adatok összegyûjtésére és tárolására: amíg az adatokat konkrét célra, valamilyen rendezett formában gyûjtjük és tároljuk, adatbázisról beszélhetünk. A továbbiakban persze azt fogjuk feltételezni, hogy az adatgyûjtésre és az adatok kezelésére számítógépprogramot használunk. Az adatbázis-kezelés területén általánosságban kétféle adatbázis van használatban: mûveleti adatbázisok és elemzõ adatbázisok. Ma szerte a világon mûveleti adatbázisok képezik számos vállalat, szervezet és intézmény gerincét. Ezt a fajta adatbázist elsõsorban mindennapi adatgyûjtésre, -módosításra és -kezelésre használják. A tárolt adatok dinami-
4 4 SQL-lekérdezések földi halandóknak kus adatok, ami azt jelenti, hogy folyamatosan változnak, és mindig friss információkat tükröznek. Az olyan szervezetek, mint az áruházak, a gyártócégek, a kórházak és klinikák, valamint a könyvkiadók mûveleti adatbázisokat használnak, mivel az adataik percrõl percre változnak. Ezzel szemben az elemzõ adatbázisok korábbról származó, adott idõponthoz kapcsolódó adatokat tárolnak és rendszereznek. Az elemzõ adatbázisok a változások irányának nyomon követésében hasznosak, valamint a hosszú idõ alatt összegyûjtött statisztikai adatok megjelenítését, illetve a taktikai és stratégiai üzleti elõrejelzések készítését segítik. Az ilyen adatbázisok statikus adatokat tárolnak, vagyis az adatok soha (vagy csak nagyon ritkán) módosulnak, új adatok felvételére viszont gyakran sor kerülhet. Az elemzõ adatbázisokból kinyert információk általában nem naprakészek: egy adott idõpontban készített pillanatfelvételt mutatnak az adatokról. Ilyen fajta adatbázist használnak például a kémiai laboratóriumok, a földmérõ vállalatok, illetve a piackutató és -elemzõ cégek. A relációs modell rövid története Az adatbázismodelleknek többféle típusa létezik. Egyeseket például a hierarchikus és hálózati modelleket csak régi rendszereken használnak, míg mások például a relációs modell széles körben elterjedtek. Más könyvekben az objektum alapú, objektumrelációs és OLAP (online analytical processing, elektronikus elemzõ-feldolgozó) modellekkel is találkozhatunk. Az SQL-szabvány bõvítményeket határoz meg ezeknek a modelleknek a támogatására, és léteznek kereskedelmi adatbázisrendszerek, amelyek meg is valósítanak egyes bõvítményeket ezek közül. Mi azonban szigorúan a relációs modellre és a nemzetközi SQL-szabvány magjára fogunk összpontosítani. A kezdetek A relációs adatbázis elve 1969-ben született meg, és azóta valószínûleg a legszélesebb körben használt modellé vált az adatbázis-kezelésben. A relációs modell atyja, Dr. Edgar F. Codd ( ) az IBM kutatójaként dolgozott az 1960-as években, és azt vizsgálta, hogy milyen új módszerekkel lehet nagy adatmennyiségeket kezelni. Az akkor létezõ adatbázismodellekkel és -termékekkel elégedetlen volt, ami arra indította, hogy matematikai elvek és szerkezetek segítségével próbálja meg megoldani az elõtte álló tömérdek feladatot. Matematikusként szilárdan hitt benne, hogy a matematikának léteznek olyan ágai, amelyeket alkalmazva megoldhatók az olyan problémák, mint az adatismétlõdés (redundancia) kiküszöbölése, az adatok egységességének biztosítása, illetve annak leküzdése, hogy az adatbázisok szerkezete túlzottan függjön a fizikai megvalósítástól. Dr. Codd hivatalosan 1970 júniusában, az A Relational Model of Data for Large Shared Databases címû, mérföldkõnek számító munkájában 1 mutatta be az általa kidolgozott új relációs modellt. A modell a matematika két ágára támaszkodott: a halmazelméletre és 1 Communications of the ACM, június, oldal
5 1. fejezet Mit jelent az, hogy "relációs"? 5 az elsõrendû predikátumlogikára. Maga a modell is a halmazelmélet egyik kulcsfogalma, a reláció kifejezés után kapta a nevét. (Széles körben elterjedt tévedés, hogy a relációs modell neve onnan ered, hogy a relációs adatbázisok táblái között kapcsolatok állhatnak fenn. Most, hogy tudjuk az igazságot, nyugodtan alhatunk.) Szerencsére nem kell részleteiben ismernünk a halmazelméletet vagy az elsõrendû predikátumlogikát ahhoz, hogy relációs adatbázisokat tervezhessünk és használhassunk. Ha megfelelõ adatbázis-tervezési módszert követünk például a Mike Hernandez Database Design for Mere Mortals (Addison-Wesley, 2004; magyarul: Adatbázis-tervezés: A relációs adatbázisok alapjairól földi halandóknak. Kiskapu, 2004) címû könyvében ismertetett eljárásokat, egészséges és hatékony adatbázis-szerkezetet alakíthatunk ki, amelyet bizalommal használhatunk mindenféle adat összegyûjtésére és kezelésére. (Nos rendben, természetesen egy kicsit azért muszáj értenünk a predikátumokhoz és a halmazelmélethez, ha bonyolultabb feladatokat is meg szeretnénk oldani. A predikátumokkal állításokkal vagy szûrõkkel; a predikátum valójában csak egy fellengzõs név kapcsolatos alapvetõ tudnivalókat a 6., a halmazelmélet alapjait pedig a 7. fejezetben tárgyaljuk.) A relációs adatbázisprogramok Megjelenése óta a relációs modell az alapja az RDBMS (relational database management system, relációs adatbázis-kezelõ rendszer) néven ismert adatbázistermékeknek. Ilyen terméket számos gyártó készít, és az évek során a legkülönbözõbb iparágak és szervezetek vették át a használatát, akik sokféle környezetben alkalmazzák. Az 1970-es években a nagyszámítógépek olyan programokat használtak, mint az IBM által kifejlesztett System R vagy a Berkeley-i Kaliforniai Egyetemen megalkotott INGRES. A nagygépekhez készített RDMBS rendszerek fejlesztése az 1980-as években olyan programokkal folytatódott, mint az Oracle Corporation Oracle, illetve az IBM DB2 rendszere, a személyi számítógépeknek az 1980-as évek közepén bekövetkezett elterjedése pedig olyan programokat szült, mint az Ashton Tate dbase, az Ansa Software Paradox vagy a Microrim R:BASE szoftvere. Amikor az 1980-as évek végén, illetve az 1990-es évek elején nyilvánvalóvá vált, hogy igény mutatkozik a PC-k közötti adatmegosztásra, megszületett az ügyfél kiszolgáló rendszerek elve, amelyet a központi helyen tárolt, közösen használható, könnyen kezelhetõ és biztonságossá tehetõ adatok ötlete kísért. Erre az elvre olyan termékek épültek, mint az Oracle Oracle 8i, valamint a Microsoft SQL Server rendszere. Körülbelül 1996 óta már abban az irányban is összehangolt erõfeszítéseket tesznek, hogy az adatbázisok elérhetõségét az Interneten is biztosítsák. A szoftvergyártók komolyan veszik a kérdést, és olyan termékekkel igyekeznek válaszolni a kihívásokra, amelyek webközpontúbbak: ilyen az Allaire cég Cold Fusion, a Sybase Sybase Enterprise Application Studio vagy a Microsoft Visual Studio programcsomagja. A webfejlesztésben az egyik legnépszerûbb adatbázis-kezelõ a MySQL AB nyílt forrású MySQL-je. Ezt eredetileg Linux rendszerû webkiszolgálókhoz tervezték, de már Microsoft Windows rendszereken futó változata is létezik.
6 6 SQL-lekérdezések földi halandóknak A relációs adatbázisok felépítése A relációs modellnek megfelelõen az adatok a relációs adatbázisokban relációkban tárolódnak, amelyeket a felhasználó táblák formájában érzékel. Minden reláció egyedekbõl (tuple, rekord) és jellemzõkbõl (mezõ) épül fel. Ezen kívül a relációs adatbázisoknak természetesen más tulajdonságaik is vannak ezekkel foglalkozunk az alábbiakban. Táblák A táblák az adatbázisok fõ szerkezeti elemei. Minden tábla mindig egyetlen konkrét tárgyat ábrázol. A rekordok és mezõk logikai sorrendje a táblán belül egyáltalán nem számít. Legalább egy mezõt az úgynevezett elsõdleges kulcsot, amely egyedileg azonosítja a tábla egyes rekordjait minden táblának tartalmaznia kell. (Az 1.1. ábrán például a CustomerID a Customers tábla elsõdleges kulcsa.) Valójában a relációs adatbázisokban levõ adatok a táblák ez utóbbi két tulajdonságának köszönhetõen függetlenek attól, hogy fizikailag miként tárolódnak a számítógépen. Ez a felhasználóknak elõnyös, mert így ahhoz, hogy kinyerjenek egy adatot, nem kell ismerniük az adatot tároló rekord fizikai helyét ábra Példa egy táblára A tárgy, amelyet egy adott tábla ábrázol, egy objektum vagy egy esemény lehet. Ha a tárgy egy objektum, a tábla valami olyat ábrázol, ami megfogható : egy személyt, egy helyet vagy más fizikai dolgot. Objektumokként táblában ábrázolhatók például pilóták, termékek, gépek, hallgatók, épületek, berendezések, és így tovább. A típusától függetlenül minden objektumnak vannak olyan jellemzõi, amelyek adatként tárolhatók, és ezeket az adatokat aztán szinte végtelen módon lehet feldolgozni. Erre a fajta táblára az 1.1. ábra mutat jellegzetes példát. Amennyiben a tábla tárgya egy esemény, a tábla valami olyasmit ábrázol, ami egy adott idõpontban történt, illetve történik (majd), és olyan jellemzõi vannak, amelyeket rögzíteni szeretnénk. Ezeket a jellemzõket pontosan ugyanúgy tárolhatjuk adatként, és dolgozhatjuk fel mint információt, mint azokban a táblákban, amelyek valamilyen konkrét objektumot
7 1. fejezet Mit jelent az, hogy "relációs"? 7 írnak le. Olyan eseményeket rögzíthetünk például, mint a bírósági tárgyalások, az osztalékkifizetés, a laborleletek vagy egy földtani mérés. Az 1.2. ábrán például egy olyan eseményt ábrázoló táblát láthatunk, amelyet életünk során mindnyájan átélünk egy orvosi vizetet ábra Eseményt ábrázoló tábla Mezõk A mezõ az adatbázis legkisebb szerkezeti egysége, amely a hozzá tartozó tábla tárgyának egy jellemzõjét írja le. A mezõk azok a szerkezetek, amelyek az adatokat ténylegesen tárolják. A mezõkben levõ adatokat azután kinyerhetjük és információként megjeleníthetjük, szinte bármilyen elképzelhetõ formában. Véssük az eszünkbe, hogy az adatokból kinyert információk minõsége egyenesen arányos az idõ mennyiségével, amit arra fordítunk, hogy maguknak a mezõknek az adat- és szerkezeti következetességét biztosítsuk. A mezõk fontosságát nem lehet túlbecsülni. Egy megfelelõen megtervezett adatbázisban minden mezõ kizárólag egyetlen értéket tartalmaz, és a neve azonosítja a benne tárolt érték típusát. Így nagyon egyszerûvé válik az adatok bevitele a mezõkbe: ha olyan nevû mezõket látunk, mint a FirstName (Keresztnév), a LastName (Vezetéknév), a City (Város), a State (Állam/Megye) vagy a ZipCode (Irányítószám), pontosan tudni fogjuk, hogy milyen értéket kell írnunk az egyes mezõkbe, és az adatok rendezése (például állam szerint) vagy az összes olyan személy kikeresése, akinek a vezetékneve Viescas, ugyancsak könnyû lesz. Rekordok A rekord egy adott tábla tárgyának egy egyedi példányát jelképezi, amely a tábla adott sorában található összes mezõt tartalmazza, függetlenül attól, hogy az egyes mezõkben szerepelnek-e értékek. A táblák meghatározásának módjából következik, hogy minden rekordot egy egyedi érték azonosít a teljes adatbázisban, és ez az érték a rekord elsõdleges kulcs mezõjében tárolódik. Az 1.1. ábrán például minden rekord egy-egy különbözõ vásárlót jelöl a táblában, és az adatbázisban az egyes vásárlókat a CustomerID (Vásárlóazonosító) mezõ azonosítja. Amint említettük, az egyes rekordok a tábla adott sorában található összes mezõt tartal-
8 8 SQL-lekérdezések földi halandóknak mazzák, és minden mezõ egy-egy tulajdonságát írja le a rekord által ábrázolt vásárlónak. A rekordok kulcsfontosságúak a táblakapcsolatok megértésében, mivel tudnunk kell, hogy egy tábla rekordjai milyen viszonyban állnak egy másik tábla rekordjaival. Kulcsok A kulcsok különleges mezõk, amelyek meghatározott szerepet töltenek be az egyes táblákban. Ezt a szerepet a kulcs típusa határozza meg. Bár egy tábla többféle kulcsot tartalmazhat, mi csak a két legfontosabb típust tárgyaljuk: az elsõdleges kulcsot és az idegen kulcsot. Az elsõdleges kulcs olyan mezõ vagy mezõcsoport, amely egyedileg azonosítja a táblában található összes rekordot. (Ha az elsõdleges kulcs két vagy több mezõbõl áll, összetett elsõdleges kulcsról beszélünk.) Két oka van annak, hogy miért az elsõdleges kulcs a legfontosabb: az értéke egy konkrét rekordot azonosít a teljes adatbázisban, a mezõje pedig ugyanott egy adott táblát. Az elsõdleges kulcsok emellett a tábla szintjén biztosítják a következetességet, és segítenek kapcsolatokat kialakítani más táblákkal. Az adatbázisaink minden táblájának rendelkeznie kell elsõdleges kulccsal. Az 1.3. ábrán látható AgentID (Ügynökazonosító) mezõ jó példa az elsõdleges kulcsra, mert egyedileg azonosítja az egyes ügynököket az Agents (Ügynökök) táblán belül, és a többször szereplõ rekordok kiküszöbölésével gondoskodik a táblaszintû következetességrõl. A kulcsot ezenkívül arra is használjuk, hogy az Agents és az adatbázis más táblái (például ahogy az ábrán láthatjuk az Entertainers tábla) között kapcsolatokat alakítsunk ki ábra Elsõdleges és idegen kulcsok Amikor eldöntjük, hogy két táblát valamilyen módon összekapcsolunk, a kapcsolatot általában úgy hozzuk létre, hogy az elsõ tábla elsõdleges kulcsát lemásoljuk és beszúrjuk a második táblába, ahol az idegen kulcs lesz. (Az idegen kulcs kifejezés onnan ered, hogy a második táblának már van saját elsõdleges kulcsa, és az elsõ táblából átvett elsõdleges kulcs a második tábla számára idegen.)
9 1. fejezet Mit jelent az, hogy "relációs"? 9 Az 1.3. ábrán egy jó példát láthatunk az idegen kulcsra. A példában az AgentID elsõdleges kulcs az Agents táblában és idegen kulcs az Entertainers táblában. Amint láthatjuk, az Entertainers táblának már van egy elsõdleges kulcsa az EntertainerID. Ebben a kapcsolatban az AgentID az a mezõ, amely megteremti az összefüggést az Agents és az Entertainers tábla között. Az idegen kulcsok nem csak abból a nyilvánvaló szempontból fontosak, hogy segítenek kapcsolatot teremteni két tábla között, hanem azért is, mert biztosítják a kapcsolatszintû következetességet, vagyis a két tábla rekordjai mindig helyes kapcsolatban fognak állni egymással, mivel az idegen kulcs mezõ értékeinek a hivatkozott elsõdleges kulcs értékeibõl kell származniuk. Az idegen kulcsok a rettegett árva rekordokat is segítenek elkerülni, amelyek klasszikus példája egy olyan rendelési rekord, amelyhez nem tartozik vásárló. Ha nem tudjuk, ki adta fel a rendelést, nem leszünk képesek feldolgozni azt, és természetesen kiszámlázni sem tudjuk, ami rontja a negyedéves eladási mutatóinkat. Nézettáblák A nézet vagy nézettábla olyan virtuális tábla, amely az adatbázis egy vagy több táblájának mezõibõl épül fel. A nézettáblát alkotó táblákat alaptábláknak hívjuk. A relációs modell azért tekinti virtuálisnak (látszólagosnak) a nézettáblákat, mert azok adatai más táblákból származnak. Maguk a nézettáblák nem tárolnak adatokat; az adatbázisban valójában a szerkezetük az egyetlen információ, ami tárolódik róluk. A nézettáblák lehetõvé teszik, hogy az adatbázisban tárolt információkat számos különféle szempontból tekintsük meg, ami nagy rugalmasságot nyújt az adatok kezelésében. Nézettáblákat többféleképpen is létrehozhatunk különösen akkor hasznosak, amikor több, egymással kapcsolatban álló táblára alapozzuk õket. Létrehozhatunk például egy olyan nézettáblát, amelyik olyan információkat összegez, mint a Seattle belvárosában dolgozó ácsok által ledolgozott órák teljes száma, vagy egy olyat, amelyik adott mezõk szerint csoportosítja az adatokat. Ez utóbbi fajtára jó példa egy olyan nézettábla, amelyik egy adott terület államait veszi alapul, hogy megmutassa az egyes városokban az alkalmazottak teljes számát. A nézettáblák jellemzõ felépítését az 1.4. ábrán láthatjuk. Sok RDBMS program a nézettáblákat mentett lekérdezésként valósítja meg, és ezen a néven vagy egyszerûen lekérdezésként hivatkozik rájuk. A lekérdezések a legtöbb esetben rendelkeznek a nézettáblák minden jellemzõjével, vagyis csupán a nevük az egyetlen különbség köztük. (Mi már gyakran morfondíroztunk rajta, hogy ehhez nem egy marketingcsapatnak van-e köze.) Fontos megjegyezni, hogy egyes gyártók már kezdik a valódi nevükön nevezni a lekérdezéseket, de mindegy, hogy a mi relációs adatbázis-kezelõnk hogy hívja õket, az adatbázisban valójában nézettáblákkal dolgozunk. Könyvünk címe ettõl függetlenül SQL-lekérdezések földi halandóknak, miközben elsõsorban azt szeretné megtanítani, hogy miként építsük fel a nézettábláinkat. Ahogy a 2. fejezetbõl majd megtudhatjuk, egy relációs adatbázist akkor tervezünk meg helyesen, ha
10 10 SQL-lekérdezések földi halandóknak az adatainkat úgy bontjuk fel, hogy minden tárgyhoz vagy eseményhez egyetlen tábla tartozzon. Ugyanakkor többnyire összefüggõ tárgyakról vagy eseményekrõl szeretnénk információt szerezni mely vásárlók és milyen rendelést adtak fel, mely tanárok milyen órákat tartanak, és így tovább, ehhez pedig nézettáblát kell létrehoznunk, és tudnunk kell, hogy milyen SQL kóddal érhetjük ezt el ábra Példa egy nézettáblára Kapcsolatok Ha egy adott tábla rekordjai valamilyen módon egy másik tábla rekordjaihoz társíthatók, azt mondjuk, hogy a táblák között kapcsolat áll fenn. A kapcsolat megteremtésének módja a kapcsolat típusától függ. Két tábla között háromféle kapcsolat állhat fenn: egy-az-egyhez, egy-a-többhöz (egy-a-sokhoz) vagy több-a-többhöz (sok-a-sokhoz) A kapcsolatok fajtáinak ismerete létfontosságú ahhoz, hogy megértsük, hogyan mûködnek a nézettáblák, és hogy miként kell a többtáblás SQL-lekérdezéseket megtervezni és használni. (Errõl a III. részben tanulunk majd bõvebben.) Egy-az-egyhez Két tábla akkor áll egy-az-egyhez kapcsolatban, ha az elsõ tábla egy rekordja a második tábla egyetlen rekordjához kapcsolódik, és a második tábla egy rekordja is egyetlen rekorddal áll kapcsolatban az elsõ táblából. Ebben a fajta kapcsolatban az egyik tábla elsõdleges tábla, míg a másik másodlagos tábla lesz. A kapcsolatot úgy hozzuk létre, hogy vesszük
11 1. fejezet Mit jelent az, hogy "relációs"? 11 az elsõdleges tábla elsõdleges kulcsát, és beszúrjuk azt a másodlagos táblába, ahol idegen kulcs lesz belõle. Ez a kapcsolatok különleges fajtája, mivel sok esetben az idegen kulcs egyben a másodlagos tábla elsõdleges kulcsaként is viselkedik. Az egy-az-egyhez kapcsolatra az 1.5. ábrán láthatunk egy jellemzõ példát: itt az Agents (Ügynökök) az elsõdleges, a Compensation (Díjazás) pedig a másodlagos tábla. A két tábla között olyan kapcsolat áll fenn, amelyben az Agents tábla egy-egy rekordja csak egy-egy rekordhoz kapcsolódik a Compensation táblában, és a Compensation tábla egy-egy rekordja is csak egy-egy rekordhoz társul az Agents táblából. Figyeljük meg, hogy az AgentID valóban elsõdleges kulcs mindkét táblában, de egyben idegen kulcs a másodlagos táblában. A kapcsolatban a vezetõ szerepet játszó elsõdleges tábla kijelölése teljesen tetszõleges. Az egy-az-egyhez kapcsolatok nem túl gyakoriak; általában akkor találkozunk velük, ha egy táblát titkosítás végett két részre bontottak ábra Példa egy-az-egyhez kapcsolatra Egy-a-többhöz Ha két tábla egy-a-többhöz kapcsolatban áll, akkor az elsõ tábla egy rekordja a második tábla több rekordjához is kapcsolódhat, de a második tábla egy rekordja csak egyetlen rekorddal állhat kapcsolatban az elsõ táblából. Ezt a kapcsolatot úgy hozzuk létre, hogy vesszük a kapcsolat egy oldalán álló tábla elsõdleges kulcsát, és beszúrjuk azt a több oldalon levõ táblába, ahol idegen kulcs lesz belõle. Az egy-a-többhöz kapcsolatra az 1.6. ábrán láthatunk egy jellemzõ példát: itt az Entertainers (Elõadók) tábla egy-egy rekordja több rekordhoz kapcsolódik az Engagements (Rendezvények) táblában, de az Engagements tábla egy-egy rekordja csak egyetlen rekordhoz társul az Entertainers táblából. Ahogy nyilván kitaláltuk, az Engagements tábla idegen kulcsa az EntertainerID.
12 12 SQL-lekérdezések földi halandóknak 1.6. ábra Példa egy-a-többhöz kapcsolatra Több-a-többhöz Két tábla akkor áll több-a-többhöz kapcsolatban, ha az elsõ tábla egy rekordja a második tábla több rekordjához kapcsolódik, és a második tábla egy rekordja is több rekorddal áll kapcsolatban az elsõ táblából. Ezt a kapcsolatot helyesen úgy hozzuk létre, hogy létrehozunk egy úgynevezett kapcsoló táblát. Ennek a táblának a segítségével egyszerûen társíthatunk rekordokat az egyik táblából a másik tábla rekordjaihoz, és a kapcsoló tábla arról is gondoskodik, hogy a kapcsolódó adatok hozzáadása, törlése vagy módosítása során semmilyen gond ne lépjen fel. A kapcsoló táblát úgy határozzuk meg, hogy lemásoljuk a kapcsolatban részt vevõ mindkét tábla elsõdleges kulcsát, és ezek segítségével alkotjuk meg az új tábla szerkezetét. A kulcsmezõk két jól elkülöníthetõ szerepet töltenek be: együttesen a kapcsoló tábla összetett elsõdleges kulcsát adják, külön-külön pedig idegen kulcsokként viselkednek ábra Feloldatlan több-a-többhöz kapcsolat
13 1. fejezet Mit jelent az, hogy "relációs"? 13 Ha egy több-a-többhöz kapcsolat nem megfelelõen jött létre, feloldatlan kapcsolatról beszélünk. Erre az 1.7. ábrán láthatunk egy világos példát. Itt a Customers (Megrendelõk) tábla egy-egy rekordja az Entertainers tábla több rekordjához kapcsolódhat, és az Entertainers tábla egy-egy rekordja is a Customers tábla több rekordjához. A kapcsolat a több-a-többhöz viszonyban rejlõ probléma miatt lesz feloldatlan. A kérdés ez: miként társíthatjuk egyszerûen az elsõ tábla rekordjait a második tábla rekordjaihoz? Ha a kérdést az 1.7. ábrán látható táblák szerint fogalmazzuk újra, a probléma ez lesz: hogyan társíthatunk egy megrendelõt több elõadóhoz vagy egy adott elõadót több megrendelõhöz? (Ha egy szórakoztatóügynökséget vezetünk, bizonyára azt reméljük, hogy idõvel minden megrendelõ több elõadót is leköt, illetve az egyes elõadók fellépéseire is többen lesznek kíváncsiak.) Beszúrjuk pár megrendelõ mezõjét az Entertainers táblába? Vagy adjunk néhány elõadómezõt a Customers táblához? Mindkét megoldás számos problémát eredményez, amikor a kapcsolódó adatokkal dolgozunk, elsõsorban az adatok következetessége terén. A problémára az a megoldás, hogy a korábban ismertetett módon létrehozunk egy kapcsoló táblát, amellyel megfelelõen feloldhatjuk a több-a-többhöz kapcsolatot. A megoldás gyakorlati megvalósítását az 1.8. ábra mutatja ábra Megfelelõen feloldott több-a-többhöz kapcsolat Az 1.8. ábrán a kapcsoló táblát úgy hoztuk létre, hogy vettük a CustomerID mezõt a Customers táblából, valamint az EntertainerID mezõt az Entertainers táblából, és ezekbõl alkottuk meg az új táblát. Az adatbázis más tábláihoz hasonlóan a kapcsoló táblának is saját ne-
14 14 SQL-lekérdezések földi halandóknak ve van: Engagements (Rendezvények). Az Engagements tábla jó példa egy olyan táblára, amely egy eseményrõl tárol információkat. Láthatjuk például, hogy az 1003-as elõadó (JV & the Deep Six) a es megrendelõnél (Doris Hartwig) lépett fel február 23-án. A kapcsoló tábla igazi elõnye, hogy lehetõvé teszi, hogy a kapcsolatban részt vevõ mindkét táblából tetszõleges számú rekord között teremtsünk kapcsolatot. Ahogy a példa is mutatja, most már egyszerûen összekapcsolhatunk egy adott megrendelõt tetszõleges elõadókkal vagy egy adott elõadót akárhány megrendelõvel. Ahogy korábban mondtuk, a kapcsolatok megértése nagyon fontos ahhoz, hogy hatékony többtáblás SQL-lekérdezéseket írjunk, ezért amikor elérünk a könyv III. részéhez, érdemes visszalapozni ide, és felfrissíteni az emlékezetünket. Miért hasznosak számunkra a relációs adatbázisok? De miért is kell törõdnünk azzal, hogy megértsük a relációs adatbázisokat? Miért érdekeljen minket, hogy milyen környezetben kezeljük az adatainkat? És egyáltalán: miért hasznosak számunkra a relációs adatbázisok? Nos, ideje, hogy megvilágosítsuk az elménket, és fejest ugorjunk a mélyvízbe! Az idõ, amit a relációs adatbázisok tanulmányozására fordítunk, olyan befektetés, ami egyértelmûen megtérül. Aktív tudásra kell szert tennünk a relációs adatbázisokkal kapcsolatban, mivel ma ez a legszélesebb körben elterjedt adattárolási modell. Felejtsük el, amit korábban olvastunk a témáról vagy amit Huba az informatikai részlegrõl mondott nekünk a cégek és különféle szervezetek által gyûjtött és kezelt adatok túlnyomó többségét relációs adatbázisokban tárolják. A modellnek valóban léteznek bõvítései, a relációs adatbázisokat kezelõ programok ma már objektumközpontú megoldásokat is alkalmaznak, és az ilyen adatbázisok mára teljesen beépültek a Világháló szövetébe, de nem számít, hogy csûrjük-csavarjuk, aprítjuk és fûszerezzük, ezek az adatbázisok ettõl még relációs adatbázisok maradnak. A relációs modell 35 éve velünk él, a szerepe csak egyre erõsödik, és belátható idõn belül nem lesz, ami felváltsa. Szinte minden ma használt kereskedelmi adatbázis-kezelõ szoftver relációs alapokon nyugszik (bár Dr. Codd, C.J. Date és Fabian Pascal komolyan megkérdõjeleznék, hogy bármelyik kereskedelmi megvalósítás valóban relációs-e!). Ha adatbázisokkal dolgozunk, és sikert szeretnénk elérni, tudnunk kell, hogyan kell megtervezni egy relációs adatbázist, és hogyan kell azt megvalósítani valamelyik népszerû RDBMS programban ráadásul azóta, hogy oly sok cég folytat üzleti tevékenységet az Interneten, némi webfejlesztési tapasztalat sem árt. A relációs adatbázisok gyakorlati ismerete több szempontból is a segítségünkre lehet. Minél többet tudunk például a relációs adatbázisok tervezésérõl, annál könnyebben tudunk majd egy adott adatbázishoz felhasználói alkalmazásokat fejleszteni. Meg fogunk lepõdni, milyen
15 1. fejezet Mit jelent az, hogy "relációs"? 15 egyszerûvé válik az RDBMS programunk használata mivel értjük, hogy mire szolgálnak az egyes eszközei, és hogyan használhatjuk azokat a leghatékonyabban. Gyakorlati ismereteinknek akkor is jó hasznát vesszük, amikor az SQL használatát igyekszünk elsajátítani, hiszen az SQL a relációs adatbázisok létrehozásának és kezelésének szabványos nyelve. Hogyan tovább? Már értjük, hogy miért fontos megismerkednünk a relációs adatbázisokkal, de azt is látnunk kell, hogy az adatbázisok elmélete és az adatbázisok tervezése két különbözõ dolog. Az adatbázisok elméletét azok az elvek és szabályok alkotják, amelyeken a relációs adatbázismodell alapul: ez az, amit az iskolák szentélyeiben oktatnak, és amit a valóság sötét bugyraiban gyorsan el kell hajítanunk. Az elmélet persze fontos, mert nélküle nem készíthetnénk szerkezetileg helyes relációs adatbázisokat, és az adatbázisaink adatain végzett mûveletek eredménye sem lenne megjósolható. Ezzel szemben viszont az adatbázisok tervezése azokat a strukturált folyamatokat foglalja magába, amelyek révén egy relációs adatbázis felépül. A helyes adatbázis-tervezési módszerek ismerete elengedhetetlen ahhoz, hogy pontos és következetes adatokat tartalmazó adatbázisokat hozzunk létre, illetve hogy a kinyert információk is a lehetõ legpontosabbak és legfrissebbek legyenek. Ha teljes vállalatra kiterjedõ adatbázisokat szeretnénk tervezni és létrehozni, webes alapú internetes üzleti adatbázisokat akarunk fejleszteni, vagy adattárakat kívánunk üzemeltetni, célszerû megfontolni az adatbázisok elméletének tanulmányozását. Ez akkor is érvényes, ha az említett területek egyikében sem akarunk elmerülni, csak elismert adatbázis-szakértõvé szeretnénk válni. Mindenki másnak, aki relációs adatbázisokat tervez és készít különbözõ rendszerekre (és úgy véljük, õk teszik ki e könyv olvasóinak nagy többségét), a helyes adatbázis-tervezési módszerek alapos ismerete elegendõ. Ne feledjük, hogy egy adatbázist megtervezni viszonylag könnyû, de megvalósítani azt egy adott RDBMS programban egy adott rendszerre már teljesen más tészta (amit más könyvekbõl sajátíthatunk el). A piacon számos jó könyvet találunk az adatbázis-tervezésrõl. Egyesek, például Mike Hernandez Database Design for Mere Mortals címû könyve (Addison-Wesley, 2004; magyarul: Adatbázis-tervezés: A relációs adatbázisok alapjairól földi halandóknak. Kiskapu, 2004) csak az adatbázis-tervezés módszertanával foglalkoznak, míg mások, például C.J. Date An Introduction to Database Systems (Addison-Wesley, 2003) címû mûve, keverik az elméletet és a gyakorlati tervezést. (Arra viszont fel kell hívnunk a figyelmet, hogy az elméleti könyvek általában nem könnyû olvasmányok.) Miután eldöntöttük, hogy milyen irányban szeretnénk továbbhaladni, válasszuk ki és vegyük meg a megfelelõ könyveket, fogjunk egy csésze dupla eszpresszót (vagy ha más kedvenc italunk van, akkor azt), és merüljünk el bennük. Ha már általánosságban magabiztosan mozgunk a relációs adatbázisok körében, rá fogunk jönni, hogy mélyebben meg kell ismerkednünk az SQL-lel is ezért olvassuk ezt a könyvet.
16 16 SQL-lekérdezések földi halandóknak Összefoglalás A fejezetet a ma használatos adatbázisok különbözõ típusainak rövid ismertetésével kezdtük. Megtudtuk, hogy a dinamikus adatokkal dolgozó vállalatok és intézmények mûveleti adatbázisokat használnak, és így biztosítják, hogy a kinyert információk mindig a lehetõ legfrissebbek és legpontosabbak legyenek, míg a statikus adatokat kezelõ szervezetek elemzõ adatbázisokat alkalmaznak. Ez után röviden áttekintettük a relációs adatbázismodell történetét. Elmeséltük, hogy a modellt Dr. E. F. Codd alkotta meg a matematika egyes ágaira alapozva, és hogy a modell már több mint 35 éve létezik. Adatbázis-kezelõ programokat, ahogy ma ismerjük õket, különféle számítógépes környezetekhez készítenek, a teljesítményük, a hatékonyságuk és a képességeik köre pedig az 1970-es évek óta folyamatosan nõ. A nagygépektõl az asztali és webes alkalmazásokig sok-sok vállalat gerincét RDBMS programok képezik. Ezt követõen a relációs adatbázisok felépítését vizsgáltuk. Bemutattuk az alapvetõ összetevõiket, és röviden elmagyaráztuk a szerepüket. Tanultunk a kapcsolatok három lehetséges típusáról, és megértettük, miért fontosak, nem csak magának az adatbázis szerkezetének a szempontjából, hanem abból a szempontból is, hogy miként segítik az SQL mûködésének jobb megértését. Végül elmagyaráztuk, hogy milyen hasznunk származik a relációs adatbázisok tanulmányozásából, és hogy miként kell megtervezni õket. Most már tudjuk, hogy a ma használatos adatbázisok közül a relációs adatbázisok a legelterjedtebbek, és szinte minden adatbáziskezelõ szoftver mögött, amivel találkozhatunk, egy relációs adatbázis áll. Ezen kívül arról is képet kaptunk, hogy merre haladhatunk, ha kicsit többet szeretnénk tudni a relációs adatbázisok elméletérõl és tervezésérõl. A következõ fejezetben arra tanulunk meg néhány módszert, hogy miként finomhangolhatunk meglevõ adatbázis-szerkezeteket.
ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu
ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu Számonkérés 2 Papíros (90 perces) zh az utolsó gyakorlaton. Segédanyag nem használható Tematika 1. félév 3 Óra Dátum Gyakorlat 1. 2010.09.28.
Adatbázis-kezelés az Excel 2013-ban
Molnár Mátyás Adatbázis-kezelés az Excel 2013-ban Magyar nyelvi verzió Csak a lényeg érthetően! www.csakalenyeg.hu Csak a lényeg érthetően! Microsoft Excel 2013 Kimutatás készítés relációs adatmodell alapján
MS ACCESS 2010 ADATBÁZIS-KEZELÉS ELMÉLET SZE INFORMATIKAI KÉPZÉS 1
SZE INFORMATIKAI KÉPZÉS 1 ADATBÁZIS-KEZELÉS MS ACCESS 2010 A feladat megoldása során a Microsoft Office Access 2010 használata a javasolt. Ebben a feladatban a következőket fogjuk gyakorolni: Adatok importálása
Adatbázis, adatbázis-kezelő
Adatbázisok I. rész Adatbázis, adatbázis-kezelő Adatbázis: Nagy adathalmaz Közvetlenül elérhető háttértárolón (pl. merevlemez) Jól szervezett Osztott Adatbázis-kezelő szoftver hozzáadás, lekérdezés, módosítás,
Adatbázis rendszerek. dr. Siki Zoltán
Adatbázis rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati személyzeti
ADATBÁZIS-KEZELÉS ALAPOK I.
ADATBÁZIS-KEZELÉS ALAPOK I. AZ ADATBÁZIS FOGALMA Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei egy meghatározott tulajdonságuk alapján összetartozónak tekinthetők. Az adatbázis-kezelőknek
Adatbázismodellek. 1. ábra Hierarchikus modell
Eddig az adatbázisokkal általános szempontból foglalkoztunk: mire valók, milyen elemekből épülnek fel. Ennek során tisztáztuk, hogy létezik az adatbázis fogalmi modellje (adatbázisterv), amely az egyedek,
Adatbázis-kezelő rendszerek. dr. Siki Zoltán
Adatbázis-kezelő rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati
Adatbázisok - 1. előadás
Óbudai Egyetem Alba Regia Műszaki Kar (AMK) Székesfehérvár 2015. október 15. Köszönet A tárgyat korábban Kottyán László tanította. Köszönöm neki, hogy az általa elkészített
Adatbázisok I 2012.05.11. Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés
Adatbázisok I Szemantikai adatmodellek Szendrői Etelka PTE-PMMK Rendszer és Szoftvertechnológiai Tanszék szendroi@pmmk.pte.hu Adatmodellek komponensei Adatmodell: matematikai formalizmus, mely a valóság
Informatikai alapismeretek Földtudományi BSC számára
Informatikai alapismeretek Földtudományi BSC számára 2010-2011 Őszi félév Heizlerné Bakonyi Viktória HBV@ludens.elte.hu Titkosítás,hitelesítés Szimmetrikus DES 56 bites kulcs (kb. 1000 év) felcserél, helyettesít
Adatbáziskezelés Delphi 5 alatt. Bese Antal 2006. http://toni.web.elte.hu/delphi
Adatbáziskezelés Delphi 5 alatt Bese Antal 2006. http://toni.web.elte.hu/delphi 1. Bevezetés Számítógépes adattárolás fájlokban. Az egész adatbázist egy fájlban (Pl.: Access, Interbase,és a legtöbb SQL
A hierarchikus adatbázis struktúra jellemzői
A hierarchikus adatbázis struktúra jellemzői Az első adatbázis-kezelő rendszerek a hierarchikus modellen alapultak. Ennek az volt a magyarázata, hogy az élet sok területén első közelítésben elég jól lehet
Adatbázis-lekérdezés. Az SQL nyelv. Makány György
Adatbázis-lekérdezés Az SQL nyelv Makány György SQL (Structured Query Language=struktúrált lekérdező nyelv): relációs adatbázisok adatainak visszakeresésére, frissítésére, kezelésére szolgáló nyelv. Születési
Adatbázis-kezelés. alapfogalmak
Adatbázis-kezelés alapfogalmak Témakörök Alapfogalmak Adatmodellek Relációalgebra Normalizálás VÉGE Adatbázis-kezelő rendszer Database Management System - DBMS Integrált programcsomag, melynek funkciói:
ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek
ADATBÁZIS-KEZELÉS Adatbázis-kezelő rendszerek Adat (Data) Észlelhető, felfogható ismeret Jelsorozat Tény, közlés Valakinek vagy valaminek a jellemzője Adatbázis (Data Base, DB) Hosszú ideig évekig meglévő
Kiskunmajsa és környéke turisztikai térinformatikai alkalmazás
Kiskunmajsa és környéke turisztikai térinformatikai alkalmazás Tartalomjegyzék 1. A RENDSZER RÖVID LEÍRÁSA...3 1.1. Elvárt funkciók:...3 1.2. Specifikáció...3 1.3. Funkciók ismertetése...3 2. RÉSZLETES
A relációs adatmodell
A relációs adatmodell E. Codd vezette be: 1970 A Relational Model of Data for Large Shared Data Banks. Communications of ACM, 13(6). 377-387. 1982 Relational Databases: A Practical Foundation for Productivity.
Mezők viszonya a relációs adatbázis tábláiban
Mezők viszonya a relációs adatbázis tábláiban A normalizálás megértéséhez szükségünk van néhány további fogalom ismeretére, ezért most kisebb kitérőt teszünk. Megismerjük - a funkcionális függés, - a teljes
Adatbáziskezelés. Indexek, normalizálás NZS 1
Adatbáziskezelés Indexek, normalizálás NZS 1 Fáljszervezés módjai Soros elérés: a rekordok a fájlban tetszőleges sorrendben, például a felvitel sorrendjében helyezkednek el. A rekord azonosítója vagyis
Hogyan fogalmazzuk meg egyszerűen, egyértelműen a programozóknak, hogy milyen lekérdezésre, kimutatásra, jelentésre van szükségünk?
Hogyan fogalmazzuk meg egyszerűen, egyértelműen a programozóknak, hogy milyen lekérdezésre, kimutatásra, jelentésre van szükségünk? Nem szükséges informatikusnak lennünk, vagy mélységében átlátnunk az
Programozás. Adatbázis-kezelés (alapok) Fodor Attila
Programozás Adatbázis-kezelés (alapok) Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. április 22. Bevezetés Adatbáziskezelés
Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése
BEVEZETÉS Célkitűzések Az Oracle10g felépítésének, használatának alapszíntű megismerése A relációs adatbázis-kezelés elméleti és gyakorlati vonatkozásainak áttekintése Az SQL, PL/SQL nyelvek használatának
Fogalmak: Adatbázis Tábla Adatbázis sorai: Adatbázis oszlopai azonosító mező, egyedi kulcs Lekérdezések Jelentés Adattípusok: Szöveg Feljegyzés Szám
Fogalmak: Adatbázis: logikailag összefüggő információ vagy adatgyőjtemény. Tábla: logikailag összetartozó adatok sorokból és oszlopokból álló elrendezése. Adatbázis sorai: (adat)rekord Adatbázis oszlopai:
Magas szintű adatmodellek Egyed/kapcsolat modell I.
Magas szintű adatmodellek Egyed/kapcsolat modell I. Ullman-Widom: Adatbázisrendszerek. Alapvetés. 4.fejezet Magas szintű adatmodellek (4.1-4.3.fej.) (köv.héten folyt.köv. 4.4-4.6.fej.) Az adatbázis modellezés
Féléves feladat. Vezetéknév Keresztnév
Féléves feladat Vezetéknév Keresztnév Vezetéknév Keresztnév 2/15 2015.02.05.. 1. Az adatbázis célja 1 A féléves feladat adatbázisát azért hoztam létre, hogy édesapám munkahelyén, egy szerviz cégnél megkönnyítsem
Az MS Access adatbázis-kezelő program
Az adatbázis-kezelő program A tananyagban az alapfogalmak és a tervezési megoldások megismerése után a gyakorlatban is elkészítünk (számítógépes) adatbázisokat. A számítógépes adatbázisok létrehozásához,
Adatmodellek. 2. rész
Adatmodellek 2. rész Makány György Alapfogalmak JEL ADAT INFORMÁCIÓ ADATHALMAZ ADATÁLLOMÁNY ADATBÁZIS 2 Alapfogalmak JEL ADATHALMAZ észlelhető, felfogható fizikai érték ADAT a valós világ egy jelenségéből
ADATBÁZIS RENDSZEREK. Adatbázisok története, alapfogalmak, adatmodellek. Krausz Nikol, Medve András, Molnár Bence
ADATBÁZIS RENDSZEREK Adatbázisok története, alapfogalmak, adatmodellek Krausz Nikol, Medve András, Molnár Bence 2018.01.14. BEMUTATKOZÁS Molnár Bence molnar.bence@epito.bme.hu e-mail tárgya: [ABR] aktív
IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.
IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.kiadás IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere
7. előadás. Karbantartási anomáliák, 1NF, 2NF, 3NF, BCNF. Adatbázisrendszerek előadás november 3.
7. előadás,,,, Adatbázisrendszerek előadás 2008. november 3. és Debreceni Egyetem Informatikai Kar 7.1 relációs adatbázisokhoz Mit jelent a relációs adatbázis-tervezés? Az csoportosítását, hogy jó relációsémákat
Adatmodellezés. 1. Fogalmi modell
Adatmodellezés MODELL: a bonyolult (és időben változó) valóság leegyszerűsített mása, egy adott vizsgálat céljából. A modellben többnyire a vizsgálat szempontjából releváns jellemzőket (tulajdonságokat)
RELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás
RELÁCIÓS ADATBÁZISSÉMÁK Egyed-kapcsolat modellről átírás A RELÁCIÓS ADATMODELL Az adatokat egyszerűen reprezentálja: kétdimenziós adattáblákban Minden sor azonos számú oszlopból áll; egy sor egy rekord,
Internet alkamazások Készítette: Methos L. Müller Készült: 2010
Internet alkamazások Készítette: Methos L. Müller Készült: 2010 Tartalomjegyzék - Tartalomkezelő rendszerek Miért jó a CMS alapú website? CMS rendszerek - Mi szükséges ezen CMS-ekhez? - Információ építészet
2012.02.08. Ajánlott irodalom. Adatbázisok I.
Ajánlott irodalom Adatbázisok I. Szendrői Etelka főiskolai docens Rendszer- és Szoftvertechnológia Tanszék szendroi@pmmk.pte.hu Ullmann, Jeffry David, Adatbázisrendszerek: Alapvetés Kovács László (2004)
Bevezetés: az SQL-be
Bevezetés: az SQL-be Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.3. Relációsémák definiálása SQL-ben, adattípusok, kulcsok megadása 02B_BevSQLsemak
Az adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata:
ADATSZERVEZÉS Az adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata: fájlrendszerek (a konvencionális módszer) és adatbázis rendszerek (a haladóbb
Adatbázis rendszerek 6.. 6. 1.1. Definíciók:
Adatbázis Rendszerek Budapesti Műszaki és Gazdaságtudományi Egyetem Fotogrammetria és Térinformatika 6.1. Egyed relációs modell lényegi jellemzői 6.2. Egyed relációs ábrázolás 6.3. Az egyedtípus 6.4. A
Temporális adatbázisok. Kunok Balázs szakdolgozata alapján
Temporális adatbázisok Kunok Balázs szakdolgozata alapján Miért? Döntéshozatalok körülményeinek meghatározása. Nem csak az a lényeges, hogy hogyan változott az adat, hanem az is, hogy miért. Adatok helyreállíthatók
ELSŐ LÉPÉSEK A SZÁMÍTÓGÉPEK RODALMÁBA AMIT A SZÁMÍTÓGÉPEKRŐL TUDNI ÉRDEMES
ELSŐ LÉPÉSEK A SZÁMÍTÓGÉPEK RODALMÁBA AMIT A SZÁMÍTÓGÉPEKRŐL TUDNI ÉRDEMES Számítógép = Univerzális gép! Csupán egy gép a sok közül, amelyik pontosan azt csinálja, amit mondunk neki. Hardver A számítógép
SZÁMÍTÓGÉP AZ IRODÁBAN KÉPZÉSI PROGRAM
SZÁMÍTÓGÉP AZ IRODÁBAN KÉPZÉSI PROGRAM a Felnőttképzésről szóló 2013. évi LXXVII. tv. 12. (1) bekezdésének megfelelően. A képzési program Megnevezése Nyilvántartásba vételi száma Számítógép az irodában
Az adatbázisrendszerek világa
Az adatbázisrendszerek világa Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 1.1. Az adatbázisrendszerek fejlődése 1.2. Az adatbázis-kezelő rendszerek áttekintése
Microsoft Access alapok
Microsoft Access alapok Képzési program Cím: 1027 Budapest, Csalogány utca 23. (a) A tanfolyam célja (a képzés során megszerezhető kompetencia) A tanfolyamot azoknak ajánljuk, akik már jártasságát szereztek
Microsoft SQL Server telepítése
Microsoft SQL Server telepítése Az SQL Server a Microsoft adatbázis kiszolgáló megoldása Windows operációs rendszerekre. Az SQL Server 1.0 verziója 1989-ben jelent meg, amelyet tizenegy további verzió
KOVÁCS BÉLA, MATEMATIKA I.
KOVÁCS BÉLA, MATEmATIkA I. 1 I. HALmAZOk 1. JELÖLÉSEk A halmaz fogalmát tulajdonságait gyakran használjuk a matematikában. A halmazt nem definiáljuk, ezt alapfogalomnak tekintjük. Ez nem szokatlan, hiszen
Access 2013 Lekérdezéstől testre szabásig TARTALOM 1
TARTALOM 1 2 TARTALOM Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is. Kiadja a Mercator Stúdió Felelős kiadó a Mercator Stúdió vezetője Lektor: Pétery Tamás Szerkesztő:
Google App Engine az Oktatásban 1.0. ügyvezető MattaKis Consulting http://www.mattakis.com
Google App Engine az Oktatásban Kis 1.0 Gergely ügyvezető MattaKis Consulting http://www.mattakis.com Bemutatkozás 1998-2002 között LME aktivista 2004-2007 Siemens PSE mobiltelefon szoftverfejlesztés,
LOGISZTIKAI ADATBÁZIS RENDSZEREK BEVEZETÉS
LOGISZTIKAI ADATBÁZIS RENDSZEREK BEVEZETÉS Lénárt Balázs tanársegéd TANTERV, SZOFTVER, IRODALOM Hét Dátum Előadó Előadások Időpont: szerda 8:30-10:00, helye: LFSZÁMG Dátum Gyakvezető 1. 9. 11. Tokodi Adatbázis
SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák
SQL Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák A SELECT UTASÍTÁS ÁLTALÁNOS ALAKJA (ISM.) SELECT [DISTINCT] megjelenítendő oszlopok FROM táblá(k direkt szorzata) [WHERE feltétel]
Az adatbázis-biztonság szerepe és megvalósításának feladatai a kritikus információs infrastruktúrák védelmében
ZRÍNYI MIKLÓS NEMZETVÉDELMI EGYETEM Katonai Műszaki Doktori Iskola Fleiner Rita Az adatbázis-biztonság szerepe és megvalósításának feladatai a kritikus információs infrastruktúrák védelmében Doktori (PhD)
MICROSOFT DYNAMICS AX ÜZLETI ANALÍZIS
MICROSOFT DYNAMICS AX ÜZLETI ANALÍZIS MICROSOFT DYNAMICS AX ÜZLETI ANALÍZIS A Microsoft Dynamics AX-rendszer Üzleti analízis moduljával a vállalat üzleti adatai rögtön ismeretekké alakíthatók, amelyek
KÉPZÉSI PROGRAM. GAZDASÁGI INFORMATIKUS OKJ azonosító: 54 481 02. Szolnok
KÉPZÉSI PROGRAM GAZDASÁGI INFORMATIKUS OKJ azonosító: 54 481 02 Szolnok 2015 KÉPZÉSI PROGRAM A képzési program Megnevezése Gazdasági informatikus OKJ azonosító 54 481 02 A képzés során megszerezhető kompetenciák
2009.04.29. 2009. április 24. INFO Savaria 2009 2. 2009. április 24. INFO Savaria 2009 4. 2009. április 24. INFO Savaria 2009 3
Négy adatbázis-kezelı rendszer összehasonlítása webes környezetben Sterbinszky Nóra snorav@gmail.com Áttekintés Növekvı igény hatékony adatbázis- kezelıkre a világhálón Hogyan mérhetı ezek teljesítménye
w w w. h a n s a g i i s k. h u 1
w w w. h a n s a g i i s k. h u Adatbázis-kezelés Adatbázisok Az adatbázisok rendezett adatok halmaza. Rendezett adatok közt sokkal gyorsabban lehet keresni! Napjainkban a relációs típusú adatbázis terjedt
ADATBÁZISKEZELÉS ADATBÁZIS
ADATBÁZISKEZELÉS 1 ADATBÁZIS Az adatbázis adott (meghatározott) témakörre vagy célra vonatkozó adatok gyűjteménye. - Pl. A megrendelések nyomon követése kereskedelemben. Könyvek nyilvántartása egy könyvtárban.
Adatbáziskezelés alapjai. jegyzet
Juhász Adrienn Adatbáziskezelés alapja 1 Adatbáziskezelés alapjai jegyzet Készítette: Juhász Adrienn Juhász Adrienn Adatbáziskezelés alapja 2 Fogalmak: Adatbázis: logikailag összefüggı információ vagy
INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010
INFORMATIKA ÁGAZATI ALKALMAZÁSAI Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010 2. Adatbáziskezelés eszközei Adatbáziskezelés feladata Adatmodell típusai Relációs adatmodell
Adatbázisok. Mit jelent az, hogy adatbázis? Ismételjük át az alapfokon tanultakat!
Előszó Amikor számítógépről van szó, vagy általában informatikai környezet vesz körül, egyből arra a gyorsaságra gondolunk, amivel akár bonyolult műveleteket is végre tud hajtani. Általában az első funkció,
Történet John Little (1970) (Management Science cikk)
Információ menedzsment Szendrői Etelka Rendszer- és Szoftvertechnológia Tanszék szendroi@witch.pmmf.hu Vezetői információs rendszerek Döntéstámogató rendszerek (Decision Support Systems) Döntések információn
ADATBÁZISOK, ADATTÁRHÁZAK
ADATBÁZISOK, ADATTÁRHÁZAK 1 Adattárolás Háttértárak Fájlok Fájlkezelő rendszer 2 Adattárolás Az adatok, információk bináris formában kerülnek tárolásra. Értelmezés kérdése, hogy egy bitsorozatnak milyen
Egyetemi könyvtári nyilvántartó rendszer
RENDSZERTERV Egyetemi könyvtári nyilvántartó rendszer A rendszer célja A projekt célja egy egyetemi könyvtár nyilvántartó rendszerének megtervezése. A legfőbb követelmény, amit a rendszerrel szemben támasztok,
PHP-MySQL. Adatbázisok gyakorlat
PHP-MySQL Adatbázisok gyakorlat Weboldalak és adatbázisok Az eddigiek során megismertük, hogyan lehet a PHP segítségével dinamikus weblapokat készíteni. A dinamikus weboldalak az esetek többségében valamilyen
Infor PM10 Üzleti intelligencia megoldás
Infor PM10 Üzleti intelligencia megoldás Infor Üzleti intelligencia (Teljesítmény menedzsment) Web Scorecard & Műszerfal Excel Email riasztás Riportok Irányít Összehangol Ellenőriz Stratégia Stratégia
NETTUTOR AZ OKTATÁSSZERVEZÉS SZÁMÍTÓGÉPES TÁMOGATÁSA
NETTUTOR AZ OKTATÁSSZERVEZÉS SZÁMÍTÓGÉPES TÁMOGATÁSA Kis Ferenc, kis.f@szamalk-inf.hu SZÁMALK Informatika Rt. Az utóbbi években az elektronikus oktatás területén egyre több vállalat próbál különböző multimédiás
A számítógép-hálózat egy olyan speciális rendszer, amely a számítógépek egymás közötti kommunikációját biztosítja.
A számítógép-hálózat egy olyan speciális rendszer, amely a számítógépek egymás közötti kommunikációját biztosítja. A hálózat kettő vagy több egymással összekapcsolt számítógép, amelyek között adatforgalom
Vezetői információs rendszerek
Vezetői információs rendszerek Kiadott anyag: Vállalat és információk Elekes Edit, 2015. E-mail: elekes.edit@eng.unideb.hu Anyagok: eng.unideb.hu/userdir/vezetoi_inf_rd 1 A vállalat, mint információs rendszer
VÁLLALATI INFORMÁCIÓS RENDSZEREK. Debrenti Attila Sándor
VÁLLALATI INFORMÁCIÓS RENDSZEREK Debrenti Attila Sándor Információs rendszer 2 Információs rendszer: az adatok megszerzésére, tárolására és a tárolt adatok különböző szempontok szerinti feldolgozására,
Relációs modell és relációs algebra. ER konvertáása reációs modellre,példák relációs algebrára Személetes ismertetés
Relációs modell és relációs algebra ER konvertáása reációs modellre,példák relációs algebrára Személetes ismertetés Relációs modell Nagyon sok DBMS manapság (p. MySQL, Oracle, SQLite, MSSQL) használja
Nézetek és indexek. AB1_06C_Nézetek_Indexek - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján
Nézetek és indexek Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 8.1. Nézettáblák 8.2. Adatok módosítása nézettáblákon keresztül 8.3. Indexek az SQL-ben 8.4. Indexek
Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon
Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon Mi az IMDG? Nem memóriában futó relációs adatbázis NoSQL hagyományos relációs adatbázis Más fajta adat tárolás Az összes adat RAM-ban van, osztott
A 365 Solutions Kft. büszke a teljesítményére, az elért sikereire és a munkatársai képességeire. Kamatoztassa ön is a tapasztalatainkat és a
365 365 A 365 Solutions Kft. büszke a teljesítményére, az elért sikereire és a munkatársai képességeire. Kamatoztassa ön is a tapasztalatainkat és a tökéletesre való törekvésünket: Legyen a partnerünk,
Adatbázisok és adattárházak az információs rendszerek adatkezelői
Adatbázisok és adattárházak az információs rendszerek adatkezelői (Klárné Barta Éva) Részlet az Adatbáziskezelés és vállalati információs rendszerek című jegyzetből. Az első adatfeldolgozó rendszerek néhány
Mobil nyomtatás működési elv és megoldás választási kritériumok
Mobil nyomtatás működési elv és megoldás választási kritériumok A mobil eszközök száma világszerte rohamosan növekszik és jelentős kiegészítőjévé, sok esetben helyettesítőjévé vált a hagyományos számítógépeknek.
Adatbázis rendszerek 2. előadás. Relációs algebra
Adatbázis rendszerek. előadás Relációs algebra Molnár Bence Szerkesztette: Koppányi Zoltán Bevezetés Relációs algebra általában A relációs algebra néhány tulajdonsága: Matematikailag jól definiált Halmazelméletből
AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis
AB1 ZH mintafeladatok 1. Töltse ki, és egészítse ki! Matematikai formalizmus arra, hogy hogyan építhetünk új relációkat a régi relációkból. Az adatoknak egy jól strukturált halmaza, amelyből információ
Választó lekérdezés létrehozása
Választó lekérdezés létrehozása A választó lekérdezés egy vagy több rekordforrásból származó adatokat jelenít meg. A választó lekérdezések a táblák, illetve az adatbázis tartalmát nem változtatják meg,
Kiegészítő témakörök: Táblázatkezelés történeti áttekintés
Kiegészítő témakörök: Dr. Kallós Gábor 2011-2012 1 Tartalom Táblázatkezelés a számítógépek előtt A számítógépes táblázatkezelés kezdetei Sikeres korai táblázatkezelők Lotus 1-2-3 Quattro Pro Microsoft
A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:
1 Adatbázis kezelés 3. gyakorlat A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: Tábla kapcsolatok létrehozása,
Az informatika tantárgy fejlesztési feladatait a Nemzeti alaptanterv hat részterületen írja elő, melyek szervesen kapcsolódnak egymáshoz.
INFORMATIKA Az informatika tantárgy ismeretkörei, fejlesztési területei hozzájárulnak ahhoz, hogy a tanuló az információs társadalom aktív tagjává válhasson. Az informatikai eszközök használata olyan eszköztudást
Egyetemi könyvtári nyilvántartó rendszer
RENDSZERTERV Egyetemi könyvtári nyilvántartó rendszer A rendszer célja A projekt célja egy egyetemi könyvtár nyilvántartó rendszerének megtervezése. A legfőbb követelmény, amit a rendszerrel szemben támasztok,
Csima Judit október 24.
Adatbáziskezelés Funkcionális függőségek Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2018. október 24. Csima Judit Adatbáziskezelés Funkcionális függőségek 1 / 1 Relációs sémák
PRECÍZ Információs füzetek
PRECÍZ Információs füzetek Információk, Módszerek, Ötletek és Megoldások a Precíz Integrált Ügyviteli Információs rendszerhez T14. ODBC adatkapcsolat 2009. augusztus 31. PRECÍZ integrált ügyviteli rendszer
Virtual I/O Server 1.1.2.0 változat
Virtual I/O Server 1.1.2.0 változat Kiadási megjegyzések GI22-0068-02 Virtual I/O Server 1.1.2.0 változat Kiadási megjegyzések GI22-0068-02 Megjegyzés Az információk és a tárgyalt termék használatba vétele
A 24. sorszámú Webmester megnevezésű részszakképesítés szakmai és vizsgakövetelménye 1. AZ ORSZÁGOS KÉPZÉSI JEGYZÉKBEN SZEREPLŐ ADATOK
A 24. sorszámú Webmester megnevezésű részszakképesítés szakmai és vizsgakövetelménye 1. AZ ORSZÁGOS KÉPZÉSI JEGYZÉKBEN SZEREPLŐ ADATOK 1.1. A részszakképesítés azonosító száma: 51 481 03 1.2. Részszakképesítés
Adatbázis rendszerek Gy: Az adattárolás fejlődése
Adatbázis rendszerek 1. 2. Gy: Az adattárolás fejlődése 1/22 B ITv: MAN 2017.09.17 Papír alapú adattárolás Lyukkártya 2/22 Probléma: 3/22 Papír alapú adattárolás Lyukszalag 4/22 Papír alapú adattárolás
Az adatbáziskezelés alapjai
Az adatbáziskezelés alapjai Klárné Barta Éva Az adatokat fájlokba szervezve tárolják a számítógépek háttértárain, elsődlegesen a merevlemezeken. Az első adatfeldolgozó rendszerek néhány fájlban tárolt
Adatbázis-kezelés. Dr. Fülep Dávid. SELECT id FROM tantargy WHERE intezmeny = sze ORDER BY hasznossag LIMIT 1 NGB_SZ_003_9
Adatbázis-kezelés Dr. Fülep Dávid SELECT id FROM tantargy WHERE intezmeny = sze ORDER BY hasznossag LIMIT 1 NGB_SZ_003_9 Adatbázis-kezelés Első előadás 2 Célok Válaszok a következőkhöz hasonló kérdésekre:
Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet
1 2 Adatbáziskezelő-szerver Általában dedikált szerver Optimalizált háttértár konfiguráció Csak OS + adatbázis-kezelő szoftver Teljes memória az adatbázisoké Fő funkciók: Adatok rendezett tárolása a háttértárolón
Bevezetés a programozásba
Bevezetés a programozásba 1. Előadás Bevezetés, kifejezések http://digitus.itk.ppke.hu/~flugi/ Egyre precízebb A programozás természete Hozzál krumplit! Hozzál egy kiló krumplit! Hozzál egy kiló krumplit
SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok
SQL jogosultság-kezelés Privilégiumok Grant és Revoke Grant Diagrammok 1 Jogosultság-kezelés Egy fájlrendszer általában jogosultságokat rendel az általa kezelt objektumokhoz. Tipikusan olvasható, írható,
vbar (Vemsoft banki BAR rendszer)
vbar (Vemsoft banki BAR rendszer) BAR bemutatása 1994. július 1-jétől kezdte meg működését a Központi Adós- és Hitelinformációs Rendszer, azóta is használt rövidített nevén a BAR, amely kezdetben kizárólag
Az alábbiak közül melyek a vállalati stratégia típusok?
Az alábbiak közül melyek a vállalati stratégia típusok? Piacorientált, dinamikus, jövőorientált, integratív Költségvezető, megkülönböztető, koncentráló HELYES Innovatív, stabilizáló, leépítő Vízió, misszió
TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS
TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS Hartung István BME Irányítástechnika és Informatika Tanszék TEMATIKA Cloud definíció, típusok, megvalósítási modellek Rövid Azure cloud bemutatás
Adatbáziskezelés alapjai ADATBÁZISKEKZELÉS 1
Adatbáziskezelés alapjai ADATBÁZISKEKZELÉS 1 Adatbáziskezelő programok ÖSSZETEVŐI: adatbáziskezelő rendszer felhasználói felület lehet karakteres vagy grafikus SZOFTVEREK MS Access MS SQL Server Open Office
LOGISZTIKAI ADATBÁZIS RENDSZEREK EXCEL ALAPOK
LOGISZTIKAI ADATBÁZIS RENDSZEREK EXCEL ALAPOK Lénárt Balázs tanársegéd TANTERV Hét Dátum Előadó Előadások Időpont: szerda 8:30-10:00, helye: LFSZÁMG Dátum Gyakvezető 1. 9. 11. Tokodi Adatbázis kezelés
Rendszerterv. 1. Funkcionális terv. 1.1. Feladat leírása:
Rendszerterv 1. Funkcionális terv 1.1. Feladat leírása: A feladat egy GPS-képes eszközökön futó alkalmazás, illetve ennek szerver oldali párjának létrehozása. A program a szerveren tárolt adatbázis alapján
Bevezetés: Relációs adatmodell
Bevezetés: Relációs adatmodell Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.1. Adatmodellek áttekintése 2.2. A relációs modell alapjai -- Megjegyzés:
Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t
Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,
ADATBÁZISOK ADATBÁZIS-KEZELŐ RENDSZEREK. Debrenti Attila
ADATBÁZISOK ADATBÁZIS-KEZELŐ RENDSZEREK Debrenti Attila Az adatbázis fogalma 2 Számos egzakt, tudományos definíció. Hétköznapi definíció: az adatbázis valamilyen jól definiált rendszer szerint tárolt adatokból
Haladó DBMS Radványi, Tibor
Radványi, Tibor Radványi, Tibor Publication date 2011 Szerzői jog 2011 Hallgatói Információs Központ Copyright 2011, Felhasználási feltételek Tartalom 1. Haladó DBMS... 1 1. Előszó... 1 2. Az adatbázis-kezelés-