-
Есть таблица с blob полем. В MS SQL это тип "Image". Нужно получить записи, у которых размер данных записанных в blob меньше определенного значения. Наверняка в MS SQL есть такая функция для blob полей, вроде функции LEN для текстовых полей. Облазил уже всю документацию но не получается найти. Народ, помогите :)
-
LEN через приведение поля к VarBinary попробуй, с ним LEN работает.
-
блин как ты искал в документации? пара кликов от описания image по связанным ссылкам - DATALENGTH
-
Через приведение в VarBinary сработало. В принципе, в рамках решаемой задачи результат мне подходит. Мне нужно искать только нулевые значения. Но вообще результат довольно странный. На нулевой размер отрабатывает правильно, а если размер поля больше 0, то всегда выдает 30. Ну или может не всегда... У меня примерно по 50-70 Кб. в этих полях, а LEN(CAST([FieldName] as VarBinary)) на выходе всегда 30
-
Действительно, как я так DATALENGTH проглядел... Вот DATALENGTH отрабатывает правильно. Спасибо! :)
-
> Мне нужно искать только нулевые значения.
IS NULL
-
это понятно :)
Просто данные идут в базу так, что нет null значений на blob полях. Можно только по размеру определять
-
> Просто данные идут в базу так, что нет null значений на
> blob полях. Можно только по размеру определять
гм... А это как в случае image? С text я ещё понимаю - '', а вот с image как???
-
> С text я ещё понимаю - '', а вот с image как???
а так же, попробуй внеси в image ''.
-
> а так же, попробуй внеси в image ''.
Мда, не знал такого....
-
> Ega23 (09.07.2009 13:25:09) [9]
Set Fld=NULL