powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / sql запрос отрабатывает по разному (на двух машинах)
8 сообщений из 8, страница 1 из 1
sql запрос отрабатывает по разному (на двух машинах)
    #32044428
noname
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток
Имеются две машины (старая и новая), обе под вин2к (сп3), обе несколько процессорные (помоему на xeon-е), новая пошустрее старой. База данных под MSSQL2000 (сп2) переносилась со старой машины на новую (deattach, attach). Наступили вот на какие грабли, - sql запрос вида:

if (select isnull(field1,-1) from table1 where (field2 = 11111)) <> 1 select 1 else select 0

Так вот на старой системе этот запрос возвращает 1, на новой 0. Да, следует заметить, что запрос
select isnull(field1,-1) from table1 where (field2 = 11111)
возвращает пустой результат (ничего не возвращает). Смотрел на sp_dboption, sp_configure, DBCC USEROPTIONS, sp_dbcmptlevel, - везде все одинаково. В books-online про операцию "<>" сказано что на ее поведение влияет ANSI_NULLS, пробовал включать/выключать - не лечится. Может быть сам запрос не корректен, но очень хочется понять где грабли. Неужто поведение не очень корректных запросов зависит от конфигурации машины?
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044450
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только разница в ANSI_NULLS.

> пробовал включать/выключать - не лечится

Включать/выключать можно по-разному. Как делалось в данном случае?
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044463
noname
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
включал/выключал SET ANSI_NULLS {ON | OFF}
смотрел на это дело через DBCC USEROPTIONS
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044497
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> включал/выключал SET ANSI_NULLS {ON | OFF}

Это не ответ.
"Так вы приехали на вокзал" - "Да, ехал-ехал я туда".


SET ANSI_NULLS OFF было непосредственно перед if (select ... ?
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044510
noname
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, ANSI_NULLS стоял перед запросом.
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044532
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В том же батче (той же процедуре)?
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044537
Фотография MarchCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А данные сверяли, прямо по строкам. Что там ? Идентичны?
...
Рейтинг: 0 / 0
sql запрос отрабатывает по разному (на двух машинах)
    #32044709
noname
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>В том же батче (той же процедуре)?
Да.

>А данные сверяли, прямо по строкам. Что там ? Идентичны?

Данные одинаковы, но дело не в данных, а в том что на одной машины сравнения пустого резалт-сета с числом дает true, а на другой false.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / sql запрос отрабатывает по разному (на двух машинах)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]