diff options
Diffstat (limited to 'Bugzilla/DB.pm')
-rw-r--r-- | Bugzilla/DB.pm | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm index 7384e7b5f..4aad803c6 100644 --- a/Bugzilla/DB.pm +++ b/Bugzilla/DB.pm @@ -642,9 +642,8 @@ sub _bz_add_table_raw { $self->do($_) foreach (@statements); } -sub bz_add_field_table { - my ($self, $name) = @_; - my $table_schema = $self->_bz_schema->FIELD_TABLE_SCHEMA; +sub _bz_add_field_table { + my ($self, $name, $table_schema) = @_; # We do nothing if the table already exists. return if $self->bz_table_info($name); my $indexes = $table_schema->{INDEXES}; @@ -659,6 +658,19 @@ sub bz_add_field_table { $self->bz_add_table($name); } +sub bz_add_field_tables { + my ($self, $field) = @_; + + $self->_bz_add_field_table($field->name, + $self->_bz_schema->FIELD_TABLE_SCHEMA); + if ( $field->type == FIELD_TYPE_MULTI_SELECT ) { + $self->_bz_add_field_table('bug_' . $field->name, + $self->_bz_schema->MULTI_SELECT_VALUE_TABLE); + } + +} + + sub bz_drop_column { my ($self, $table, $column) = @_; |