Správa verzí databázových schémat
Database Schema Version Control
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/14849Identifikátory
SIS: 47456
Kolekce
- Kvalifikační práce [11264]
Autor
Vedoucí práce
Oponent práce
Skopal, Tomáš
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
26. 5. 2008
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Čeština
Známka
Výborně
Hlavním cílem práce je navrhnout a implementovat nástroj na zjišťování rozdílů ve dvou databázových schématech. Praktické uplatnění takového nástroje je poměrně široké. Nejčastějším případem použití však bude synchronizace dvou databázových schémat, která původně vznikla stejným vytvořujícím skriptem, tj. na začátku byla schémata shodná. Postupem času uživatel různými operacemi zasahuje do jednoho či druhého schématu, což následně vede k jejich rozdílné struktuře. V jistém okamžiku může uživatel opět požadovat, aby schémata obsahovala stejné databázové objekty, tj. aby byla, co se týče struktury, opět shodná. Nástroj na správu verzí databázových schémat v prvním kroku porovná databázové objekty v obou schématech a zjistí rozdíly. V dalších krocích vygeneruje různé formy výstupu pro uživatele - grafické znázornění změn, XML výstup a textový výstup. Zřejmě nejzajímavější formou výstupu je SQL skript, který po vykonání v jedné z databází zabezpečí, že obě schémata budou synchronizovaná. To znamená, že budou obsahovat stejné databázové objekty a tedy opět dojde ke sjednocení verzí databázových schémat.
The main goal of this diploma thesis is to design and implement an application that would be capable of searching for differences between two database schemas. There are many uses for such tool, but there is one that is the most common. Two database schemas are created with the same SQL script, so they are equal at the beginning. A user can later add or modify database objects in one of the schemas, so the schemas may not be equal anymore. The implemented tool can find the differences between the schemas and present the results to the user in various formats (diff tree in GUI, XML, and text). The most valuable form of output is undoubtedly an SQL script. The purpose of the SQL script is the synchronization of the two schemas. The user can execute such script in a database containing the second schema, and the second schema will be modified according to the first schema.