powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
15 сообщений из 15, страница 1 из 1
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39103229
Martinisiko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые дамы и господа, помогите решить проблему:
Файл аксесса растёт ужасными темпами, в саму базу ничего не добавляетсяю Просто пользуюсь формулярами для просмотра информации. В базе содержится много фотографий и пдф документов. Они сохранены в базе, как вложенный элемент (скрепка). По какой то причине напрямую из базы я эти файлы читать не могу, их программа при использовании не находит. Приходится делать вот что:
Код: vbnet
1.
 MyPicture.Picture = CurrentProject.Path & "\pics\" & DLookup("IMGs", "tbl_Files", "[ID] = " & myID)


То есть для каждой картинки или файла пдф я ищу название файла в базе данных(из Поля "Вложение" Access (Attachment)).
Опытным путем было найдено следущее:
каждый раз при присвоении картинке, вышеупомянутым кодом, пути к картинке Аксесс создает файл ПОРЯДКОВЫЙНОМЕР_ИмяФайлаИзБазыДанных и использует его. Размер базы увеличивается на размер этого фото. На прилагаемой фотке это видно.
Вопросы:
1. почему аксесс это делает?
2. Что я делаю не так в конкретном случае? почему вышеупомянутый код не работает как надо? (Он делает то что я от него прошу, но еще зачем то создает каждый раз копию фотографии)
И самое главное:
3.Как удалить теперь все эти копии фотографий? Как можно получить доступ к Папке что содержит Фотографии для кнопки "вставить изображение" - Той кнопки что на моём фото называется "Bild Einfügen". Там накопилось сотни файлов, и удаление их по одной уж очень много времени займет.

Заранее спасибо.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39104256
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не пользовался вложениями. Но как-то занимался вопросами хранения изображений в базе. Посмотрите вот здесь Хранение изображений в базе данных Может поможет.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39104311
Martinisiko, может достаточно в настройках Акса установить флажок "Сжимать при закрытии" (или как-то так)?
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39104589
Martinisiko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Неужели никто не знает как решить эти проблемы?
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39104591
Martinisiko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответы. Я уже сжимал, не помагает. База становится легче где то на 1-2 МБ, а прирост во время пользования может и до 10-20 Мб доходить. Аксесс создаёт копии файлов (см. фото) и использует их для показа. Каждый раз при нажатии кнопки счётчик перед фото увеличивается, то есть опять создалась еще одна копия, база выросла.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39104966
Адеке
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тогда может лучше держать базу отдельно, приложение отдельно?
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39105107
Фотография simply
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вышеприведенный код выполняет загрузку в базу файла изображения из вне, а именно из папки "\pics\", которая находится в той же директории, что и Ваша база, т.е. каждый раз, когда Вы думаете, что вызываете на просмотр изображение из базы Вы подгружаете его в базу, мне так кажется...................... .
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39105329
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
simplyВышеприведенный код выполняет загрузку в базу файла изображения из вне, а именно из папки "\pics\", которая находится в той же директории, что и Ваша база, т.е. каждый раз, когда Вы думаете, что вызываете на просмотр изображение из базы Вы подгружаете его в базу, мне так кажется...................... .Вот, вот... а по кусочку вашего кода понять что там происходит на самом деле трудновато.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108016
Martinisiko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые simply и Joss, если указанный мною код загружает файл в базу данных, то это и есть та самая проблема о которой я говорю. Мне казалось что этим кодом я лишь показываю файл лежащий в папке "pics". Как же тогда показывать файл, не загружая его в базу?
И как удалить теперь все эти копии файлов что сидят теперь в базе?
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108046
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тот кусочек, что Вы привели загружает в элемент Image загружаете рисунок. При этом он преобразовывается в DIB формат. При следующей загрузке старый рисунок убирается и грузится новый. При использовании таким способом, расти база не должна. Но Вы ведь там ещё что-то делаете? Или нет.
И смотрели ту ссылку, что я Вам дал? Там есть примеры для разных методов.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108099
Фотография simply
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выложите базу в архиве, желательно с папкой, в которой она находиться и её содержимым. Посмотрим, что там за зверь.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108166
Martinisiko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые simply и Joss,
я еще раз просмотрел кучу интернет страниц по теме, везде загружают файл через атрибут ".Picture". То есть здесь не должно быть проблем. После того как я загрузил=показал картинку, ничего больше я не делаю. Пользователь выбирает через комбо-бокс названия авто в базе данных и получает картинку и информацию по ней. Все.

Удалось узнать вот что. Эти копии Аксесс хранит в файле MSysResources. Зайдя в эту таблицу можно быстро удалить все копии. (копии начинаются "xxx_", где xxx порядковый номер). База данных после удаления копий уменьшилась в два разаю Но проблему это не решает. Ведь продолжая пользоваться базой данных, она продолжает расти. То есть ее придётся чистить время от времени.
Может кто знает как запретить Аксесс делать эти копии. После того как в этом разобрался, нашел вот по этой ссылке описание этой проблемы, может там кому понятнее.
https://misterslimm.wordpress.com/2013/08/05/supersize-msaccess-microsoft-access-and-the-unexpected-embedded-image-cache

Автор не пишет как запретить Аксесс делать копии, тоже предлагает чистить таблицу "MSysResources".

Проблема получается не в той строчке кода что я привел, копируются почти все картинки, что есть в формах. Например картинки-кнопки, которые я ставил напрямую через аксесс, без кода VBA.

Может кто сталкивался?
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108187
Martinisiko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемый Joss, Спасибо за информацию. Я тоже остановился на варианте 5. Именно он и используется в этой программе. Где то именно как вы и описали, а где то и таким вот "странным" образом, как в первом сообщении.
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108196
Predeclared
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если UserForm попробовать под эти цели?
...
Рейтинг: 0 / 0
Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
    #39108250
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Martinisiko,
вот тут уже подобное обсуждалось
http://www.sql.ru/forum/1001973/baza-puhnet-ot-vneshnih-izobrazheniy
и похоже автор нашел решение :)
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Access 2013, Файл базы данных растет с каждым ее использованием. За неделю + 50мб
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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