Examples of DBConstraint


Examples of com.dci.intellij.dbn.object.DBConstraint

    public DatasetFilterInput resolveForeignKeyRecord() {
        DBColumn column = getColumn();
        if (column != null) {
            for (DBConstraint constraint : column.getConstraints()) {
                if (constraint.isForeignKey()) {
                    DBConstraint foreignKeyConstraint = constraint.getForeignKeyConstraint();
                    if (foreignKeyConstraint != null) {
                        DBDataset foreignKeyDataset = foreignKeyConstraint.getDataset();
                        DatasetFilterInput filterInput = new DatasetFilterInput(foreignKeyDataset);

                        for (DBColumn constraintColumn : constraint.getColumns()) {
                            DBObject constraintCol = constraintColumn.getUndisposedElement();
                            if (constraintCol != null) {
View Full Code Here

Examples of com.dci.intellij.dbn.object.DBConstraint

        DBColumn column = cell.getColumnInfo().getColumn();
        if (column != null && column.isForeignKey()) {
            for (DBConstraint constraint : column.getConstraints()) {
                constraint = (DBConstraint) constraint.getUndisposedElement();
                if (constraint != null && constraint.isForeignKey()) {
                    DBConstraint foreignKeyConstraint = constraint.getForeignKeyConstraint();
                    if (foreignKeyConstraint != null) {
                        DBDataset foreignKeyDataset = foreignKeyConstraint.getDataset();
                        DatasetFilterInput filterInput = new DatasetFilterInput(foreignKeyDataset);

                        for (DBColumn constraintColumn : constraint.getColumns()) {
                            DBColumn foreignKeyColumn = ((DBColumn) constraintColumn.getUndisposedElement()).getForeignKeyColumn();
                            Object value = cell.getRow().getCellForColumn(constraintColumn).getUserValue();
View Full Code Here

Examples of com.dci.intellij.dbn.object.DBConstraint

    public DBColumn getForeignKeyColumn() {
        for (DBConstraint constraint : getConstraints()) {
            if (constraint.isForeignKey()) {
                Integer position = getConstraintPosition(constraint);
                DBConstraint foreignKeyConstraint = constraint.getForeignKeyConstraint();
                if (foreignKeyConstraint != null) {
                    return foreignKeyConstraint.getColumnForPosition(position);
                }
            }
        }
        return null;
    }
View Full Code Here

Examples of com.dci.intellij.dbn.object.DBConstraint

                properties.add(0, new SimplePresentableProperty("Check condition", checkCondition));
                properties.add(0, new SimplePresentableProperty("Constraint type", "Check"));
                break;
            case PRIMARY_KEY: properties.add(0, new SimplePresentableProperty("Constraint type", "Primary Key")); break;
            case FOREIGN_KEY:
                DBConstraint foreignKeyConstraint = getForeignKeyConstraint();
                properties.add(0, new DBObjectPresentableProperty(foreignKeyConstraint));
                properties.add(0, new SimplePresentableProperty("Constraint type", "Foreign Key"));
                break;
            case UNIQUE_KEY: properties.add(0, new SimplePresentableProperty("Constraint type", "Unique")); break;
        }
View Full Code Here

Examples of com.dci.intellij.dbn.object.DBConstraint

        if (columns != null) {
            objectNavigationLists.add(new DBObjectNavigationListImpl<DBColumn>("Columns", columns.getObjects()));
        }

        DBConstraint foreignKeyConstraint = getForeignKeyConstraint();
        if (foreignKeyConstraint != null) {
            objectNavigationLists.add(new DBObjectNavigationListImpl<DBConstraint>("Foreign key constraint", foreignKeyConstraint));
        }

        return objectNavigationLists;
View Full Code Here

Examples of com.dci.intellij.dbn.object.DBConstraint

                DBColumn column = (DBColumn) messageObject;
                DatasetEditorModelCell cell = getCellForColumn(column);
                boolean isErrorNew = cell.notifyError(error, true);
                if (isErrorNew && startEditing) cell.edit();
            } else if (messageObject instanceof DBConstraint) {
                DBConstraint constraint = (DBConstraint) messageObject;
                DatasetEditorModelCell firstCell = null;
                boolean isErrorNew = false;
                for (DBColumn column : constraint.getColumns()) {
                    DatasetEditorModelCell cell = getCellForColumn(column);
                    isErrorNew = cell.notifyError(error, false);
                    if (firstCell == null) firstCell = cell;
                }
                if (isErrorNew && showPopup) {
View Full Code Here

Examples of org.databene.jdbacl.model.DBConstraint

    while (subChangeIterator.hasNext()) {
      StructuralChange<? extends DBObject> change = subChangeIterator.next();
      if (change instanceof ConstraintDeletion) {
        // check all dropped constraints of the table if there is one created with the same name
        ConstraintDeletion<?> deletion = (ConstraintDeletion<?>) change;
        DBConstraint constraint1 = deletion.getAffectedObject();
        ConstraintCreation<?> creation = tableChange.getSubChange(ConstraintCreation.class, constraint1.getName());
        if (creation != null && deletion.getAffectedObject().getClass().equals(creation.getAffectedObject().getClass())) {
          // So there are two constraint of same name and type
          // and the TableComparator already has sieved out cases with pure column reordering
          String[] colNames1 = constraint1.getColumnNames();
          DBConstraint constraint2 = creation.getAffectedObject();
          String[] colNames2 = constraint2.getColumnNames();
          if (ArrayUtil.containsAll(colNames2, colNames1)) {
            // columns were removed from the constraint
            String[] removedColumns = diff(colNames1, colNames2);
            changesToAdd.add(new ConstraintColumnsRemoval(constraint1, removedColumns));
            creationsToRemove.add(creation);
View Full Code Here

Examples of org.databene.jdbacl.model.DBConstraint

 
  public void process(SchemaChange schemaChange) {
    // check all new and modified constraints...
    Filter<StructuralChange<?>> filter = new ConstraintOperationFilter();
    for (StructuralChange<?> constraintOperation : schemaChange.getSubChanges(filter)) {
      DBConstraint constraint = (DBConstraint) constraintOperation.getAffectedObject();
      String[] columns = (constraintOperation instanceof CheckConstraintChange ? ((CheckConstraintChange) constraintOperation).getNewCheck().getColumnNames() : constraint.getColumnNames());
      String tableName = constraint.getTable().getName();
      TableChange tableChange = schemaChange.getSubChange(TableChange.class, tableName);
      boolean containsNewColumn = false;
      boolean containsNewMandatoryColumn = false;
      for (ColumnCreation columnCreation : tableChange.getSubChanges(ColumnCreation.class)) {
        boolean newColumn = ArrayUtil.contains(columnCreation.getAffectedObject().getName(), columns);
View Full Code Here

Examples of org.databene.jdbacl.model.DBConstraint

    while (subChangeIterator.hasNext()) {
      StructuralChange<? extends DBObject> change = subChangeIterator.next();
      if (change instanceof ConstraintCreation) {
        // check through all constraints of the table...
        ConstraintCreation<?> constraintCreation = (ConstraintCreation<?>) change;
        DBConstraint constraint = constraintCreation.getAffectedObject();
        String[] columnNames = constraint.getColumnNames();
        if (columnNames.length == 1) {
          ColumnCreation columnCreation = tableChange.getSubChange(ColumnCreation.class, columnNames[0]);
          if (columnCreation != null) {
            // ...and if a constraint relates to a single column which is new, then make it a subChange of that column
            columnCreation.addConstraintCreation(constraintCreation);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.