|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.rdtdm.db.DBFeeder
DBFeeder
kapselt den Zugriff auf die Datenbank. Zur Zeit
werden mySQL und oracle unterst?tzt.
Changelog:$Log: DBFeeder.java,v $ Revision 1.5 2001/11/04 17:31:56 dirk removing methodes for postselection of tables Revision 1.4 2001/11/04 17:25:26 dirk adding methodes for preselection rules of tables Revision 1.3 2001/09/26 11:43:11 dirk update javadoc comment for the class |
Nested Class Summary | |
private class |
DBFeeder.MyRef
|
Field Summary | |
private java.sql.Connection |
con
|
private java.sql.DatabaseMetaData |
dbmd
|
private java.lang.String |
driver
|
private java.util.Properties |
driverProps
|
(package private) java.util.Collection |
foreignkeys
|
(package private) java.util.Hashtable |
primarykeys
|
private java.util.Properties |
props
|
private java.util.Collection |
selections
|
private java.sql.Statement |
st
|
private boolean |
supportsCatalogRefs
|
private boolean |
supportsSchemaRefs
|
(package private) java.util.ArrayList |
tables
Beinhaltet alle Tabellen der Datenbank |
private java.lang.String |
url
|
(package private) java.util.ArrayList |
views
Beinhaltet alle View der Datenbank, die w?hrend der Bearbeitung erzeugt wurden. |
Constructor Summary | |
DBFeeder()
|
|
DBFeeder(java.lang.String driver,
java.lang.String url,
java.util.Properties props)
|
|
DBFeeder(java.lang.String driver,
java.lang.String url,
java.lang.String account,
java.lang.String pwd)
|
Method Summary | |
protected void |
addForeignKey(Table tab,
java.lang.String keyname,
java.lang.String colname,
java.lang.String keyseq)
|
protected void |
addForeignKey(Table tab,
java.lang.String fkname,
java.lang.String fkcolname,
java.lang.String keyseq,
java.lang.String pkcat,
java.lang.String pkschem,
java.lang.String pktabname)
|
protected void |
addPrimaryKey(Table tab,
java.lang.String keyname,
java.lang.String colname,
java.lang.String keyseq)
|
void |
addSelection(DBRule rule)
|
void |
close()
|
void |
connect()
Baut eine Verbindung zur Datenbank auf. |
Table |
createTableWithNegColname(Table tab)
|
boolean |
createView(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewname,
java.lang.String select)
|
void |
disconnect()
Schlie?t eine bestehende Verbindung. |
protected void |
dropAllViews(java.lang.String views)
|
void |
dropAllViews(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewprefix)
|
void |
dropRDTViews()
|
void |
dropRDTViews(java.lang.String catalog,
java.lang.String schema)
|
void |
dropView(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewname)
|
void |
dropViews()
|
void |
dropViews(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewprefix)
|
java.util.Properties |
execSingleLineQuery(java.lang.String sql)
|
java.sql.ResultSet |
executeQuery(java.lang.String sql)
|
protected boolean |
existsInDB(java.lang.String catalog,
java.lang.String schema,
java.lang.String name,
java.lang.String type)
|
protected boolean |
existsTable(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewname)
|
protected boolean |
existsView(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewname)
|
protected java.sql.ResultSet |
getCatalogs()
|
private java.sql.ResultSet |
getCatalogsPostgreSQL()
|
protected PrimaryKey |
getPrimaryKey(Table tab)
F?gt einen Fremdschl?ssel in die Datenstruktur ein. |
java.util.Properties |
getProps()
|
java.util.ArrayList |
getSelectedTables()
Liefert alle selektierten Tabellen (postselction) zur?ck, die f?r das Mapping ausgew?hlt wurden. |
protected Table |
getTable(java.lang.String pkcat,
java.lang.String pkschem,
java.lang.String pktabname)
|
java.util.ArrayList |
getTables()
Liefert alle Tabellen zur?ck, die f?r das Mapping ausgew?hlt wurden. |
protected java.util.Collection |
getTypes()
|
java.lang.Object[] |
getValues(Table tab,
Column col)
|
java.util.Collection |
getValuesAsCol(Table tab,
Column col)
F?gt eine Selektion (preselection) bzw. eine Selektionregel hinzu. |
Table |
getView(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewname)
|
java.lang.String |
getViews(java.lang.String catalog,
java.lang.String schema,
java.lang.String startswith)
|
void |
init()
|
boolean |
isSelected(java.lang.String catalog,
java.lang.String schema,
java.lang.String table)
|
static void |
main(java.lang.String[] args)
Testumgebung |
void |
printDriverProperties()
|
void |
printDriverProps()
|
void |
printForeignKeys()
|
void |
printMetaData()
|
void |
printPrimaryKeys()
|
private void |
printResults(java.sql.ResultSet rs)
|
private void |
printResultsForTag(java.sql.ResultSet rs,
java.lang.String tag)
|
void |
printSelectedTables()
|
void |
printSelections(java.lang.String header)
|
void |
printTables()
|
protected void |
readCatalogs()
Liest die Kataloge (Datenbanken) incl. aller Schemate, Tabellen und Spalten, unter Ber?cksichtigung der Selektionsregeln (preselection), ein. |
protected void |
readColumns(Table tab)
|
protected void |
readDriverProperties()
|
protected void |
readFKs(Table tab)
|
protected void |
readFKs(Table tab,
boolean addpkdirect)
|
protected void |
readIndexes(Table tab)
|
protected void |
readPKs(Table tab)
|
protected void |
readSchemas(java.lang.String catalog)
Liest die Schemata incl. aller Tabellen und Spalten, unter Ber?cksichtigung der Selektionsregeln (preselection), ein. |
void |
readStructure()
Liest die Datenbankstruktur ein. |
protected void |
readTable(java.lang.String catalog,
java.lang.String schema,
java.lang.String name)
|
protected void |
readTablePrivileges(Table tab)
|
protected void |
readTables(java.lang.String catalog,
java.lang.String schema)
Liest die Tabellen incl. |
protected void |
readView(java.lang.String catalog,
java.lang.String schema,
java.lang.String viewname)
Liest einen View incl. |
void |
reconnect()
Baut die Verbindung zur Datenbank wieder auf, wenn diese unterbrochen wurde. |
void |
selectTables()
Selektion alle erfassten Tabellen (postselection). |
void |
selectTables(boolean select)
Setzen bzw. l?schen einer Selektion auf alle erfassten Tabellen (postselection). |
void |
selectTables(java.lang.String catalog,
java.lang.String schema,
boolean select)
Setzen bzw. l?schen einer Selektion auf den erfassten Tabellen (postselection). |
void |
setDriver(java.lang.String driver)
|
void |
setNonKeysToNull(Table tab)
|
void |
setNonKeysToValue(Table tab,
java.lang.String value,
java.lang.String sql)
|
void |
setProps(java.util.Properties _props)
|
void |
setToNull(Table tab,
Column col)
|
void |
setToValue(Table tab,
Column col,
java.lang.String value,
java.lang.String sql)
|
void |
setUrl(java.lang.String _url)
|
boolean |
supportsCatalogRefs()
|
boolean |
supportsSchemaRefs()
|
void |
unselectTables()
L?scht die Selektion auf alle erfassten Tabellen (postselection). |
protected void |
updateFKs()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private java.lang.String driver
private java.lang.String url
private java.util.Properties props
private java.util.Properties driverProps
private java.sql.Connection con
private java.sql.DatabaseMetaData dbmd
private java.sql.Statement st
private java.util.Collection selections
java.util.ArrayList tables
java.util.ArrayList views
java.util.Hashtable primarykeys
java.util.Collection foreignkeys
private boolean supportsCatalogRefs
private boolean supportsSchemaRefs
Constructor Detail |
public DBFeeder() throws java.lang.ClassNotFoundException
public DBFeeder(java.lang.String driver, java.lang.String url, java.lang.String account, java.lang.String pwd)
public DBFeeder(java.lang.String driver, java.lang.String url, java.util.Properties props)
Method Detail |
public void init() throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
public void setUrl(java.lang.String _url)
public void setDriver(java.lang.String driver)
public java.util.Properties getProps()
public void setProps(java.util.Properties _props)
public void connect() throws java.sql.SQLException
java.sql.SQLException
- SQL-Fehlermeldungen (Serverprobleme etc.)public void reconnect() throws java.sql.SQLException
SQLException
- SQL-Fehlermeldungen (Serverprobleme etc.)
java.sql.SQLException
public void close() throws java.sql.SQLException
java.sql.SQLException
public void disconnect() throws java.sql.SQLException
SQLException
- SQL
Fehlermeldung der Datenbank
java.sql.SQLException
public void setNonKeysToNull(Table tab) throws java.sql.SQLException
java.sql.SQLException
public void setToNull(Table tab, Column col) throws java.sql.SQLException
java.sql.SQLException
public void setNonKeysToValue(Table tab, java.lang.String value, java.lang.String sql) throws java.sql.SQLException
java.sql.SQLException
public void setToValue(Table tab, Column col, java.lang.String value, java.lang.String sql) throws java.sql.SQLException
java.sql.SQLException
public Table createTableWithNegColname(Table tab) throws java.sql.SQLException
java.sql.SQLException
public boolean createView(java.lang.String catalog, java.lang.String schema, java.lang.String viewname, java.lang.String select) throws java.sql.SQLException
java.sql.SQLException
protected boolean existsView(java.lang.String catalog, java.lang.String schema, java.lang.String viewname)
protected boolean existsTable(java.lang.String catalog, java.lang.String schema, java.lang.String viewname)
protected boolean existsInDB(java.lang.String catalog, java.lang.String schema, java.lang.String name, java.lang.String type)
public java.sql.ResultSet executeQuery(java.lang.String sql) throws java.sql.SQLException
java.sql.SQLException
public java.util.Properties execSingleLineQuery(java.lang.String sql) throws java.sql.SQLException
java.sql.SQLException
public java.lang.String getViews(java.lang.String catalog, java.lang.String schema, java.lang.String startswith) throws java.sql.SQLException
java.sql.SQLException
public Table getView(java.lang.String catalog, java.lang.String schema, java.lang.String viewname)
public void dropViews() throws java.sql.SQLException
java.sql.SQLException
public void dropRDTViews() throws java.sql.SQLException
java.sql.SQLException
public void dropRDTViews(java.lang.String catalog, java.lang.String schema) throws java.sql.SQLException
java.sql.SQLException
public void dropViews(java.lang.String catalog, java.lang.String schema, java.lang.String viewprefix) throws java.sql.SQLException
java.sql.SQLException
public void dropAllViews(java.lang.String catalog, java.lang.String schema, java.lang.String viewprefix) throws java.sql.SQLException
java.sql.SQLException
protected void dropAllViews(java.lang.String views) throws java.sql.SQLException
java.sql.SQLException
public void dropView(java.lang.String catalog, java.lang.String schema, java.lang.String viewname) throws java.sql.SQLException
java.sql.SQLException
public boolean supportsCatalogRefs() throws java.sql.SQLException
java.sql.SQLException
public boolean supportsSchemaRefs() throws java.sql.SQLException
java.sql.SQLException
public void readStructure() throws java.sql.SQLException
SQLException
- der Datenbank werden zur?ck geliefert.
java.sql.SQLException
readCatalogs()
protected void readCatalogs() throws java.sql.SQLException
SQLException
- der Datenbank werden zur?ck geliefert.
java.sql.SQLException
readSchemas(java.lang.String)
protected java.sql.ResultSet getCatalogs() throws java.sql.SQLException
java.sql.SQLException
private java.sql.ResultSet getCatalogsPostgreSQL() throws java.sql.SQLException
java.sql.SQLException
protected void readSchemas(java.lang.String catalog) throws java.sql.SQLException
catalog
- String
mit dem Namen des Katalogs, ggf.
null
, wenn keine Kataloge definiert sind.
SQLException
- der Datenbank werden zur?ck geliefert.
java.sql.SQLException
readTables(java.lang.String, java.lang.String)
protected void readTables(java.lang.String catalog, java.lang.String schema) throws java.sql.SQLException
catalog
- String
mit dem Namen des Katalogs, ggf.
null
, wenn keine Kataloge definiert sind.schema
- String
mit dem Namen des Schemata, ggf.
null
, wenn keine Schemata definiert sind.
SQLException
- der Datenbank werden zur?ck geliefert.
java.sql.SQLException
readTablePrivileges(org.rdtdm.db.Table)
,
readPKs(org.rdtdm.db.Table)
,
readFKs(org.rdtdm.db.Table)
,
#readColumn
protected void readTable(java.lang.String catalog, java.lang.String schema, java.lang.String name) throws java.sql.SQLException
java.sql.SQLException
protected void readView(java.lang.String catalog, java.lang.String schema, java.lang.String viewname) throws java.sql.SQLException
catalog
- String
mit dem Namen des Katalogs, ggf.
null
, wenn keine Kataloge definiert sind.schema
- String
mit dem Namen des Schemata, ggf.
null
, wenn keine Schemata definiert sind.viewname
- String
mit dem Namen des View. Unbedingt erforderlich!
SQLException
- der Datenbank werden zur?ck geliefert.
java.sql.SQLException
readTablePrivileges(org.rdtdm.db.Table)
,
readPKs(org.rdtdm.db.Table)
,
readFKs(org.rdtdm.db.Table)
,
#readColumn
protected void readTablePrivileges(Table tab) throws java.sql.SQLException
java.sql.SQLException
protected void readColumns(Table tab) throws java.sql.SQLException
java.sql.SQLException
protected void readPKs(Table tab) throws java.sql.SQLException
java.sql.SQLException
protected void addPrimaryKey(Table tab, java.lang.String keyname, java.lang.String colname, java.lang.String keyseq)
protected void readFKs(Table tab) throws java.sql.SQLException
java.sql.SQLException
protected void readFKs(Table tab, boolean addpkdirect) throws java.sql.SQLException
java.sql.SQLException
protected void addForeignKey(Table tab, java.lang.String fkname, java.lang.String fkcolname, java.lang.String keyseq, java.lang.String pkcat, java.lang.String pkschem, java.lang.String pktabname)
protected void addForeignKey(Table tab, java.lang.String keyname, java.lang.String colname, java.lang.String keyseq)
protected void updateFKs() throws java.sql.SQLException
java.sql.SQLException
protected PrimaryKey getPrimaryKey(Table tab)
SQLException
- Probleme mit dem Datenbankzugriffprotected Table getTable(java.lang.String pkcat, java.lang.String pkschem, java.lang.String pktabname)
protected void readIndexes(Table tab) throws java.sql.SQLException
java.sql.SQLException
protected java.util.Collection getTypes() throws java.sql.SQLException
java.sql.SQLException
public java.util.ArrayList getSelectedTables()
Table
.getTables()
public java.util.ArrayList getTables()
Table
.public void unselectTables()
public void selectTables()
public void selectTables(boolean select)
select
- true
, selektiert alle erfassten Tabellen,
false
l?scht die Selektion.public void selectTables(java.lang.String catalog, java.lang.String schema, boolean select)
catalog
- String
zur Beschreibung des Katalogs bzw. der Datenbank.schema
- String
zur Beschreibung des Schemas.select
- true
, selektiert auf den erfassten Tabellen,
false
l?scht die Selektion.public void addSelection(DBRule rule)
public boolean isSelected(java.lang.String catalog, java.lang.String schema, java.lang.String table)
public void printSelections(java.lang.String header)
public java.util.Collection getValuesAsCol(Table tab, Column col) throws java.sql.SQLException
Beispiele: Mit Catalog=Mytest werden alle Tabellen des Katalogs Mytest selektiert. Mit Catalog=Mytest und Table=tab1 wird nur die Tabelle Mytest.tab1 selektiert. ... |
java.sql.SQLException
public java.lang.Object[] getValues(Table tab, Column col) throws java.sql.SQLException
java.sql.SQLException
private void printResults(java.sql.ResultSet rs) throws java.sql.SQLException
java.sql.SQLException
private void printResultsForTag(java.sql.ResultSet rs, java.lang.String tag) throws java.sql.SQLException
java.sql.SQLException
public void printForeignKeys()
public void printPrimaryKeys()
public void printTables()
public void printSelectedTables()
public void printMetaData() throws java.sql.SQLException
java.sql.SQLException
public void printDriverProperties() throws java.sql.SQLException
java.sql.SQLException
public void printDriverProps()
protected void readDriverProperties() throws java.sql.SQLException
java.sql.SQLException
public static void main(java.lang.String[] args)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |