Apache DdlUtils
- ons 13 sep, 2006 kl 13:23
- Kommentera!
- Databaser, Java
Då jag suttit med i projekt där datamodellen har ändrats under projektets gång så vet jag hur mycket strul det är med sånt. Eftersom varje utvecklare oftast har en egen databas-instans som de utvecklar mot så behöver varje ändring av datamodellen kommuniceras ut i projektet och varje utvecklare måste själv göra sina ändringar. Man vill ju helst inte kasta hela databasen och skapa den på nytt bara för att en annan utvecklare utökade längden på ett fält (till exempel). Ovanpå detta så vill man enkelt kunna uppdatera en databas i drift och vara säker på att alla ändringar blev rätt. Ett alternativ är att på sidan av sitt stora databas-script ha ett antal mindre ”delta”-script som utför de nödvändiga ”alter table” som behövs mellan varje release.
Gissa om jag blev glatt överraskad nnär jag av en händelse snubblade över DdlUtils på db.apache.org. Detta är ett lib plus ett stycke Ant-task som läser en XML-fil vilken definerar din datamodell. Den kan därefter generera en ny databasinstans eller uppdatera en existerande. Det går även att generera en sådan XML-fil från en existerande datamodell för att på så vis slippa skriva en komplicerad fil första gången. I fortsättningen så tar man endast och modiferar denna XML-fil så sköter DdlUtils resten åt dig. Mycket smidigt och väldigt användbart. Idag stödjer DdlUtils de flesta större databaser (MySQL, PostgreSQL, Oracle, MS SQL, DB 2, Sybase etc..). Ladda gärna hem det hela från http://db.apache.org/ddlutils/index.html och testa.