2010-01-24 1 views
3

Мне нужно добавить новые поля в существующие таблицы. После добавления полей приложение прерывается, так как старые записи не имеют недавно добавленного поля и исключают исключение. Есть ли способ обновить все старые записи новыми полями?Что лучше всего обновить хранилище данных Google новыми полями?

Мне это нужно для приложения java в Google app engine?

ответ

1

Хотя, по моим оценкам, я не нашел стратегии обновления модели в хранилище данных. У вас есть два варианта:

  1. Обновить существующие строки в хранилище данных с нулевыми значениями по умолчанию/для вновь добавленных столбцов

  2. Добавить версию на основе функции извлечения. Например: используйте блок catch try для извлечения вновь добавленного столбца, если он выдает исключение, в блоке catch напишите процедуру, которая вернет версию 1 объекта хранилища данных. Объект миграции рода.

+0

Я думаю, что мне нужно жить с попыткой поймать, если кто-то не придумает лучшую стратегию. Я надеялся избежать этого, поскольку код распространяется в нескольких местах. В любом случае thanx для вашего исчерпывающего ответа. – dhaval

+0

лучшим способом является обновление вашего хранилища данных с помощью = None, то что бы вы ни хотели. – A3R

Смежные вопросы