feat(sync): 按数据源组合约束迁移能力

- 展示源端到目标端的完整、部分、规划中和不支持状态
- 按能力控制自动建表、补列、索引及继续执行入口
- 支持数据库列表为空时手工输入并补齐六语言提示
This commit is contained in:
Syngnat
2026-08-08 19:34:36 +08:00
parent f15b630e70
commit 4df879ccde
13 changed files with 639 additions and 74 deletions

View File

@@ -4477,13 +4477,19 @@
"data_sync.action.previous": "Назад",
"data_sync.action.start_sync": "Начать синхронизацию",
"data_sync.action.view": "Просмотреть",
"data_sync.alert.auto_create_planner_scope": "Автоматическое создание таблиц сейчас поддерживает только MySQL в Kingbase. Переносятся столбцы, первичные ключи, обычные индексы, уникальные индексы и составные индексы; полнотекстовые, пространственные, префиксные и функциональные индексы явно пропускаются.",
"data_sync.alert.auto_create_scope": "Автоматическое создание таблиц сейчас поддерживает только MySQL в Kingbase. Переносятся столбцы, первичные ключи, обычные индексы, уникальные индексы и составные индексы; полнотекстовые, пространственные, префиксные и функциональные индексы явно пропускаются.",
"data_sync.alert.auto_create_planner_scope": "Планировщик миграции выбирается по текущей паре источника и цели. Поддержка автоматического создания объектов, полей и индексов определяется сведениями о возможностях пары и результатами предварительной проверки.",
"data_sync.alert.auto_create_scope": "Планировщик миграции выбирается по текущей паре источника и цели. Поддержка автоматического создания объектов, полей и индексов определяется сведениями о возможностях пары и результатами предварительной проверки.",
"data_sync.alert.existing_target_only": "Синхронизация данных по умолчанию выполняется с существующими целевыми таблицами. Переключитесь на межбазовую миграцию, если нужны создание таблиц и импорт.",
"data_sync.alert.full_overwrite": "Полная перезапись очищает данные целевых таблиц. Используйте ее осторожно.",
"data_sync.alert.migration_mode": "Активна межбазовая миграция. Используйте ее для переноса таблиц в другой источник данных с автоматическим созданием и импортом.",
"data_sync.alert.query_mode": "Синхронизация результата SQL сейчас поддерживает пользовательский SQL источника в одну существующую целевую таблицу. Результат запроса должен содержать столбец первичного ключа целевой таблицы.",
"data_sync.alert.sync_mode": "Активна синхронизация данных. Используйте ее для инкрементальной синхронизации или импорта с перезаписью, когда целевые таблицы уже существуют.",
"data_sync.capability.full": "Для {{sourceType}} → {{targetType}} используется специализированный планировщик миграции с автоматическим созданием цели. Перед запуском проверяются поля, индексы и ограничения.",
"data_sync.capability.load_failed": "Не удалось загрузить возможности миграции для этой пары источника и цели, поэтому выполнение заблокировано. Повторите попытку или проверьте среду приложения.",
"data_sync.capability.loading": "Проверяются возможности миграции для текущей пары источника и цели…",
"data_sync.capability.partial": "Для {{sourceType}} → {{targetType}} используется режим совместимости с существующей целью: можно перейти к предварительной проверке, но автоматическое создание недоступно. Сначала создайте цель; фактическая поддержка чтения и записи определяется анализом различий и проверкой драйвера.",
"data_sync.capability.planned": "Пара {{sourceType}} → {{targetType}} подключена к уровню планирования миграции, но выполнение в этой версии пока недоступно.",
"data_sync.capability.unsupported": "Миграция или синхронизация {{sourceType}} → {{targetType}} пока не поддерживается.",
"data_sync.backend.error.analyze_prepare_secrets_failed": "Не удалось подготовить секреты анализа синхронизации данных: {{detail}}",
"data_sync.backend.error.apply_changes_failed": "Не удалось применить изменения: {{detail}}",
"data_sync.backend.error.apply_changes_unsupported": "Целевой драйвер не поддерживает применение изменений данных",
@@ -4613,7 +4619,7 @@
"data_sync.backend.validation.target_table_required": "Целевая таблица обязательна",
"data_sync.backend.warning.apply_changes_unsupported": "Целевой драйвер не поддерживает применение изменений данных.",
"data_sync.backend.warning.auto_add_column_sql_generation_failed": "Не удалось создать SQL для автоматического добавления столбца {{column}}: {{detail}}",
"data_sync.backend.warning.auto_create_pair_unsupported": "Автоматическое создание таблиц сейчас поддерживает только MySQL -> Kingbase; текущая пара={{sourceType}} -> {{targetType}}",
"data_sync.backend.warning.auto_create_pair_unsupported": "Для текущей пары нет планировщика автоматического создания цели: {{sourceType}} -> {{targetType}}",
"data_sync.backend.warning.auto_increment_not_preserved_existing_target_add_column": "Столбец {{column}} является автоинкрементным; {{feature}} не будет автоматически создан заново при добавлении в существующую целевую таблицу",
"data_sync.backend.warning.clickhouse_complex_type_degraded_mysql": "Столбец {{column}} типа {{type}} деградирован до json",
"data_sync.backend.warning.clickhouse_complex_type_degraded_pg_like": "Столбец {{column}} типа {{type}} деградирован до jsonb",
@@ -4769,7 +4775,7 @@
"data_sync.modal.full_overwrite_content": "Полная перезапись сначала очищает целевую таблицу, а затем вставляет строки. Подтвердите, что целевая база данных сохранена в резервной копии.",
"data_sync.modal.full_overwrite_ok": "Продолжить",
"data_sync.modal.full_overwrite_title": "Подтвердите полную перезапись",
"data_sync.option.auto_add_columns": "Автоматически добавить недостающие целевые столбцы (сейчас поддерживаются цели MySQL и MySQL в Kingbase; режим результата SQL не поддерживается)",
"data_sync.option.auto_add_columns": "Автоматически добавить недостающие целевые столбцы (доступность зависит от текущей пары источника и цели; режим результата SQL не поддерживается)",
"data_sync.option.content.both": "Синхронизировать схему и данные",
"data_sync.option.content.data": "Только данные",
"data_sync.option.content.schema": "Только схема",
@@ -4786,6 +4792,7 @@
"data_sync.option.workflow.migration": "Межбазовая миграция (автоматическое создание и импорт)",
"data_sync.option.workflow.sync": "Синхронизация данных (сравнение и синхронизация с существующими целевыми таблицами)",
"data_sync.placeholder.mongo_collection_name": "Введите имя коллекции Mongo",
"data_sync.placeholder.database_manual": "Введите базу данных, схему или каталог",
"data_sync.placeholder.source_query_sql": "Пример: SELECT id, name, email FROM users WHERE status = 'active'",
"data_sync.placeholder.target_table": "Выберите одну целевую таблицу",
"data_sync.plan.add_missing_columns_before_import": "Дополнить отсутствующие поля перед импортом: {{count}}",