Показать сообщение отдельно
Старый 10.11.2008, 13:33   #6  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Наблюдал похожий глюк именно на Oracle (на MS SQL не удалось тогда воспроизвести).

Запрос был простенький типа

select currency
where currency.CurrencyCode == "XXXY"

Когда в качестве кода валюты передавался код несуществующей валюты длиной в 4 символа (тестировалась проверка на некорректное значение валюты при импорте из другой системы), то возвращалась запись, код которой совпадал с первыми тремя символами неправильного кода. Ожидалось же, что запись не вернется и система выругается. Дальше из-за этого получался какой-то конфуз. Т.е. в режиме FORCEPLACEHOLDERS Oracle как-то умудрялся резать значение переменной, и в запрос уходило уже не то значение, которое запрашивалось, а подрезанное.

select forceliterals currency
where currency.CurrencyCode == "XXXY"

Дал ожидаемый результат (ничего не вернул).

Возможно, и в вашем случае можно поближе докопаться до причины.
__________________
С уважением,
glibs®