Skip to content

Commit

Permalink
Merge branch 'whereParams' of https://github.com/vorbis/liquibase int…
Browse files Browse the repository at this point in the history
…o vorbis-whereParams

Conflicts:
	liquibase-core/src/main/java/liquibase/change/core/DeleteDataChange.java
	liquibase-core/src/main/java/liquibase/change/core/UpdateDataChange.java
	liquibase-core/src/main/java/liquibase/sqlgenerator/core/DeleteGenerator.java
  • Loading branch information
nvoxland committed Mar 5, 2013
1 parent d161f16 commit e445123
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 10 deletions.
Expand Up @@ -48,6 +48,7 @@ public void setTableName(String tableName) {
this.tableName = tableName;
}

@DatabaseChangeProperty(serializationType = SerializationType.NESTED_OBJECT)
public String getWhereClause() {
return whereClause;
}
Expand Down
Expand Up @@ -12,7 +12,27 @@
@DatabaseChange(name = "update", description = "Updates data in an existing table", priority = ChangeMetaData.PRIORITY_DEFAULT, appliesTo = "table")
public class UpdateDataChange extends AbstractModifyDataChange implements ChangeWithColumns<ColumnConfig> {

private List<ColumnConfig> columns;

public UpdateDataChange() {
columns = new ArrayList<ColumnConfig>();
}

@DatabaseChangeProperty(requiredForDatabase = "all", description = "Data to update")
public List<ColumnConfig> getColumn() {
return columns;
}

public void setColumn(List<ColumnConfig> columns) {
this.columns = columns;
}

public void addColumn(ColumnConfig column) {
columns.add(column);
}

public void removeColumn(ColumnConfig column) {
columns.remove(column);
}

public SqlStatement[] generateStatements(Database database) {
Expand Down
Expand Up @@ -38,7 +38,7 @@ public Sql[] generateSql(DeleteStatement statement, Database database, SqlGenera
database.escapeObjectName(columnName, Column.class));
}
for (Object param : statement.getWhereParameters()) {
fixedWhereClause = fixedWhereClause.replaceFirst("\\?|:value", Pattern.quote(DataTypeFactory.getInstance().fromObject(param, database).objectToSql(param, database)));
fixedWhereClause = fixedWhereClause.replaceFirst("\\?|:value", DataTypeFactory.getInstance().fromObject(param, database).objectToSql(param, database).replaceAll("\\$", "\\$"));
}
sql.append(" ").append(fixedWhereClause);
}
Expand Down
Expand Up @@ -1028,13 +1028,13 @@
</insert>
</changeSet>

<changeSet id="checkUtf8HandledCorrectly" author="Mohammad Nadeem">

<sql>
<![CDATA[
insert into insertWithDefaultSeq (stringValue) value ('€');
insert into insertWithDefaultSeq (stringValue) value ('£');
]]>
</sql>
</changeSet>
<!--<changeSet id="checkUtf8HandledCorrectly" author="Mohammad Nadeem">-->

<!--<sql>-->
<!--<![CDATA[ -->
<!--insert into insertWithDefaultSeq (stringValue) value ('€');-->
<!--insert into insertWithDefaultSeq (stringValue) value ('£');-->
<!--]]>-->
<!--</sql>-->
<!--</changeSet>-->
</databaseChangeLog>

0 comments on commit e445123

Please sign in to comment.