diff --git a/bin/pt-table-sync b/bin/pt-table-sync index 3a1a93cb..ad7dd3df 100755 --- a/bin/pt-table-sync +++ b/bin/pt-table-sync @@ -3537,7 +3537,7 @@ sub make_UPDATE { my $types = $self->{tbl_struct}->{type_for}; return "UPDATE $self->{dst_db_tbl} SET " . join(', ', map { - my $is_char = ($types->{$_} || '') =~ m/char|text/i; + my $is_char = ($types->{$_} || '') =~ m/char|text|enum/i; my $is_float = ($types->{$_} || '') =~ m/float|double/i; $self->{Quoter}->quote($_) . '=' @@ -3586,7 +3586,7 @@ sub make_row { . ') VALUES (' . join(', ', map { - my $is_char = ($type_for->{$_} || '') =~ m/char|text/i; + my $is_char = ($type_for->{$_} || '') =~ m/char|text|enum/i; my $is_float = ($type_for->{$_} || '') =~ m/float|double/i; $q->quote_val( $row->{$_}, @@ -3602,7 +3602,7 @@ sub make_where_clause { my @clauses = map { my $val = $row->{$_}; my $sep = defined $val ? '=' : ' IS '; - my $is_char = ($self->{tbl_struct}->{type_for}->{$_} || '') =~ m/char|text/i; + my $is_char = ($self->{tbl_struct}->{type_for}->{$_} || '') =~ m/char|text|enum/i; my $is_float = ($self->{tbl_struct}->{type_for}->{$_} || '') =~ m/float|double/i; $self->{Quoter}->quote($_) . $sep . $self->{Quoter}->quote_val($val, is_char => $is_char, diff --git a/lib/ChangeHandler.pm b/lib/ChangeHandler.pm index 26a24fa0..04e3869c 100644 --- a/lib/ChangeHandler.pm +++ b/lib/ChangeHandler.pm @@ -326,7 +326,7 @@ sub make_UPDATE { my $types = $self->{tbl_struct}->{type_for}; return "UPDATE $self->{dst_db_tbl} SET " . join(', ', map { - my $is_char = ($types->{$_} || '') =~ m/char|text/i; + my $is_char = ($types->{$_} || '') =~ m/char|text|enum/i; my $is_float = ($types->{$_} || '') =~ m/float|double/i; $self->{Quoter}->quote($_) . '='