/** * Обновление поля в таблице раздела * * @param DataSource_Hybrid_Field $old * @param DataSource_Hybrid_Field $field * @return boolean */ public static function alter_table_update_field(DataSource_Hybrid_Field $old, DataSource_Hybrid_Field $field) { $db = Database::instance(); $params = array(':table' => DB::expr($db->quote_table($field->ds_table)), ':old_key' => DB::expr($db->quote_column($old->name)), ':new_key' => DB::expr($db->quote_column($field->name)), ':type' => DB::expr($field->get_type()), ':default' => DB::expr('DEFAULT ""')); if (isset($field->default)) { $params[':default'] = DB::expr('DEFAULT "' . $field->default_value() . '"'); } return (bool) DB::query(NULL, 'ALTER TABLE :table CHANGE :old_key :new_key :type :default')->parameters($params)->execute(); }