Конференция "Базы" » как получить размер IMAGE (blob) поля MS SQL? [MSSQL]
 
  • SDSK © (08.07.09 11:57) [0]
    Есть таблица с blob полем. В MS SQL это тип "Image". Нужно получить записи, у которых размер данных записанных в blob меньше определенного значения. Наверняка в MS SQL есть такая функция для blob полей, вроде функции LEN для текстовых полей. Облазил уже всю документацию но не получается найти. Народ, помогите :)
  • sniknik © (08.07.09 12:09) [1]
    LEN  через приведение поля к VarBinary попробуй, с ним LEN работает.
  • sniknik © (08.07.09 12:15) [2]
    блин как ты искал в документации? пара кликов от описания image по связанным ссылкам - DATALENGTH
  • sdsk © (08.07.09 12:19) [3]
    Через приведение в VarBinary сработало. В принципе, в рамках решаемой задачи результат мне подходит. Мне нужно искать только нулевые значения. Но вообще результат довольно странный. На нулевой размер отрабатывает правильно, а если размер поля больше 0, то всегда выдает 30. Ну или может не всегда... У меня примерно по 50-70 Кб. в этих полях, а LEN(CAST([FieldName] as VarBinary)) на выходе всегда 30
  • sdsk © (08.07.09 12:20) [4]
    Действительно, как я так DATALENGTH проглядел... Вот DATALENGTH отрабатывает правильно. Спасибо! :)
  • sniknik © (08.07.09 12:34) [5]
    > Мне нужно искать только нулевые значения.
    IS NULL
  • sdsk © (08.07.09 12:49) [6]
    это понятно :)
    Просто данные идут в базу так, что нет null значений на blob полях. Можно только по размеру определять
  • Ega23 © (09.07.09 13:05) [7]

    > Просто данные идут в базу так, что нет null значений на
    > blob полях. Можно только по размеру определять


    гм... А это как в случае image? С text я ещё понимаю - '', а вот с image как???
  • sniknik © (09.07.09 13:15) [8]
    > С text я ещё понимаю - '', а вот с image как???
    а так же, попробуй внеси в image ''.
  • Ega23 © (09.07.09 13:25) [9]

    > а так же, попробуй внеси в image ''.


    Мда, не знал такого....
  • Anatoly Podgoretsky © (09.07.09 13:29) [10]
    > Ega23  (09.07.2009 13:25:09)  [9]

    Set Fld=NULL
 
Конференция "Базы" » как получить размер IMAGE (blob) поля MS SQL? [MSSQL]
Есть новые Нет новых   [134473   +32][b:0][p:0]