Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.08.22;
Скачать: [xml.tar.bz2];

Вниз

Почему запрос достает из блоб-поля только 32 килобайта?   Найти похожие ветки 

 
Nameless   (2002-07-29 09:53) [0]

см сабж


 
Lida   (2002-07-29 12:04) [1]

Уважаемый Nameless!
Можно ответить вопросом на вопрос?
Надеюсь, у вас это не займет много времени,
а у меня его совсем мало, поэтому и обращаюсь
к вам.
Я создаю приложение D5, работающее с таблицами
из MSACCESS, у меня открываются все поля, кроме
фотографий. Не знаете, в чем причина?
Заранее благодарна!


 
ЮЮ   (2002-07-29 12:12) [2]

>у меня открываются все поля, кроме фотографий.
Что значит поле открылось? Как проявляется то,что оно не открылось?


 
Black Cat   (2002-07-29 12:15) [3]

Текст работы с Блобом глянуть можно?


 
Nameless   (2002-07-29 12:46) [4]

два дня никто не отвечал...

Вот, пожалуйста сишный вариант:

void __fastcall TForm1::Button4Click(TObject *Sender)
{
Query3->Close();
Query3->SQL->Text = "select photo from table where id = 1 " ;
Query3->Open();
TMemoryStream *ms = new TMemoryStream;
// ms := TMemoryStream.Create;
Query3->FieldByName("photo")->SaveToStream(ms);
ms->Position = 0;
Image1->Bitmap->LoadFromStream(ms);
Query3->Close();
delete ms;
}


примерно так


 
Black Cat   (2002-07-29 13:26) [5]

А есть уверенность что в блобе хранится >32Кб? А если попробовать через файл?


 
Nonam   (2002-07-29 14:01) [6]

BDE Administrator -> Databases -> MS SQL. В закладке Definition имеется параметр с названием BLOB SIZE. По умолчанию он равен 32. Что дальше делать, догадываетесь?


 
Nonam   (2002-07-29 14:04) [7]

Если вы работаете через BDE, то вот одна из возможных причин:
BDE Administrator -> Databases -> MS SQL. В закладке Definition имеется параметр с названием BLOB SIZE. По умолчанию он равен 32. Что дальше делать, догадываетесь?


 
Nameless   (2002-07-29 15:28) [8]

>Black Cat
ДА!
select datalenght(field) from table
------
3995454 - т.е. 3 мега


>Nonam
если бы это мне помогло, Вам бы не пришлось запускать BDE Administrator.


С уважением,


 
Nameless   (2002-07-29 15:34) [9]

>Lida
строку
Query3->FieldByName("photo")->SaveToStream(ms);
следует читать так
TBlobField(Query3.FieldByName("photo")).SaveToStream(ms);
Прошу прощения



 
Black Cat   (2002-07-29 15:49) [10]

И все-таки, если попробовать TBlobField(Query3.FieldByName("photo")).SaveToFile и LoadFromFile соответственно?


 
Nameless   (2002-07-29 15:58) [11]

>Black Cat
Вы хотите блоб-поле выгрузить в файл, а потом отобразить в Image1 с помощью LoadFromFile ?


 
Black Cat   (2002-07-29 16:05) [12]

Именно


 
Nameless   (2002-07-29 17:20) [13]

>Black Cat
А какой смысл?

Через MemoryStream быдет быстрее в 100 раз и не придётся файл стирать потом.


 
Black Cat   (2002-07-30 08:34) [14]


> А какой смысл?
>
> Через MemoryStream быдет быстрее в 100 раз и не придётся
> файл стирать потом


Это все понятно, смысл - просто проверить, кто виноват. Вообще-то с мемористреам не должно быть проблем, уменя следующий код работает как часы:

MS := TMemoryStream.Create;
try
TBlobField(F).SaveToStream(MS);
MS.Seek(soFromBeginning, 0);

case Gr_type of
1: begin
JPG := TJPEGImage.Create;
try
JPG.LoadFromStream(MS);
P.Assign(JPG);
finally
JPG.Free;
end;
end;
2: begin
GIF := TGIFImage.Create;
try
GIF.LoadFromStream(MS);
P.Assign(GIF);
finally
GIF.Free;
end;
end;



 
Прохожий   (2002-08-02 21:45) [15]

Акцесс дописывает свой заголовок в оле-поля



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.08.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.008 c
1-71221
^Sanya
2002-08-11 09:37
2002.08.22
Search in Delphi.


1-71210
Roman1985
2002-08-10 11:18
2002.08.22
Горячие клавиши


1-71176
CBA
2002-08-09 12:29
2002.08.22
Выполнение запросов в потоке


3-70997
Svet
2002-07-31 14:07
2002.08.22
Блокировка записи в многопользовательском режиме


6-71292
rem_
2002-06-13 10:03
2002.08.22
Послать почту





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский