Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Проблемы

Предположим, что у вас есть таблица, в которой есть кластеризованный индекс columnstore в Microsoft SQL Server 2014. Вы запускаете запрос DDL для таблицы, чтобы изменить тип данных существующего столбца. Например, вы можете изменить тип данных Column_1 Table_1 с VARCHAR (499) на NVARCHAR (500), выполнив следующую команду:

ALTER TABLE Table_1 ALTER COLUMN Column_1 NVARCHAR(500) NOT NULL

В этой ситуации возникают множественные отказы утверждения, и появляется следующее сообщение об ошибке:

Расположение: <путь к файлу> \Xmcolenc.inl: 413Expression: PF_CURRENT_STATUS = = PFS_OK (в XMColumnEncoder<неподписанный char *>:: EncodeValueForSecondary) SPID: <SPID>описание: <идентификатора процесса>Description. 0x0Location: 0 (в \Xmerror.cpp) SPID: <ный путь к файлу> SPID идентификатор процесса.

Кроме того, в журнале ошибок SQL Server генерируется несколько файлов дампа памяти, и в нем регистрируются различные сообщения об ошибках, аналогичные указанным ниже.

<Дата и время> SPID<ID> * * * копируется дамп стека <имя диска>: \Program Files\Microsoft SQL Server\MSSQL12. SQL2014\MSSQL\LOG\SQLDump0002.txt<дата> SPID<ID> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * <Дата время> SPID<ID> * <Дата время> SPID<ID> * начало дампа стека: <Дата время> SPID<ID> * <дата время> идентификатор spid<идентификатор><Дата <Дата и время> ID SPID<ID> * <дата время> spid<ID> * расположение: <путь к файлу> \xmcolenc.inl: 413<Дата время> SPID<ID> * выражение: PF_CURRENT_STATUS = = PFS_OK<Дата время> SPID<ID> * (в XMColumnEncoder<unsigned char *>:: EncodeValueForSecondary) <Дата время> SPID<ID> * SPID: 60<Дата время> SPID : 3680<Дата время> SPID<ID> * описание: HR: 0x0<Дата время> SPID<ID> * <Дата время> SPID<ID> * вход в буфер 136 байт-<Дата время> SPID<ID> * ALTER TABLE table_1 изменить столбец Col1 nvarchar (500) не имеет значения NULL;

Решение

После применения этого исправления может появиться следующее сообщение об ошибке при выполнении запроса DDL.

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

Это исправление также предотвращает создание файлов дампа памяти в журнале ошибок SQL Server. Эта проблема впервые устранена в следующих накопительных обновлениях SQL Server:

Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Мы рекомендуем вам загрузить и установить последние накопительные обновления для SQL Server.

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×