> ## Documentation Index
> Fetch the complete documentation index at: https://help.teable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Schema integrity

> Поиск и устранение расхождений между определениями полей базы и структурой её базы данных.

<Tip>Доступно для self-hosted на тарифе Business и выше</Tip>

Путь: Панель администратора → Schema integrity

Определения полей, которые хранит Teable, и фактическая структура в базе данных должны совпадать. Когда они расходятся, пользователи видят поля, которые не открываются, поля-ссылки без значений или таблицу, у которой постоянно не удаются чтение и запись, — причём видимой причины нет. **Schema integrity** находит такие проблемы и устраняет их.

Администратор экземпляра может проверить любую базу экземпляра, не вступая предварительно в её пространство, включая арендаторов с собственной базой данных (BYODB).

## Запуск проверки

Найдите базу через поле поиска — по базе, пространству, ID таблицы или имени. В списке результатов показаны пространство (**Space**), используемая база данных (**Data DB** — стандартная или BYODB) и среда выполнения (**Runtime** — v1 или v2); по ним вы убеждаетесь, что нашли нужную. Одинаковые имена баз в разных пространствах встречаются часто.

Нажмите **Check** в этой строке, затем **Запустить проверку** в диалоге **Целостность схемы**.

## Чтение результатов

Результаты перечислены по полям и правилам в четырёх состояниях:

| Состояние          | Значение                                                                                                         | Что делать                                                   |
| ------------------ | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| **Ошибка**         | Цель ссылки поля больше не существует либо конфигурация поля не совпадает с фактической структурой в базе данных | Это прямая причина сбоев чтения и записи, её нужно устранить |
| **Предупреждение** | Отклоняется от ожидаемой структуры, но чтение и запись пока работают                                             | Устраните его либо зафиксируйте и наблюдайте                 |
| **Пропущено**      | Правило неприменимо к этому полю и ничего не оценивало                                                           | Ничего делать не нужно                                       |
| **Успешно**        | Соответствует ожидаемому                                                                                         | Ничего делать не нужно                                       |

Начинайте с состояния **Ошибка**: сбой, о котором сообщил пользователь, почти всегда попадает в эту категорию. **Предупреждение** не объясняет текущий сбой, но по мере дальнейших изменений структуры полей может превратиться в ошибку, поэтому его стоит закрыть после разбора ошибок.

## Исправление

Можно **Исправить** по одному правилу или работать пакетно через **Исправить только предупреждения** и **Исправить предупреждения и ошибки**. Пока вы разбираете текущий сбой, устраняйте ошибки по одной и убеждайтесь, что сбой ушёл, прежде чем браться за предупреждения: так новую проблему можно связать с конкретным изменением.

Исправление меняет только структуру таблицы и не трогает содержимое записей. Перед запуском воспользуйтесь предпросмотром рядом с кнопкой исправления: в окне **Подтвердите детали восстановления** показаны обоснование и SQL, полученные при пробном прогоне, и ничего не выполняется до вашего подтверждения.

Часть правил нельзя исправить автоматически — у них отображается **Вручную**, и диалог объясняет, почему проблема требует участия человека. Если пробный прогон не вернул исполняемый SQL, диалог сообщает об этом прямо, и такой случай тоже требует участия человека.

После исправления нажмите **Проверить снова**, чтобы убедиться, что проблемы больше нет.
