@@ -93,6 +93,7 @@ DDL-запросы в MySQL конвертируются в соответств
- Каскадные запросы `UPDATE/DELETE` не поддерживаются движком `MaterializeMySQL`.
- Репликация может быть легко нарушена.
- Прямые операции изменения данных в таблицах и базах данных `MaterializeMySQL` запрещены.
- на работу `MaterializeMySQL` влияет настройка [optimize_on_insert](../../operations/settings/settings.md#optimize-on-insert). Когда таблица на MySQL сервере меняется, происходит слияние данных в соответсвующей таблице в базе данных `MaterializeMySQL`.
@@ -2473,4 +2473,58 @@ SELECT SUM(-1), MAX(0) FROM system.one WHERE 0;
Значение по умолчанию: `16`.
## optimize_on_insert {#optimize-on-insert}
Включает или выключает преобразованние данных перед их вставкой, как будто над блоком было произведено слияние (например замена, сворачивание, агрегация...).
Возможные значения:
- 0 — выключена
- 1 — включена.
Значение по умолчанию: 1.
**Пример**
Разница между включенным и выключенным состояниями:
Обратите внимание на то, что эта настройка влияет на поведение [материализованное представление ](../../sql-reference/statements/create/view.md#materialized) и [MaterializeMySQL](../../engines/database-engines/materialize-mysql.md).
Недоработано выполнение запросов `ALTER` над материализованными представлениями, поэтому они могут быть неудобными для использования. Если материализованное представление использует конструкцию `TO [db.]name`, то можно выполнить `DETACH` представления, `ALTER` для целевой таблицы и последующий `ATTACH` ранее отсоединенного (`DETACH`) представления.
Обратите внимание, что работа материлизованного представления находится под влиянием настройки [optimize_on_insert](../../../operations/settings/settings.md#optimize-on-insert). Перед вставкой данных в таблицу происходит слияние данных.
Представления выглядят так же, как обычные таблицы. Например, они перечисляются в результате запроса `SHOW TABLES`.
Отсутствует отдельный запрос для удаления представлений. Чтобы удалить представление, следует использовать `DROP TABLE`.