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

Вниз

Как записать в поле binary файл и потом считать его обратно?   Найти похожие ветки 

 
Nikolai_S ©   (2004-07-02 14:57) [0]

Как через ADO записать в поле binary файл и потом считать его обратно?


 
Nikolai_S ©   (2004-07-02 15:34) [1]

Если не очень понятно поставил вопрос, то немного конкретизирую:

Задача: необходимо обеспечить возможность хранения в базе данных MS SQL Server 2000 произвольных файлов (размером около 3-5 Мб).

Для этого я создал таблицу с полями FILENAME (nvarchar) и MY_FILE (binary).

Как теперь в дельфи через TADOQuery записать в поле MY_FILE какой-нибудь файл и потом наоборот - считать из базы данных и сохранить на жесткий диск.


 
Kadr   (2004-07-02 15:35) [2]

TStream
TFileStream


 
Ega23 ©   (2004-07-02 15:49) [3]

TADOQuery

ADO не пользовался, но думаю, что так же, как и у обычного TQuery.

Читать из базы:
  TBLOBfield(DMpas.RQReadImg.FieldByName("PersFaceImg")).SaveToFile(ExtractFilePath(ParamStr(0))+"FaceImg.jpg");

Писать в базу:

DMpas.RQImage.ParamByName("Img").LoadFromFile(ExtractFilePath(ParamStr(0))+"FaceImg.jpg",ftBlob);

Естественно, в Params добавить параметр надо...


 
Nikolai_S ©   (2004-07-02 16:06) [4]

Я прочитал в справке, что типы данных binary и varbinary могут содержать не более 8000 байт. А как сохранить в БД файл размером в 3-5 Мб?


 
Ega23 ©   (2004-07-02 16:13) [5]

Поставь его типа image. Они из одного семейства типов.

image
Variable-length binary data from 0 through 2^31-1 (2,147,483,647) bytes.


 
Nikolai_S ©   (2004-07-02 17:36) [6]

ОК, спасибо. Это то, что надо



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

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

Наверх





Память: 0.45 MB
Время: 0.054 c
3-1088420514
Igoryok
2004-06-28 15:01
2004.07.25
Как узнать список удалённых SQL-серверов,servername/instance


1-1089364577
hgd
2004-07-09 13:16
2004.07.25
Толщина линии


4-1087304529
Soldier
2004-06-15 17:02
2004.07.25
Как узнать раскладку клавиатуры


14-1088954531
Knight
2004-07-04 19:22
2004.07.25
Кто чем солнечные ожоги лечит?


1-1089787498
TransparentGhost
2004-07-14 10:44
2004.07.25
TComboBox - не могу использовать Canvas.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский