Ошибки · Решение
SQL Server ошибка 1505: что означает и как исправить
Создание UNIQUE index/constraint остановлено, потому что в существующих данных найден дублирующийся ключ.
Короткий ответ
SQL Server error 1505 — Duplicate key while creating UNIQUE index. Сначала зафиксируйте полный текст сообщения и контекст операции, затем устраняйте конкретную причину.
Что означает ошибка
Создание UNIQUE index/constraint остановлено, потому что в существующих данных найден дублирующийся ключ.
Возможные причины
- В таблице уже есть две или более строки с одинаковым значением будущего уникального ключа.
- Составной unique key не соответствует фактической модели данных.
- Перед миграцией не была выполнена очистка дублей.
Что проверить
- Возьмите duplicate key value из текста error 1505.
- Найдите все строки с этим ключом и определите, какие из них корректны.
- Проверьте, действительно ли бизнес-правило требует UNIQUE для выбранных колонок.
Безопасные шаги
- Устраните или объедините дубликаты до создания индекса.
- Не удаляйте строки автоматически без проверки владельцем данных.
- Повторите CREATE UNIQUE INDEX/constraint после очистки и контрольного запроса на дубли.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- Если SQL Server 1505 повторяется после базовой проверки, приложите полный текст ошибки, SQL Server error log, версию/edition и контекст операции DBA или владельцу инфраструктуры.
Похожие ошибки
- /errors/sql-server-error-102/
- /errors/sql-server-error-823/
- /errors/sql-server-error-824/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.