Package org.eclipse.net4j.db.ddl

# Interface IDBSchema

All Superinterfaces:
  `Comparable<IDBSchemaElement>`, `org.eclipse.net4j.util.container.IContainer<IDBSchemaElement>`, `IDBElement`, `IDBNamedElement`, `IDBSchemaElement`, `org.eclipse.net4j.util.event.INotifier`

All Known Subinterfaces:
  `InternalDBSchema`

All Known Implementing Classes:
  `org.eclipse.net4j.internal.db.ddl.DBSchema`, `DBSchema`

public interface IDBSchema extends IDBSchemaElement
Specifies a number of `DB tables` that can be created in or dropped from a database through a `DB adapter`.

Author:
  Eike Stepper
No Implement
  This interface is not intended to be implemented by clients.
No Extend
  This interface is not intended to be extended by clients.

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer

`org.eclipse.net4j.util.container.IContainer.Modifiable<E extends Object>, org.eclipse.net4j.util.container.IContainer.Persistable<E extends Object>, org.eclipse.net4j.util.container.IContainer.Persistence<E extends Object>`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.db.ddl.IDBSchemaElement

`IDBSchemaElement.SchemaElementType`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier

`org.eclipse.net4j.util.event.INotifier.INotifier2`

## Method Summary

Modifier and Type
Method
Description
`IDBTable`
`addTable(String name)`
`IDBSchemaDelta`
`compare(IDBSchema oldSchema)`
`Set<IDBTable>`
`create(IDBAdapter dbAdapter, Connection connection)`
`Set<IDBTable>`
`create(IDBAdapter dbAdapter, DataSource dataSource)`
`Set<IDBTable>`
`create(IDBAdapter dbAdapter, IDBConnectionProvider connectionProvider)`
`void`
`drop(IDBAdapter dbAdapter, Connection connection)`
`void`
`drop(IDBAdapter dbAdapter, DataSource dataSource)`
`void`
`drop(IDBAdapter dbAdapter, IDBConnectionProvider connectionProvider)`
`void`
`export(Connection connection, PrintStream out)`
`void`
`export(DataSource dataSource, PrintStream out)`
`void`
`export(IDBConnectionProvider connectionProvider, PrintStream out)`
`<T extends IDBSchemaElement>
T`
`findElement(IDBSchemaElement prototype)`
`IDBTable`
`getTable(String name)`
`IDBTable[]`
`getTables()`
`IDBTable`
`getTableSafe(String name)`
`boolean`
`isCaseSensitive()`
`boolean`
`isLocked()`
`boolean`
`isQualifiedTableNames()`
`IDBTable`
`removeTable(String name)`

### Methods inherited from interface java.lang.Comparable

`compareTo`

### Methods inherited from interface org.eclipse.net4j.util.container.IContainer

`getElements, isEmpty`

### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBElement

`getProperties`

### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBNamedElement

`getName`

### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBSchemaElement

`accept, getElement, getFullName, getParent, getSchema, getSchemaElementType, remove, setName`

### Methods inherited from interface org.eclipse.net4j.util.event.INotifier

`addListener, getListeners, hasListeners, removeListener`

## Method Details

### isLocked

boolean isLocked()

Since:
  4.2

### isCaseSensitive

boolean isCaseSensitive()

Since:
  4.12

### isQualifiedTableNames

boolean isQualifiedTableNames()

Since:
  4.12

### findElement

<T extends IDBSchemaElement> T findElement(IDBSchemaElement prototype)

Since:
  4.2

### addTable

IDBTable addTable(String name) throws DBException

Throws:
  `DBException`

### removeTable

IDBTable removeTable(String name) throws DBException

Throws:
  `DBException`
Since:
  4.0

### getTableSafe

IDBTable getTableSafe(String name) throws SchemaElementNotFoundException

Throws:
  `SchemaElementNotFoundException`
Since:
  4.2

### getTable

IDBTable getTable(String name)

### getTables

IDBTable[] getTables()

### create

Set<IDBTable> create(IDBAdapter dbAdapter, Connection connection) throws DBException

Throws:
  `DBException`

### create

Set<IDBTable> create(IDBAdapter dbAdapter, DataSource dataSource) throws DBException

Throws:
  `DBException`

### create

Set<IDBTable> create(IDBAdapter dbAdapter, IDBConnectionProvider connectionProvider) throws DBException

Throws:
  `DBException`

### drop

void drop(IDBAdapter dbAdapter, Connection connection) throws DBException

Throws:
  `DBException`

### drop

void drop(IDBAdapter dbAdapter, DataSource dataSource) throws DBException

Throws:
  `DBException`

### drop

void drop(IDBAdapter dbAdapter, IDBConnectionProvider connectionProvider) throws DBException

Throws:
  `DBException`

### export

void export(Connection connection, PrintStream out) throws DBException

Throws:
  `DBException`

### export

void export(DataSource dataSource, PrintStream out) throws DBException

Throws:
  `DBException`

### export

void export(IDBConnectionProvider connectionProvider, PrintStream out) throws DBException

Throws:
  `DBException`

### compare

IDBSchemaDelta compare(IDBSchema oldSchema)

Since:
  4.2