Oracle har stödt objekt sedan version 8.0 av databasen (dvs över ett decennium). Det var dock inte förrän 9iR2 som Oracle TYPE
stödde användardefinierade konstruktorer och korrekt implementerad polymorfism. I 11g lade de till stöd för en Java-liknande SUPER()
ringa upp. Men Oracle stöder fortfarande inte privata variabler eller privata metoder.
Som en konsekvens har OO-programmering inte riktigt tagit fart i Oracle-världen. Människor använder typer för att definiera samlingar i PL/SQL, vilket är särskilt användbart för massabearbetning . Pipeline-funktioner är också snygga och öppnar en intressant liten verktygsuppsättning .
Jag har använt Oracles objektorienterade funktionalitet, och om jag ska vara ärlig så finns det inte många scenarier där det är vettigt att välja typer framför vanlig PL/SQL. Det finns dock vissa situationer där det kan vara användbart. Jag har bloggat om detta en del. Läs mer.
redigera
Som Tuinstoel kommenterade länkade jag till fel artikel på Adrians sida. De spådde korrekt artikeln jag tänkte länka till, och jag har nu ändrat länken därefter.