n1ro°
RU

Ошибки · Решение

SQL Server ошибка 4018: что означает и как исправить

Сохранённый для пользователя язык не является допустимым именем языка SQL Server.

Редакция N1RO · Проверено

Короткий ответ

SQL Server 4018: user default language не существует на этом экземпляре, поэтому используется server-wide default. Исправьте default language самого login.

Что означает ошибка

Сохранённый для пользователя язык не является допустимым именем языка SQL Server.

Возможные причины

  • Login перенесён с другого экземпляра с несовместимой настройкой языка.
  • Язык был изменён/удалён из ожидаемой конфигурации.
  • Provisioning script назначает неверный default language новым login-ам.

Что проверить

  • Проверьте default_language_name для конкретного login.
  • Сверьте его со списком sys.syslanguages.
  • Посмотрите, воспроизводится ли 4018 при подключении без клиентского language override.

Безопасные шаги

  1. Задайте этому login корректный default language из списка sys.syslanguages.
  2. Исправьте provisioning/migration script, чтобы неверное значение не появлялось снова.
  3. Переподключитесь и проверьте session language.

Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.

Когда нужен сервис

  • Если настройка массово неверна, передайте DBA источник создания logins и список пользователей с 4018.

Похожие ошибки

  • /errors/sql-server-error-4001/
  • /errors/sql-server-error-4002/
  • /errors/sql-server-error-4004/

Что учитывать

Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.

Официальный источник

Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.