String type = structure.get("type").getAsString(); if ("foreignKey".equals(type)) { DataStructureTableConstraintForeignKeyModel foreignKey = new DataStructureTableConstraintForeignKeyModel(); foreignKey.setName(structure.get("name").getAsString()); foreignKey.setColumns(structure.get("columns").getAsString().split(",")); foreignKey.setReferencedTable(structure.get("referencedTable").getAsString()); foreignKey.setReferencedColumns(structure.get("referencedColumns").getAsString().split(",")); String tableName = structure.get("table").getAsString(); for (DataStructureTableModel table : result.getTables()) { table.getConstraints().setForeignKeys(list.toArray(new DataStructureTableConstraintForeignKeyModel[]{})); DataStructureDependencyModel dependencyModel = new DataStructureDependencyModel(foreignKey.getReferencedTable(), "TABLE"); table.getDependencies().add(dependencyModel); break;
createTableBuilder.foreignKey(foreignKey.getName(), foreignKey.getColumns(), foreignKey.getReferencedTable(), foreignKey.getReferencedColumns());
sql = SqlFactory.getNative(connection).drop().constraint(foreignKeyModel.getName()).fromTable(tableModel.getName()).build(); executeUpdate(connection, sql);