web/modules/rhn/RHN/DB/JoinClass.pm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
New commits:
commit 410a4d07cd001e6e2332e89610d9836cfeeee266
Author: Jan Pazdziora <jpazdziora(a)redhat.com>
Date: Wed Mar 23 17:40:46 2011 +0100
As PostgreSQL does not support table aliases in updates, remove them.
diff --git a/web/modules/rhn/RHN/DB/JoinClass.pm b/web/modules/rhn/RHN/DB/JoinClass.pm
index d805bb0..c5cb657 100644
--- a/web/modules/rhn/RHN/DB/JoinClass.pm
+++ b/web/modules/rhn/RHN/DB/JoinClass.pm
@@ -47,14 +47,15 @@ sub update_queries {
foreach my $table (@{$self->{tables}}) {
next unless grep { exists $changed_fields{$_} } $table->column_names;
+ my $remove_alias = "$table->{alias}.";
my $ret;
- $ret .= "UPDATE $table->{name} $table->{alias}\nSET ";
+ $ret .= "UPDATE $table->{name}\nSET ";
$ret .= join(", ", map { "$_ = ?" }
+ map { ($remove_alias eq substr($_, 0, length($remove_alias))) ? substr($_,
length($remove_alias)) : $_ }
grep { exists $changed_fields{$_} } $table->column_names);
$ret .= "\nWHERE " .
- $table->{alias} . "." .
$self->{assoc}->{$self->{tables}->[0]->{name}}->{$table->{name}}->[1]
.
" = ?";
Show replies by thread