![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сжать файлы и сохранить в BLOB [D7, MySQL]
Ling © (2005-09-30 17:15:00)Здравствуйте мастера.
Нужна помощь.
MySQL 3.23
работаю через Zeos; C BLOB полями вообще не работал, и не знаю, как мне составить запрос, что-бы сохранить в нём инфу.
Представим себе базу
индекс | путь\имена файлов.расш | размеры файлов | BLOB
Вопрос: как мне собрать все файлы из директории (это я могу 8) ), обьеденить их в один, заархивировать, и сохранить полученный архив в BLOB поле? И естественно, как выполнить обратную операцию.
Плохиш (2005-11-02 10:38:00) [1]Для случая [3] необходимо в 3й строке [4] заменить FieldByName на ParamByName и много читать справку.
SERGEY-ZZZ (2005-11-02 10:26:00) [2]Если победил - подскажи и мне как это делать.
Ling (2005-10-01 10:56:00) [3]
> TechnoDreamer
zeosdbo-6.5.1-alpha - довольно таки популярные компоненты для доступа к MySQL.
через loadFromFile пробовал, но таблица грузится через запрос и потому она ReadOnly
Ling (2005-10-01 10:52:00) [4]Удалено модератором
Примечание: Создание пустых сообщений
TechnoDreamer (2005-10-01 00:17:00) [5]Что такое Zeos я не знаю, через ADO в Access я делаю так:
TBlobField(MainForm.Table1.FieldByName('File')).SaveToFile('filename');
TBlobField(MainForm.Table1.FieldByName('File')).LoadFromFile('filename');
Ling (2005-09-30 18:27:00) [6]Ну допустим склеить файлы и заархивировать я могу (но всегда интересно, как это делают другие, может всё можно сделать проще и надёжнее).
Но хотя бы подскажите, как мне сохранить файл в BLOB?
Я все изменения в базу вношу, составив соответствующий запрос в ZSQLProcessor (до сих пор хватало, если это в корне не верно, то наставьте меня на путь истинный) , знаю, что у ZQuery BLOB-поля есть метод LoadFromFile, но он ругается на то, что данные ReadOnly; Что-бы составить ZUpdateSQL опять-же нужно составить запрос, а я не знаю, каким он должен быть, для BLOB.
Пробовал в ZQuery.SQL поставить 'insert into .. ( .. , :blobvalue)', загрузить значение через TParam.LoadFromFile, и выполнить ZQuery.ExecSQL, но вылазить исключение, мол запрос неправильный.
Подскажите плиз, как это делается.
TechnoDreamer (2005-09-30 18:22:00) [7]А что именно не понятно? Как сжать файлы?
Для этого есть куча компонентов. Вот например неплохой:
http://www.componentace.com/zip_component_zip_delphi_zipforge.htm#specification
Бесплатный для персонального пользования.
Или тут поищи, много чего есть:
http://www.torry.net/pages.php?id=300
Виталий Панасенко (2005-09-30 17:44:00) [8]
> Вопрос: как мне собрать все файлы из директории (это я могу
> 8) ), обьеденить их в один, заархивировать, и сохранить
> полученный архив в BLOB поле? И естественно, как выполнить
> обратную операцию.
А деньги можно за тебя получить ?