Package org.eclipse.net4j.db.ddl

# Interface IDBTable

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

All Known Subinterfaces:
  `InternalDBTable`

public interface IDBTable extends IDBSchemaElement
A table specification in a `DB schema`.

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>, org.eclipse.net4j.util.container.IContainer.Persistable<E>, org.eclipse.net4j.util.container.IContainer.Persistence<E>`

## 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
`IDBField`
`addField(String name, DBType type)`
`IDBField`
`addField(String name, DBType type, boolean notNull)`
`IDBField`
`addField(String name, DBType type, int precision)`
`IDBField`
`addField(String name, DBType type, int precision, boolean notNull)`
`IDBField`
`addField(String name, DBType type, int precision, int scale)`
`IDBField`
`addField(String name, DBType type, int precision, int scale, boolean notNull)`
`IDBIndex`
`addIndex(String name, IDBIndex.Type type, String... fieldNames)`
`IDBIndex`
`addIndex(String name, IDBIndex.Type type, IDBField... fields)`
`IDBIndex`
`addIndex(IDBIndex.Type type, String... fieldNames)`
`IDBIndex`
`addIndex(IDBIndex.Type type, IDBField... fields)`
`IDBIndex`
`addIndexEmpty(String name, IDBIndex.Type type)`
`IDBIndex`
`addIndexEmpty(IDBIndex.Type type)`
`IDBField`
`getField(int position)`
`IDBField`
`getField(String name)`
`int`
`getFieldCount()`
`IDBField[]`
`getFields()`
`IDBField[]`
`getFields(String... fieldNames)`
`IDBField`
`getFieldSafe(String name)`
`IDBIndex`
`getIndex(int position)`
`IDBIndex`
`getIndex(String name)`
`int`
`getIndexCount()`
`IDBIndex`
`getIndexSafe(String name)`
`IDBIndex[]`
`getIndices()`
`IDBSchema`
`getParent()`
`IDBIndex`
`getPrimaryKeyIndex()`
`boolean`
`hasIndexFor(IDBField... fields)`
`String`
`sqlInsert()`

### 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, getSchema, getSchemaElementType, remove, setName`

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

`addListener, getListeners, hasListeners, removeListener`

## Method Details

### getParent

IDBSchema getParent()

Specified by:
  `getParent` in interface `IDBElement`
Specified by:
  `getParent` in interface `IDBSchemaElement`
Since:
  4.2

### addField

IDBField addField(String name, DBType type)

### addField

IDBField addField(String name, DBType type, boolean notNull)

### addField

IDBField addField(String name, DBType type, int precision)

### addField

IDBField addField(String name, DBType type, int precision, boolean notNull)

### addField

IDBField addField(String name, DBType type, int precision, int scale)

### addField

IDBField addField(String name, DBType type, int precision, int scale, boolean notNull)

### getFieldSafe

IDBField getFieldSafe(String name) throws SchemaElementNotFoundException

Throws:
  `SchemaElementNotFoundException`
Since:
  4.2

### getField

IDBField getField(String name)

### getField

IDBField getField(int position)

### getFieldCount

int getFieldCount()

### getFields

IDBField[] getFields()

### getFields

IDBField[] getFields(String... fieldNames) throws SchemaElementNotFoundException

Throws:
  `SchemaElementNotFoundException`
Since:
  4.2

### hasIndexFor

boolean hasIndexFor(IDBField... fields)

Since:
  4.5

### addIndex

IDBIndex addIndex(String name, IDBIndex.Type type, IDBField... fields)

Since:
  4.2

### addIndex

IDBIndex addIndex(String name, IDBIndex.Type type, String... fieldNames) throws SchemaElementNotFoundException

Throws:
  `SchemaElementNotFoundException`
Since:
  4.2

### addIndexEmpty

IDBIndex addIndexEmpty(String name, IDBIndex.Type type)

Since:
  4.2

### addIndex

IDBIndex addIndex(IDBIndex.Type type, IDBField... fields)

### addIndex

IDBIndex addIndex(IDBIndex.Type type, String... fieldNames) throws SchemaElementNotFoundException

Throws:
  `SchemaElementNotFoundException`
Since:
  4.2

### addIndexEmpty

IDBIndex addIndexEmpty(IDBIndex.Type type)

Since:
  4.2

### getIndexSafe

IDBIndex getIndexSafe(String name) throws SchemaElementNotFoundException

Throws:
  `SchemaElementNotFoundException`
Since:
  4.2

### getIndex

IDBIndex getIndex(String name)

Since:
  4.2

### getIndex

IDBIndex getIndex(int position)

Since:
  4.2

### getIndexCount

int getIndexCount()

### getIndices

IDBIndex[] getIndices()

### getPrimaryKeyIndex

IDBIndex getPrimaryKeyIndex()

### sqlInsert

String sqlInsert()