All Packages Class Hierarchy This Package Previous Next Index
Interface relaaja.database.DataDefinition
- public interface DataDefinition
Rajapinta tietokannan rakenteen määrittelemiseksi.
Yleiskäyttöisyyden säilyttämiseksi tauluihin, sarakkeisiin yms.
viitataan nimillä.
Rajapinnan läpi rakenteiset tiedot välitetään DD-alkuisten olioiden
tai niistä perittyjen aliluokkien välityksellä. Näin rajapintaa käyttävä
luokka voi tallentaa tietoja, joihin rajapinta ei ole varautunut.
- Author:
- Sami Jaala, Petri Pusa
-
ADD
-
-
REMOVE
-
-
addColumn(String, String, DDDataType, DDConstraintParameter)
- Lisää uuden sarakkeen olemassolevaan tauluun.
-
addConstraint(String, DDConstraintParameter)
- Lisää rajoitteen tauluun.
-
addDomain(String, DDDataType, DDConstraintParameter)
- Lisää uuden arvojoukon.
-
addDomainConstraint(String, DDConstraintParameter)
- Lisää arvojoukkorajoitteen
-
addTable(String, DDTableParameter)
- Lisää tietokantaan tyhjän taulun.
-
modifyColumn(String, String, DDDataType, DDConstraintParameter, int)
- Muuttaa olemassolevan sarakkeen ominaisuuksia.
-
modifyDomain(String, DDDataType, DDConstraintParameter, int)
- Muuttaa olemassaolevan arvojoukon ominaisuuksia.
-
removeColumn(String, String)
- Poistaa sarakkeen taulusta.
-
removeConstraint(String)
- Poistaa rajoitteen kaaviosta
-
removeConstraint(String, DDConstraintParameter)
- Poistaa rajoitteen taulusta
Viitteen poistossa constraintissa on oltava kohdetaulu sekä
lähtö- ja kohdesarakkeet.
-
removeDomain(String)
- Poistaa arvojoukon.
-
removeTable(String)
- Poistaa taulun tietokannasta.
-
renameTable(String, String)
- Vaihtaa taulun nimeä.
ADD
public static final int ADD
REMOVE
public static final int REMOVE
addColumn
public abstract void addColumn(String tableName,
String columnName,
DDDataType column,
DDConstraintParameter constraint) throws ObjectDoesntExistException, InvalidObjectException, InvalidNameException, NameAlreadyExistsException
- Lisää uuden sarakkeen olemassolevaan tauluun.
- Parameters:
- tableName - kohdetaulun nimi
- columnName - saraketieto-olio
- column - sarakkeen tyyppitiedot. Jokaista
saraketta varten täytyy luoda
oma DDDataType olio!
- constraint - sarakkeeseen liittyvät rajoitteet.
- Throws: ObjectDoesntExistException
- jos taulua tai saraketta ei ole
olemassa
- Throws: InvalidObjectException
- jos column tai constraint on
vääränlainen.
- Throws: InvalidNameException
- jos columnName ei ole sallittu
nimenä.
- Throws: NameAlreadyExistsException
- jos taululla on jo samanniminen
sarake
addConstraint
public abstract void addConstraint(String tableName,
DDConstraintParameter constraint) throws NameAlreadyExistsException, InvalidObjectException
- Lisää rajoitteen tauluun.
- Parameters:
- tableName - taulu, johon rajoite liittyy.
- constraint - rajoite
- Throws: NameAlreadyExistsException
- jos samanniminen rajoite on jo
olemassa
- Throws: InvalidObjectException
- jos constraint on vääränlainen
addDomain
public abstract void addDomain(String domainName,
DDDataType baseType,
DDConstraintParameter constraint) throws NameAlreadyExistsException, InvalidObjectException
- Lisää uuden arvojoukon.
- Parameters:
- domainName - nimi arvojoukolle
- baseType - pohjana oleva tietotyyppi. Jokaiselle
arvojoukolle on luotava oma DDDataType olio!
- constraint - arvojoukkoon liittyvät rajoitukset
- Throws: NameAlreadyExistsException
- jos samanniminen arvojoukko on jo
olemassa
- Throws: InvalidObjectException
- jos constraint tai baseType on
vääränlainen
addDomainConstraint
public abstract void addDomainConstraint(String domainName,
DDConstraintParameter constraint) throws NameAlreadyExistsException, InvalidObjectException, ObjectDoesntExistException
- Lisää arvojoukkorajoitteen
- Parameters:
- domainName - arvojoukon nimi, johon rajoite lisätään
- constraint - rajoite
- Throws: NameAlreadyExistsException
- jos samanniminen rajoite on
jo olemassa.
- Throws: InvalidObjectException
- jos rajoite on vääränlainen.
- Throws: ObjectDoesntExistException
- jos jotain rajoitteeseen
tarvittavaa ei ole olemassa
addTable
public abstract void addTable(String name,
DDTableParameter parameter) throws NameAlreadyExistsException, InvalidNameException
- Lisää tietokantaan tyhjän taulun.
- Parameters:
- name - nimi uudelle taululle.
- Throws: NameAlreadyExistsException
- jos samanniminen taulu on jo
olemassa
- Throws: InvalidNameException
- jos taulun nimi ei ole sallittu
modifyColumn
public abstract void modifyColumn(String tableName,
String column,
DDDataType dataType,
DDConstraintParameter constraint,
int modification) throws DatabaseException
- Muuttaa olemassolevan sarakkeen ominaisuuksia.
- Parameters:
- tableName - kohdetaulun nimi
- column - sarakkeen nimi
- dataType - sisältää sarakkeen muuttuvat tiedot
(= muut kuin nimi)
- constraint - sisältää muuttuvat rajoitteet
- modification -
Datadefinition.ADD
tai
Datadefinition.REMOVE
.
Jos REMOVE
niin
poistetaan kaikki kentät, joiden
arvo eroaa null
ista.
- Throws: DatabaseException
- jos muuttamisessa joku meni pieleen.
Mahdollisuuksia on monia.
modifyDomain
public abstract void modifyDomain(String domainName,
DDDataType baseType,
DDConstraintParameter constraint,
int modification) throws DatabaseException
- Muuttaa olemassaolevan arvojoukon ominaisuuksia.
- Parameters:
- domainName - arvojoukon nimi
- baseType - sisältää tyypin muuttuvat tiedot tai
null
jos tyyppiä ei muuteta
- constraint - sisältää muuttuvat rajoitteet tai
null
jos rajoiteita ei muuteta
- modification -
Datadefinition.ADD
tai
Datadefinition.REMOVE
- Throws: DatabaseException
- jos muuttamisessa joku meni pieleen.
Mahdollisuuksia on monia.
removeColumn
public abstract void removeColumn(String tableName,
String columnName) throws ObjectDoesntExistException, InvalidObjectException
- Poistaa sarakkeen taulusta.
- Parameters:
- tablename - kohdetaulun nimi
- columnname - poistettavan sarakkeen nimi
- Throws: ObjectDoesntExistException
- jos joko taulua tai saraketta ei
ole olemassa.
- Throws: InvalidObjectException
- jos parametereina muuten
vääränlaista tietoas
removeConstraint
public abstract void removeConstraint(String constraintName) throws DatabaseException
- Poistaa rajoitteen kaaviosta
- Parameters:
- constraintName - rajoitteen nimi
- Throws: DatabaseException
- jos rajoiteen poistaminen ei onnistu.
removeConstraint
public abstract void removeConstraint(String tableName,
DDConstraintParameter constraint) throws InvalidObjectException, ObjectDoesntExistException
- Poistaa rajoitteen taulusta
Viitteen poistossa constraintissa on oltava kohdetaulu sekä
lähtö- ja kohdesarakkeet.
Not Null rajoitteen poistossa constraintissa on oltava
sarakkeen nimi.
Primary key rajoitteen poistossa constraintin ei tarvitse
sisältää mitään
Unique key rajoitteen poistossa ????
- Parameters:
- tableName - taulun nimi, josta rajoite poistetaan
- constraint - poistettavan rajoitteen tiedot
- Throws: InvalidObjectException
- jos constraint on vääränlainen
- Throws: ObjectDoesntExistException
- jos jotain rajoitteeseen liittyvää
ei löytynyt.
removeDomain
public abstract void removeDomain(String domainName) throws DatabaseException
- Poistaa arvojoukon.
- Parameters:
- domainName - poistettavan arvojoukon nimi
- Throws: DatabaseException
- jos poistaminen ei onnistu
removeTable
public abstract void removeTable(String name) throws ObjectDoesntExistException, InvalidObjectException
- Poistaa taulun tietokannasta.
- Parameters:
- name - poistettavan taulun nimi
- Throws: ObjectDoesntExistException
- jos taulua ei ole olemassa
- Throws: InvalidObjectException
- jos parameterina vääränlaista
tietoa, esim. taulua ei voi
jostain syystä poistaa
renameTable
public abstract void renameTable(String oldName,
String newName) throws ObjectDoesntExistException, NameAlreadyExistsException, InvalidNameException
- Vaihtaa taulun nimeä.
- Parameters:
- oldName - vanha taulun nimi
- newName - uusi nimi
- Throws: ObjectDoesntExistException
- jos oldName nimistä taulua ei ole
olemassa
- Throws: NameAlreadyExistsException
- jos newName niminen taulu on jo
olemassa
- Throws: InvalidNameException
- jos newName ei kelpaa taulun
nimeksi
All Packages Class Hierarchy This Package Previous Next Index