Oracle-tietokannan muutoksenhallinta
No Thumbnail Available
URL
Journal Title
Journal ISSN
Volume Title
Helsinki University of Technology |
Diplomityö
Checking the digitized thesis and permission for publishing
Instructions for the author
Instructions for the author
Authors
Date
2009
Department
Major/Subject
Ohjelmistotekniikka
Mcode
T-106
Degree programme
Language
fi
Pages
102 (+11)
Series
Abstract
Tietokantasovelluksen evoluutio aikaansaa tarpeen tehokkaan tietokannan muutoksenhallintaratkaisun toteuttamiseen. Aihepiiriä on tutkittu aina ensimmäisten kaupallisten tietokannan hallintajärjestelmien kehittämisestä saakka, mutta yksikäsitteistä parasta ratkaisua ei ole löydetty. Järkevin ratkaisu onkin aina määritettävä järjestelmäkohtaisesti. Käytännössä tehokkaan ratkaisun vaatimuksena on tietokantaobjektien versiointi ja muutoksenhallintaprosessin automatisointi. Vaikka versionhallintaohjelmaa on totuttu perinteisesti käyttämään vain ohjelmakoodin versioinnissa, sitä voidaan hyödyntää myös tietokannan luontiskriptien yhteydessä. Tässä työssä analysoidaan yrityksessä käytössä olevan Oracle-tietokannan muutoksenhallintaprosessin ongelma-alueet ja luodaan kehittämissuunnitelma prosessin parantamiseksi hyödyntäen versionhallintaa ja prosessin automatisointia. Kehittämissuunnitelman tuloksena syntyneessä uudessa muutoksenhallintaprosessissa koko tietokannan skeema talletetaan versionhallintaan tietokantaobjektien luontilauseet sisältävinä skriptitiedostoina. Koska tietokantaobjektin päivittäminen tapahtuu suoraan luontilausetta muokkaamalla muutoslauseen kirjoittamisen sijaan, tarvitaan mekanismi muutosten päivittämiseksi tietokantaan. Tässä työssä toteutettiin PL/SQL-generaattori, joka pystyy generoimaan luontilauseesta älykästä PL/SQL-koodia tietokannan rakenteen vertailemiseen luontilausetta vasten. Koodin avulla pystytään muodostamaan dynaamisesti tarvittavat SQL-lauseet tietokannan saattamiseksi ajan tasalle.Description
Supervisor
Soisalon-Soininen, EljasThesis advisor
Hulttinen, VesaKeywords
database change management, tietokannan muutoksenhallinta, software evolution, sovelluksen evoluutio, automatization, automatisointi, version control, versionhallinta, relational databases, relaatiotietokannat, Oracle, Oracle