колонку следующим методом:
ALTER TABLE table UPDATE mat_col = mat_col
Но увы, так не работает:
DB::Exception: Cannot UPDATE materialized column
Может, есть еще какие то варианты?
ну обявить ее default на время апдейта, потом снова materialized зачем вам кстати именно materialized? понимаете что отличия materialized от default только в раскрытии * в селект и инсерт?
тогда сам запрос ALTER не заблочит ли всю таблицу ли на время обновления всех старых данных? Или может это не применится для всех новых данных, пока идет процесс?
заблочит в каком смысле? так default их заполнит
ну 2млрд записей мгновенно не обновятся, скажем, это будет за 5 минут. За это время придет еще 100к новых строк данных. И все они будут ждать, пока довыполнится ALTER? Или они потеряют это вычисление DEFAULT?
нет alter не блокирует инсерты и селекты инсерты заполнят DEFAULT
Обсуждают сегодня