Сохранить данные на жесткий диск.

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
antihacker
Новичок
Новичок
 
Сообщения: 38
Зарегистрирован: 22.11.2005 (Вт) 8:44

Сохранить данные на жесткий диск.

Сообщение antihacker » 04.09.2007 (Вт) 12:21

Есть поле типа OLE. Там хранятся файлы разного типа и формата. Как их от туда вытащить и созранить на жесткий диск ?
Миром правят цифры ! Пифагор.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 04.09.2007 (Вт) 12:47

Поиск по GetChunk даст тебе ответ на этот вопрос.
Lasciate ogni speranza, voi ch'entrate.

antihacker
Новичок
Новичок
 
Сообщения: 38
Зарегистрирован: 22.11.2005 (Вт) 8:44

Сообщение antihacker » 04.09.2007 (Вт) 13:23

Set rs = CurrentDb.OpenRecordset("Òàáëèöà1")

Do While Not rs.EOF
Dim barr() As Byte
barr = rs.Fields(1).GetChunk(8, 1000000)
Open Trim(Str(rs.Fields(1))) & ".xls" For Binary As #1 -->> здесь ошибка
Put #1, , barr
Close #1
rs.MoveNext
Loop

Вот такая ошибка - "Type mismatch" Что делать ?
Миром правят цифры ! Пифагор.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 04.09.2007 (Вт) 13:36

Убрать Str.
Изображение

antihacker
Новичок
Новичок
 
Сообщения: 38
Зарегистрирован: 22.11.2005 (Вт) 8:44

Сообщение antihacker » 04.09.2007 (Вт) 13:47

Получилось, но файл кокой та абра кадабра. При открыти ексель выдает ошибку что формат не распознан. Что за ...
Миром правят цифры ! Пифагор.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 04.09.2007 (Вт) 14:25

В поле OLE не хранится файл. Если ты выгрузишь дамп OLE в файл, то это не значит, что файл можно будет открыть соответствующим приложением.
Lasciate ogni speranza, voi ch'entrate.

antihacker
Новичок
Новичок
 
Сообщения: 38
Зарегистрирован: 22.11.2005 (Вт) 8:44

Сообщение antihacker » 04.09.2007 (Вт) 14:44

Как раз такие там есть загруженный файл.
На счет соответсвующего приложения. Я не понял. Как может быть так ?
Миром правят цифры ! Пифагор.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Сообщение Andrey Fedorov » 04.09.2007 (Вт) 15:05

alibek писал(а):В поле OLE не хранится файл. Если ты выгрузишь дамп OLE в файл, то это не значит, что файл можно будет открыть соответствующим приложением.


Да нет, там он хранится, но если он туда вставлен как объект OLE то к нему еще присобачивается заголовок. Надо или хранить его в это поле как массив байт (что лучше и удобней) или отрезать этот заголовок... Так вроде.

По крайней мере я как-то возился с полями OLE в которых юзер навставлял картинок средствами Access-a - у всех картиночек пришлось отрезать заголовки...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

antihacker
Новичок
Новичок
 
Сообщения: 38
Зарегистрирован: 22.11.2005 (Вт) 8:44

Сообщение antihacker » 05.09.2007 (Ср) 5:30

Andrey Fedorov писал(а):
alibek писал(а):В поле OLE не хранится файл. Если ты выгрузишь дамп OLE в файл, то это не значит, что файл можно будет открыть соответствующим приложением.


Да нет, там он хранится, но если он туда вставлен как объект OLE то к нему еще присобачивается заголовок. Надо или хранить его в это поле как массив байт (что лучше и удобней) или отрезать этот заголовок... Так вроде.

По крайней мере я как-то возился с полями OLE в которых юзер навставлял картинок средствами Access-a - у всех картиночек пришлось отрезать заголовки...


У меня в поле OLE храниться вайл типа Excel 2003. А можно по подробнее что за заголовок и как его убирать ?
Миром правят цифры ! Пифагор.


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 218

    TopList