Select the product you need help with
Исправление: «Попытка значение NULL не NULL-будет столбец» сообщения об ошибке при выполнении запроса, функция ISNULL() используется для выбора значений столбца, допускающего значение NULL в SQL Server 2008Код статьи: 981037 - Список продуктов, к которым относится данная статья. Корпорация Майкрософт распространяет исправления Microsoft SQL Server 2008 файл с исправлениями. Так как исправления являются накопительными, каждый новый выпуск содержит все исправления, и все исправления, входившие в состав предыдущих SQL Server 2008 исправление выпуска. ПроблемаРассмотрим описанную ниже ситуацию.:
Сообщение 681, уровень 16, состояние 3, строка 2 Попытка задать значение столбца не NULL-возможности значения NULL. ПричинаОпределяет, что оптимизатор запроса, указанный в столбцеISNULL()функция является не поддерживающий значение NULL, так как оператор соединения отклоняет значения NULL. Затем, в плане запроса оптимизатор запросов помещает выражение, которое находится вISNULL()функция нижеОБЪЕДИНЕНИЕоператор. Кроме того значение выражения могут иметь значение NULL. Однако оптимизатор запросов не re-derive свойство возможность принимать значение NULL для выражения. Затем в плане запроса рабочая таблица используется для реализации хэш-соединения, очереди или сортировки таблицы, которая включает в себя выражение. Кроме того соответствующий столбец в таблице Работа объявляется как не допускающие значения NULL. Эта ошибка возникает, когда обработчик запросов SQL Server пытается использовать для вставки значений NULL в рабочей таблице. РешениеИсправление, устраняющее эту проблему, сначала было выпущено в 7 накопительного обновления для SQL Server 2008 с пакетом обновления 1 (SP1). Для получения дополнительных сведений о этот накопительный пакет обновления щелкните следующий номер статьи базы знаний Майкрософт: 979065 Примечание.Поскольку сборки являются накопительными, каждый новый выпуск исправление содержит все исправления, и все исправления, входившие в состав предыдущих SQL Server 2008 исправление выпуска. Рекомендуется, чтобы учесть применение последний выпуск исправления, содержащего это исправление. Для получения дополнительных сведений обратитесь к следующей статье Базы Знаний Майкрософт::
(http://support.microsoft.com/kb/979065/LN/
)
Накопительный пакет обновления 7 для SQL Server 2008 с пакетом обновления 1 (SP1)970365 Microsoft SQL Server 2008 исправлениях создаются для определенных пакетов обновления для SQL Server. Необходимо применить исправление SQL Server 2008 с пакетом обновления 1 (SP1) для установки SQL Server 2008 с пакетом обновления 1 (SP1). По умолчанию все исправления, входящие в пакет обновления SQL Server включено в следующий пакет обновления для SQL Server.
(http://support.microsoft.com/kb/970365/LN/
)
SQL Server 2008 выполняет построение, выпущенных после пакета обновления 1 для SQL Server 2008Временное решениеДля решения этой проблемы воспользуйтесь одним из описанных ниже способов.. Способ 1. УдалитьISNULL()функцию из запроса. Примечание.Так как столбец, который находится в этой функции поступают изОБЪЕДИНЕНИЕоператор, который отклонил значения NULLISNULL()функция является излишним. Способ 2 Перепишите запрос таким образом, чтобы план запроса не использует хэш-соединение, очереди или сортировки таблицы. Например если запрос содержит предложение ORDER BY, создание кластеризованного или covering индекс, который содержит требуемый порядок и включает в себя все нужные столбцы. При использовании этого метода, оптимизатор запросов не использует таблицы сортировки. СтатусКорпорация Майкрософт подтверждает, что это проблема в продуктах Майкрософт, перечисленных в разделе «Применяется к».. СсылкиСведения о последовательный модели обслуживания для SQL Server щелкните следующий номер статьи базы знаний Майкрософт: 935897
(http://support.microsoft.com/kb/935897/
)
Последовательный модели обслуживания доступна группа разработчиков SQL Server для предоставления исправления для устранения неполадокДля получения дополнительных сведений о схеме именования для обновления SQL Server щелкните следующий номер статьи базы знаний Майкрософт: 822499
(http://support.microsoft.com/kb/822499/
)
Новая схема присвоения имен пакетам обновлений программного обеспечения Microsoft SQL ServerДополнительные сведения о терминах, используемых при описании обновлений программного обеспечения, см. в следующей статье базы знаний Майкрософт:: 824684
(http://support.microsoft.com/kb/824684/
)
Стандартные термины, используемые при описании обновлений программных продуктов МайкрософтСвойстваКод статьи: 981037 - Последнее изменение :: 30 ноября 2010 г. - Редакция: 2.0 Информация в данной статье относится к следующим продуктам.
Переведено с помощью машинного перевода ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода. Эта статья на английском языке:981037
(http://support.microsoft.com/kb/981037/en-us/
)
|




Перейти к началу страницы








