DB2

A stabil verziót 2022. május 6-án nézték meg . Ellenőrizetlen változtatások vannak a sablonokban vagy a .
DB2
Típusú Adatbázis kezelő rendszer
Fejlesztő IBM
Beírva C , C++
Operációs rendszer Többplatformos szoftver
Első kiadás 1995. május 23
legújabb verzió 11.5
Engedély Saját EULA
Weboldal ibm.com/analytics… ​(  angol)
 Médiafájlok a Wikimedia Commons oldalon

A DB2 az IBM által gyártott relációs adatbázis-kezelő rendszerek  családja . A DB2-re hivatkozva leggyakrabban a DB2 Universal Database (DB2 UDB) relációs adatbázis-kezelő rendszert értik [1] .

Megvalósítások

A 2000-es években a DB2 DBMS-t a következő platformokon lévő verziók képviselték:

Az 1990 -es években megjelentek a DB2 szerver OS/2 , UnixWare és PTX verziói is .

A DB2 DBMS kliensek a felsorolt ​​platformokon kívül különböző verziókban is megjelentek vagy jelentek meg SINIX , IRIX , klasszikus Mac OS és MS-DOS rendszerekhez , valamint DB2 Everyplace mobil verzióhoz Windows CE , Palm OS , Symbian OS , Neutrino és virtuális gép java .

A 2000-es évektől a család kereskedelmi termékei mellett az IBM egy ingyenes Db2 Community Edition terjesztési készletet is forgalmaz , 2019 közepéig DB2 Express-C néven [2] :

A DB2 Express-C korlátai

A processzorok és a memória teljes száma az operációs rendszerben bármi lehet, de a megadott határokon túli erőforrásokat a DBMS nem használja. Ez automatikusan megtörténik, ami azt jelenti, hogy a felhasználónak nincs kötelezettsége ezen követelmények betartására.

Történelem

Az 1970-es évek elején Edgar Codd , aki az IBM-nek dolgozott, kidolgozta a relációs adatbázis -elméletet, és 1970 júniusában közzétett egy adatmanipulációs modellt . Ennek a modellnek a megvalósításához kifejlesztett egy relációs adatbázisnyelvet, és elnevezte Alfának . Az IBM úgy döntött, hogy a további fejlesztést Codd irányításán kívül eső programozók csoportjára bízza. A relációs modell néhány alapelvét megsértve "Strukturált angol lekérdező nyelvként", röviden SEQUEL -ként valósították meg . Mivel a SEQUEL mozaikszó akkoriban harmadik fél által bejegyzett védjegy volt , a név SQL-re rövidült – "Structured Query Language".

1975 és 1982 között a DB2 prototípust az IBM System Relational vagy System R néven fejlesztette ki. Az SQL nyelvet először az IBM System R-ben implementálták, de ez a rendszer kutatási jellegű volt, és a kereskedelmi terméket, köztük az SQL-t is az Oracle adta ki először 1979 -ben .

A DB2 nevét 1982 -ben kapta a VM - hez készült első kereskedelmi forgalomban , SQL/DS néven, majd ezt követte a DB2 elnevezésű MVS kiadás. Hosszú ideig a „DB2” mellett a „Database 2” változatot is használták, amely szintén az IBM védjegye.

Így a történelem során a DB2 a DB2 for MVS-ből (amelynek leszármazottja a DB2 for z/OS) és a testvére SQL/DS for VM-ből (amelynek leszármazottja a DB2 Server for VSE & VM) fejlődött ki. Később az IBM másik fejlesztőcsapata implementálta az OS/2 EE Database Manager kiszolgálót, amely később DB2 v2 for OS/2, AIX, majd Windows, majd DB2 UDB lett (a leszármazottja a DB2 for Linux, UNIX és Windows) . Egy másik csapat befejezte a DB2 architektúra integrációját a beágyazott AS/400 adatbázissal (a DB2 for i leszármazottja). Az IBM fokozatosan halad ezen ágak integrációja felé.

Jellemzők

A DB2-ben használt SQL nyelv dialektusa ritka kivételektől eltekintve szigorúan deklaratív, a rendszer fel van szerelve egy többfázisú optimalizálóval, amely ezekre a deklaratív konstrukciókra építi fel a lekérdezés végrehajtási tervet. Nem érhető el DB2 SQL dialektusbanA [ float ] utal az optimalizálóra, a tárolt eljárások nyelve kevés (és sokáig nincs is), így minden a lekérdezések deklaratív írási stílusának megőrzésére irányul. A DB2 SQL nyelv számításilag kész , vagyis potenciálisan lehetővé teszi a bemeneti adatok és az eredmény közötti bármilyen kiszámítható megfelelés deklaratív formában történő meghatározását. Ez többek között táblakifejezések, rekurzió és egyéb fejlett adatkezelési mechanizmusok használatával érhető el.

Hagyományosan a hagyományos, magas szintű programozási nyelveket ( C , Java , PL/I , Cobol stb.) használták a tárolt eljárások írásához, amelyek lehetővé teszik a programozó számára, hogy ugyanazt a kódot egyszerűen becsomagolja akár egy alkalmazás részeként, akár úgy. tárolt eljárás, attól függően, hogy a kliensen vagy a szerveren célszerűbb végrehajtani. A DB2 jelenleg az ANSI SQL/PSM szabványnak megfelelően az SQL eljárási kiterjesztést is megvalósítja a tárolt eljárásokhoz.

A DB2 optimalizáló nagymértékben felhasználja az adatok táblákban való elosztására vonatkozó statisztikákat (ha az adatgyűjtési folyamatot az adatbázis-adminisztrátor végezte), így ugyanaz az SQL lekérdezés teljesen más végrehajtási tervekre fordítható, a statisztikai jellemzők függvényében. általa feldolgozott adatok.

A biztonsági eszközök számítógépes rendszerekbe való integrálásának növelésére irányuló koncepció részeként a DB2 nem rendelkezik saját eszközökkel a felhasználók hitelesítésére , az operációs rendszer eszközeivel vagy a speciális biztonsági kiszolgálókkal való integrációra. A DB2-n belül csak a rendszer által hitelesített felhasználók jogosultak .

A DB2 az egyetlen olyan általános célú relációs DBMS, amely hardver/szoftver szintű megvalósításokkal rendelkezik ( IBM i rendszer; a DB2 támogatás IBM System z nagyszámítógépes hardveren is megvalósul).

A DB2 modern verziói továbbfejlesztett támogatást nyújtanak az XML adatok használatához , beleértve az XML dokumentumok egyes elemeivel végzett műveleteket is.

Hibakezelés

A DB2 SQL Server hasznos funkciója a hibakezelési képesség. Erre a célra az SQLCA ( SQL Communications Area )  struktúrát használják, amely az SQL utasítás minden egyes végrehajtása után  visszaküldi a hibáról szóló információkat az alkalmazási programnak .

Az SQLCODE struktúra mezői és jelentésük

A fő, de nem mindig hasznos hibadiagnosztikát az SQLCA blokkon belüli SQLCODE mező (adattípus - egész szám) tartalmazza. A következő értékeket veheti fel:

SQLERRM (az adattípus egy 71 karakterből álló karakterlánc) . Tartalmaz egy szöveges karakterláncot, amely leírja a hibát, ha az SQLCODE mező nullánál kisebb.

SQLERRD (adattípus - tömb , 6 egész szám). Leírja az utolsó SQL utasítás végrehajtásának eredményét:

Jegyzetek

  1. Néha látható a "DB/2" elírás, de ez az írásmód hibás: az IBM jelölésében a tört nevezőjében lévő szám a platformot, a "/2" pedig az OS/2 operációs rendszer termékét jelenti ( vagy a PS/2 sorozatú számítógépek ). Például a DB2 for OS/2 verziója "DB2/2" volt.
  2. Jumpstart az IBM Db2 Community Edition segítségével
  3. IBM DB2 Express-C áttekintés . Letöltve: 2009. május 23. Az eredetiből archiválva : 2010. szeptember 2..

Linkek

Irodalom