Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Может здесь кто-нибудь знает..... [D5, Win95/98]


Nameless ©   (2002-07-29 11:00:00) 

В БД-форуме не знают.

Почему запрос достает из блоб-поля только 32 килобайта? [D5, MSSQL 2000] Параметр TDatabase BLOB SIZE игнорирует.


vuk   (2002-07-29 15:06:00) [1]

Ну да... Кому что, это точно. Либо универсальность либо ничего не делать... :o) Чтобы ничего не делать, лучше на ADO переписать.


Fiend   (2002-07-29 14:47:00) [2]

То vuk
согласен.
но если знаешь хоть прыблызно размер, то это проще всего.
А так надо потом результаты курсора в одно целое объединять. Ну т.е. несколько строк надо будет сделать. А так ничё делать не надо.

Кому что подойдёт


vuk   (2002-07-29 14:26:00) [3]

to Fiend:
Способ с установками параметра BLOB SIZE хорош только тогда, когда Вы заранее знаете максимальный размер блока данных, который потенциально будет использован при работе с Вашей программой. А следовательно, этот способ не универсален.


Fiend   (2002-07-29 12:05:00) [4]

То Nameless
мне помогало однозначно.
надеюсь вы приложение с БДЕ перегрузили?

Должно работать.
Если не выйдет, постучитесь в асю, попробуем вместе разобраться


Nameless   (2002-07-29 11:56:00) [5]

>Fiend
unfortunately это не помогает :(


Fiend   (2002-07-29 11:54:00) [6]

То vuk
Это тоже вариант, но более сложный!

Всё дело в размере блоба, наскока я помню.
Надо в настройках драйвера MS SQL в BDE, установить поболее параметр "BLOB SIZE", там по умолчанию стоит 32, поставьие скока вам надо, и всё будет ок.

Хотя с процедурами тоже неплохо


vuk   (2002-07-29 11:28:00) [7]

Работаете через BDE? Похоже, что да, поскольку, насколько я знаю, проблема эта существует только там. Приемлемым решением будет извлечение данных при помощи хранимой процедуры, которая нарежет данные на кусочки (например по 255 байт) и выдаст клиенту. На клиенте это все собирается и так получается исходный блок данных.
Пример решения, которое я давал на "Королевстве Delphi"
http://www.delphikingdom.com/asp/answer.asp?IDAnswer=7951


Nameless   (2002-07-29 11:23:00) [8]

>Fiend
проверял - 3562489 , т.е. 3 мега


Fiend   (2002-07-29 11:17:00) [9]

А реально длину поля не заценивал?
скока записано, проверь select datalength(БЛОБ ПОЛЕ)


Наверх

Титульная страница Поиск, карта сайта Написать письмо