|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectorg.h2.engine.DbObjectBase
org.h2.schema.SchemaObjectBase
org.h2.constraint.Constraint
org.h2.constraint.ConstraintUnique
public class ConstraintUnique
A unique constraint. This object always backed by a unique index.
| Field Summary |
|---|
| Fields inherited from class org.h2.constraint.Constraint |
|---|
CHECK, PRIMARY_KEY, REFERENTIAL, table, UNIQUE |
| Fields inherited from class org.h2.engine.DbObjectBase |
|---|
comment, database, trace |
| Fields inherited from interface org.h2.engine.DbObject |
|---|
AGGREGATE, COMMENT, CONSTANT, CONSTRAINT, FUNCTION_ALIAS, INDEX, RIGHT, ROLE, SCHEMA, SEQUENCE, SETTING, TABLE_OR_VIEW, TRIGGER, USER, USER_DATATYPE |
| Constructor Summary | |
|---|---|
ConstraintUnique(Schema schema,
int id,
java.lang.String name,
Table table,
boolean primaryKey)
|
|
| Method Summary | |
|---|---|
void |
checkExistingData(Session session)
Check the existing data. |
void |
checkRow(Session session,
Table t,
Row oldRow,
Row newRow)
Check if this row fulfils the constraint. |
IndexColumn[] |
getColumns()
|
java.lang.String |
getConstraintType()
The constraint type name |
java.lang.String |
getCreateSQL()
Build a SQL statement to re-create this object. |
java.lang.String |
getCreateSQLForCopy(Table forTable,
java.lang.String quotedName)
Build a SQL statement to re-create the object, or to create a copy of the object with a different name or referencing a different table |
java.lang.String |
getCreateSQLWithoutIndexes()
Get the SQL statement to create this constraint. |
java.util.HashSet<Column> |
getReferencedColumns(Table table)
Get all referenced columns. |
Index |
getUniqueIndex()
Get the unique index used to enforce this constraint, or null if no index is used. |
boolean |
isBefore()
Check if this constraint needs to be checked before updating the data. |
void |
rebuild()
This method is called after a related table has changed (the table was renamed, or columns have been renamed). |
void |
removeChildrenAndResources(Session session)
Remove all dependent objects and free all resources (files, blocks in files) of this object. |
void |
setColumns(IndexColumn[] columns)
|
void |
setIndex(Index index,
boolean isOwner)
Set the index to use for this unique constraint. |
void |
setIndexOwner(Index index)
This index is now the owner of the specified index. |
boolean |
usesIndex(Index idx)
Check if this constraint needs the specified index. |
| Methods inherited from class org.h2.constraint.Constraint |
|---|
checkRename, compareTo, getDropSQL, getRefTable, getTable, getType, isEverything, isHidden |
| Methods inherited from class org.h2.schema.SchemaObjectBase |
|---|
getSchema, getSQL, initSchemaObjectBase |
| Methods inherited from class org.h2.engine.DbObjectBase |
|---|
getChildren, getComment, getDatabase, getId, getModificationId, getName, initDbObjectBase, invalidate, isTemporary, rename, setComment, setModified, setObjectName, setTemporary, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.h2.engine.DbObject |
|---|
getChildren, getComment, getDatabase, getId, getName, isTemporary, rename, setComment, setTemporary |
| Constructor Detail |
|---|
public ConstraintUnique(Schema schema,
int id,
java.lang.String name,
Table table,
boolean primaryKey)
| Method Detail |
|---|
public java.lang.String getConstraintType()
Constraint
getConstraintType in class Constraint
public java.lang.String getCreateSQLForCopy(Table forTable,
java.lang.String quotedName)
DbObject
forTable - the new tablequotedName - the quoted name
public java.lang.String getCreateSQLWithoutIndexes()
Constraint
getCreateSQLWithoutIndexes in class Constraintpublic java.lang.String getCreateSQL()
DbObjectBase
getCreateSQL in interface DbObjectgetCreateSQL in class DbObjectBasepublic void setColumns(IndexColumn[] columns)
public IndexColumn[] getColumns()
public void setIndex(Index index,
boolean isOwner)
index - the indexisOwner - true if the index is generated by the system and belongs
to this constraintpublic void removeChildrenAndResources(Session session)
DbObjectBase
removeChildrenAndResources in interface DbObjectremoveChildrenAndResources in class DbObjectBasesession - the session
public void checkRow(Session session,
Table t,
Row oldRow,
Row newRow)
Constraint
checkRow in class Constraintsession - the sessiont - the tableoldRow - the old rownewRow - the new rowpublic boolean usesIndex(Index idx)
Constraint
usesIndex in class Constraintidx - the index
public void setIndexOwner(Index index)
Constraint
setIndexOwner in class Constraintindex - the indexpublic java.util.HashSet<Column> getReferencedColumns(Table table)
Constraint
getReferencedColumns in class Constrainttable - the table
public boolean isBefore()
Constraint
isBefore in class Constraintpublic void checkExistingData(Session session)
Constraint
checkExistingData in class Constraintsession - the sessionpublic Index getUniqueIndex()
Constraint
getUniqueIndex in class Constraintpublic void rebuild()
Constraint
rebuild in class Constraint
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||