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

Variable Index

 o ADD
 o REMOVE

Method Index

 o addColumn(String, String, DDDataType, DDConstraintParameter)
Lisää uuden sarakkeen olemassolevaan tauluun.
 o addConstraint(String, DDConstraintParameter)
Lisää rajoitteen tauluun.
 o addDomain(String, DDDataType, DDConstraintParameter)
Lisää uuden arvojoukon.
 o addDomainConstraint(String, DDConstraintParameter)
Lisää arvojoukkorajoitteen
 o addTable(String, DDTableParameter)
Lisää tietokantaan tyhjän taulun.
 o modifyColumn(String, String, DDDataType, DDConstraintParameter, int)
Muuttaa olemassolevan sarakkeen ominaisuuksia.
 o modifyDomain(String, DDDataType, DDConstraintParameter, int)
Muuttaa olemassaolevan arvojoukon ominaisuuksia.
 o removeColumn(String, String)
Poistaa sarakkeen taulusta.
 o removeConstraint(String)
Poistaa rajoitteen kaaviosta
 o removeConstraint(String, DDConstraintParameter)
Poistaa rajoitteen taulusta

Viitteen poistossa constraintissa on oltava kohdetaulu sekä lähtö- ja kohdesarakkeet.

 o removeDomain(String)
Poistaa arvojoukon.
 o removeTable(String)
Poistaa taulun tietokannasta.
 o renameTable(String, String)
Vaihtaa taulun nimeä.

Variables

 o ADD
 public static final int ADD
 o REMOVE
 public static final int REMOVE

Methods

 o 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
 o 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
 o 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
 o 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
 o 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
 o 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 nullista.
Throws: DatabaseException
jos muuttamisessa joku meni pieleen. Mahdollisuuksia on monia.
 o 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.
 o 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
 o removeConstraint
 public abstract void removeConstraint(String constraintName) throws DatabaseException
Poistaa rajoitteen kaaviosta

Parameters:
constraintName - rajoitteen nimi
Throws: DatabaseException
jos rajoiteen poistaminen ei onnistu.
 o 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.
 o removeDomain
 public abstract void removeDomain(String domainName) throws DatabaseException
Poistaa arvojoukon.

Parameters:
domainName - poistettavan arvojoukon nimi
Throws: DatabaseException
jos poistaminen ei onnistu
 o 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
 o 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