powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Народ подскажите новичку как сделать на VB6?
19 сообщений из 19, страница 1 из 1
Народ подскажите новичку как сделать на VB6?
    #34944447
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ вообщем вопрос у меня такой , тема в форуме была ,но не все понятно
У меня есть простенькая акцесовская БД на VB написал все что надо для заполнения полей в этой базе
МНЕ надо в одно из полей засунуть файл который может быть как рисунок так и .pdf (сканированный)
Есть 1 идея , записать путь к файлу в поле , либо переводить в бинарник изображение
Вопрос: Как на форме создать поле в котором можно указать путь к файлу изображения
чтоб этот путь записался в поле БД для конкретной записи (для каждой записи в БД файл изображения разный)
сама БД что-то типа Борей
может уже есть где то готовое решение ?
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34945185
Фотография gjghjc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если помещать файл в бинарном виде в базу то в этой же таблице нужно добавить поле и например назвать его ExtendID. После этого добавить еще одну таблицу в которой привести соответсвие идентификатора раширения и самого расширения.
Например
ExtendID | ExtendName
1 | txt
2 | pdf
3 | bmp

Или просто сразу добавить в твою базу поле с названием расширения хранимого файла.

Вторй вариант хранить в базе только пути к файлам. А сами файлы хранить в отдельной папке в каталоге программы. В этом случае строку, содержащую путь к файлу, можно как написать руками в текстовом поле так и сформировать при помощи или ComonDialog или при помощи элементов DRIVELISTBOX, DIRLISTBOX, FILELISTBOX.


С уважением, Николай.
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34945207
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо Николай! Я вот пробую использовать 2 вариант в текстовом поле сохранять только пути а файлы рисунков хранить в вотдельной базе рядом с БД
Может есть примеры где ?
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34945230
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему не хотите рисунки в базе сохранять?
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34947544
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да вообщем то задача как раз и есть чтоб сохранить рисунки в базе
но у меня как раз в этом заморочка , что не знаю как это проще и лучше сдеалать
в таблице создал поле типа MEMO, на форме в принципе можно использовать что то типа поля DirListBox ,вот как в коде все это написать, вот тут и есть тупик.
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34947846
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
приме записи в бд файла

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Dim rs As New ADODB.Recordset
    Dim fl As New ADODB.Stream
   
   rs ... 'параметры рекордсета
   
    With rs
        fl.Type = adTypeBinary
        fl.Open
        fl.LoadFromFile "c:\dr.jpg" 'загружаем файл в стрим
        .AddNew
        .Fields("ИмяБинарногоПоля").AppendChunk fl.Read ' записываем данные в БД
        .UpdateBatch
    End With
    fl.Close
    rs.Close
   
    Set fl = Nothing
    Set rs = Nothing
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34947879
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tiko спасибо за код попробую использовать !
Подскажи если можно , как в поле DirListBox на форме прописать чтоб можно было выбирать конкретные файлы с расширением .jpg , а то у меня выбираются только папки а файлы в них не показываются
можно ли в коде прописать чтоб с этого поля присваивалось имя выбранного файла?
Спасибо!
fl.LoadFromFile "c:\dr.jpg" 'загружаем файл в стрим
вот здесь что то типа fl.LoadFromFile "C:\*.jpg"
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34948006
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что то типа этого

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
With rs
    File1.Pattern = "*.jpg"
    For i =  0  To File1.ListCount -  1 
        strFile = Dir1.Path & "\" & File1.List(i)
        fl.Type = adTypeBinary
        fl.Open
        fl.LoadFromFile strFile 
        .AddNew
        .Fields("ИмяБинарногоПоля").AppendChunk fl.Read 
        .UpdateBatch
        fl.Close
    Next i
End With
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34948119
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! примерно тоже самое уже пробую резултат пока неясен
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34948252
Фотография Бенедикт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Се,
Нужен совет по поводу базы даных картинок.
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34949099
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Николай вообщем засунуть файл в Бд у меня упорно не получается , я туда путь к файлу
прописал
вот решил поиспользовать этот путь как гиперссылку на файл ,
Как сделать чтоб гиперссылка в DataReport была активной а не как обычный текст ?
p/s/это с учетом того что в этом отчете есть ещё и текстовые поля
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34954393
Belkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WorobjoffА почему не хотите рисунки в базе сохранять?
Мне кажется что это не совсем правильно (хранить изображение в БД), так как сильно разростается БД при этом СУБД приходится тяжело.
Я делал свою БД в которой хранил путь к фотке.


Андрей.
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34954451
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belkin да я тоже сделал так чтоб хранился путь к фотке , тоже порекомендовали сделать так , база действительно становится огромной
а не мог бы расссказать как ты её оттуда доставал когда нужно было достать отчет по конкретной записи?
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34954499
Belkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СеBelkin да я тоже сделал так чтоб хранился путь к фотке , тоже порекомендовали сделать так , база действительно становится огромной
а не мог бы расссказать как ты её оттуда доставал когда нужно было достать отчет по конкретной записи?
Я базу делал полностью в Access
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34954803
Се
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я делаю Access +VB 6.0
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34958036
Фотография Бенедикт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belkin,
Се,
не обязательно хранить рисунки в базе как OLE-объекты. Это простой путь, но расплата за него - сильное разрастание объёма базы (реальный пример: JPEG-файл размером 18 КБ разрастается до 1664 КБ). Причины этого, и способ хранения и показа изображений в "родных" форматах обсуждались с примерами в Access-овском форуме.
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34958320
Belkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БенедиктBelkin,
Се,
не обязательно хранить рисунки в базе как OLE-объекты. Это простой путь, но расплата за него - сильное разрастание объёма базы (реальный пример: JPEG-файл размером 18 КБ разрастается до 1664 КБ). Причины этого, и способ хранения и показа изображений в "родных" форматах обсуждались с примерами в Access-овском форуме.
Так я и говорю что лучше хранить путь к изображению.
Или я ошибаюсь???
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34958745
Фотография Бенедикт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelkinТак я и говорю что лучше хранить путь к изображению.
Или я ошибаюсь???Вы ошибаетесь в том, что противопоставляете различные способы, говоря "лучше", в то время как они дополняют друг друга. Хотите хранить картинки вне базы - пожалуста! Хотите внутри - тоже пожалуйста, да ещё и разными способами.

На самом деле, на практике противопоставлять их, рассматривать плюсы и минусы, придётся. Выбор зависит от задачи. Но лучше ;) иметь представление о возможных вариантах выбора.
...
Рейтинг: 0 / 0
Народ подскажите новичку как сделать на VB6?
    #34959104
Belkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БенедиктХотите хранить картинки вне базы - пожалуста! Хотите внутри - тоже пожалуйста

В чем разница?
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Народ подскажите новичку как сделать на VB6?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]