Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сохранить изображение в базу, сохранить изображение в базу 
:(
    Опции темы
Baha_Ahmed
Дата 11.4.2009, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Есть некое изображение, пробема сохранения ее в базу данных. Пишу игрушку типа тестирования для школьного учереждения, нужно сохранять картинки в базу данных. Помогите!!!! smile 
PM MAIL   Вверх
amt
Дата 22.4.2009, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 249
Регистрация: 26.10.2004
Где: г. Волгоград

Репутация: 3
Всего: 3



А может достаточно сохранить в базе путь к картинке?
--------------------
С точки зрения банальной эрудиции не каждый индивидуум способен игнорировать тенденции парадоксальных эмоций.
PM MAIL   Вверх
Baha_Ahmed
Дата 14.5.2009, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Цитата(amt @ 22.4.2009,  13:02)
сохранить в базе путь к картинке?

Не так не получается, пишу оболочку пустышку, учителя уже дальше сами ею будут пользоваться, а они как правило меняют часто папки, да и это учителя младших классов!!! Помогите!!! smile 
PM MAIL   Вверх
Akina
Дата 14.5.2009, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(Baha_Ahmed @  14.5.2009,  09:52 Найти цитируемый пост)
они как правило меняют часто папки

Решение простое - сделать инсталлятор приложения, в папке установки программы или профиля пользователя сделать подпапку для хранения присоединяемых файлов и копировать туда картинки.
Так что пусть они меняют и даже удаляют всё, что заблагорассудится. В папку установки программы или там в %USERPROFILE%\Application Data они точно не полезут. А если полезут - смерть данных будет уже на их совести, причём убиение будет явно сознательным. Кстати, и саму БД неплохо класть туда же - в папку установки, Common Files или в профиль пользователя.

Добавлено через 2 минуты и 24 секунды
Соответственно предусмотри режим очистки такого каталога - удаление файлов, на которые нет ссылок в БД. Можно этот процесс совместить с обслуживанием базы (CompactDatabase).


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Baha_Ahmed
Дата 14.5.2009, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Цитата(Akina @ 14.5.2009,  09:12)
Так что пусть они меняют и даже удаляют всё, что заблагорассудится.

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

Добавлено через 1 минуту и 47 секунд
Цитата(Baha_Ahmed @ 14.5.2009,  12:47)
Так что пусть они меняют и даже удаляют всё, что заблагорассудится.Понимаешь, проблема в том что тесты они сами составляют и естественно картинки тоже они загружают.

А мне не хочется каждый раз их консультировать как пользоваться прогой, когда все в базе пущай что хочют делают.
PM MAIL   Вверх
Akina
Дата 14.5.2009, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(Baha_Ahmed @  14.5.2009,  13:47 Найти цитируемый пост)
тесты они сами составляют и естественно картинки тоже они загружают

Да пожалуйста! Только пойми, что тест с картинками, который преп составляет и корректирует - это одно, а тест с картинками, который хранится в базе и показывается приложением - это совсем другое. То есть это два разных набора тестов с двумя разными наборами картинок. Пусть в большинстве и одинаковыми.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Baha_Ahmed
Дата 14.5.2009, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Цитата(Akina @ 14.5.2009,  12:51)
Да пожалуйста! Только пойми, что тест с картинками, который преп составляет и корректирует - это одно, а тест с картинками, который хранится в базе и показывается приложением - это совсем другое.

Объясни, пожалуйста что ты имел в виду. Я пишу оболочку-базу данных, в которой хранятся вопросы и картинки к этим вопросам, ну типа миллионер только с картинками, там много видов тестов: один из многих, с клавиатуры... ну и так далее, но вот нужно чтобы картинки хранились с вопросами в базе.

Добавлено через 3 минуты и 46 секунд
Цитата(Akina @ 14.5.2009,  12:51)
тест с картинками, ..... составляет и корректирует - это одно, а тест с картинками, который хранится в базе .... - это совсем другое.

Объясни пожалуйста что ты имел в виду!!!
PM MAIL   Вверх
Akina
Дата 14.5.2009, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(Baha_Ahmed @  14.5.2009,  14:04 Найти цитируемый пост)
Объясни пожалуйста что ты имел в виду

Написал ты приложение и инсталлер... назвал, скажем... ну Test. Отдаёшь юзеру. Юзер у себя запускает инсталлер, который создаёт папку "C:\Program Files\Test", записывает туда Test.EXE, создаёт скрипт деинсталляции, копирует и регистрирует необходимые компоненты, ключи реестра... и наконец создаёт каталог "C:\Program Files\Common Files\Test\Database" ("C:\Program Files\Test\Database", "C:\Documents and Settings\All Users\Application Data\Test\Database"), в который кладёт собсно MDB-файл.

Далее. Юзер притаскивает флешку с составленными тестами (или делает их на этом же компе в "C:\Documents and Settings\Вася пупкин\Мои документы\Тесты"). Сделав тест, стартует программу. Она говорит - тыкни мне пальцем файл с вопросом и ответами к нему. Он тычет (ну или вводит их руками в форме ввода). Затем прога говорит - а теперь тыкни мне в рисунки, которые надо показывать к этому вопросу (или юзер нажимает кнопку добавления рисунка). Вываливается окно выбора файла, юзер тычет в файл картинки (на флешке или в каталоге своих документов). Наконец вопрос создан, юзер жмёт "Сохранить". Программа при этом: 1) записывает в БД текст вопроса, варианты ответов, номер верного варианта; 2) копирует файл с рисунком в каталог с базой данных 3) записывает путь к только что созданной копиирисунка в соотв. поле БД. Всё, вопрос готов. Юзер может вынуть флешку, удалить или изменить файл с рисунком в своих документах - на то, что покажет программа, это не окажет ровным счётом никакого влияния.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Baha_Ahmed
Дата 15.5.2009, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Цитата(Akina @ 14.5.2009,  13:57)
Программа при этом: 1) записывает в БД текст вопроса, варианты ответов, номер верного варианта; 2) копирует файл с рисунком в каталог с базой данных 3) записывает путь к только что созданной копиирисунка в соотв. поле БД. Всё, вопрос готов. Юзер может вынуть флешку, удалить или изменить файл с рисунком в своих документах - на то, что покажет программа, это не окажет ровным счётом никакого влияния.

Да, все правильно. Спасибо!!! Я так и хочу сделать, если не найду запись в mdb изображения. То есть прога создает автономные файлы с изображениями, называет их как хочет,  при этом ссылка хранится в строке базы с вопросами. Ты знаешь, вот как удалять эти изображения? при удалении вопроса это одно, и второе- когда база создана на одном компе, ее просто копируешь на флешку и она будет работать и на другом, хотя как ты говоришь можно и эту папку скопировать вместе с базой. Просто я однажды скопировал тут один пример как записывать изображение, но пользоваться не смог им. smile 
PM MAIL   Вверх
Akina
Дата 15.5.2009, 11:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(Baha_Ahmed @  15.5.2009,  12:11 Найти цитируемый пост)
как удалять эти изображения?

Код
filename$ = rs.fields("Имя файла картинки").value
kill filename$


Цитата(Baha_Ahmed @  15.5.2009,  12:11 Найти цитируемый пост)
когда база создана на одном компе, ее просто копируешь на флешку и она будет работать и на другом, хотя как ты говоришь можно и эту папку скопировать вместе с базой.

Конечно, и сама MDB, и зарегистрированные в ней картинки должны быть в одном каталоге (т.е. картинки, конечно, в подкаталоге, или даже в дереве подкаталогов) - и копировать надо всё сразу. И не забыть, что пути к картинкам БД должны быть относительными.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Baha_Ahmed
Дата 15.5.2009, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Цитата(Akina @ 15.5.2009,  11:20)
И не забыть, что пути к картинкам БД должны быть относительными.

то есть App.Path\ и путь к рабочим папкам с базой и картинками. Спасибо большое!!!!

PM MAIL   Вверх
Akina
Дата 15.5.2009, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(Baha_Ahmed @  15.5.2009,  13:07 Найти цитируемый пост)
то есть App.Path\ и путь к рабочим папкам с базой и картинками

Это если ты будешь делать папку для БД и картинок в каталоге установки программы. Но я бы всё-таки предусмотрел режим выбора базы данных (открыть БД) - это позволит иметь несколько БД (одни тесты, другие тесты, рабочая база, пробная база и т.п.)...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Dexx
Дата 15.5.2009, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 292
Регистрация: 13.6.2005

Репутация: 5
Всего: 7



Картинку или формулу или еще чего в RTF.
В access поле типа Memo.

И примерно так.
Код

Dim con As New ADODB.Connection
Dim Rec As New Recordset
con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb;Persist Security Info=False"
con.Open
Rec.Open "table1", con, adOpenDynamic, adLockOptimistic
Rec.MoveFirst
Rec.Fields(1).Value = RichTextBox1.TextRTF
Rec.Update




--------------------

PM   Вверх
Baha_Ahmed
Дата 16.5.2009, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 100
Регистрация: 21.12.2007

Репутация: нет
Всего: нет



Цитата(Dexx @ 15.5.2009,  15:13)
Картинку или формулу или еще чего в RTF.
В access поле типа Memo.
Rec.Fields(1).Value = RichTextBox1.TextRTF

Я не работал с RichTextBox, он что может отобразить картинку? и вообще то вопрос стоит как туды записывать и вытаскивать, а в чем отобразить этого нам VB вдоволь предоставил
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1398 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.