powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ограничить объем вложения
5 сообщений из 5, страница 1 из 1
Ограничить объем вложения
    #39311109
Decabrist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
В таблице имеется поле "Вложение"
В форме имеется соответствующий контрол "Вложение"
По задумке в это поле должны вносится файлы картинок. Можно несколько картинок на одну запись (поле это позволяет), но хотелось бы во первых ограничить вложения именно картинками, что бы не пихали туда документы и не относящиеся к делу фалы. Во вторых ограничить объем файла. Ну например что бы можно было вносить только картинки *.jpg объемом не более 100 кБ. Возможно ли это сделать не слишком сложно и как?
Спасибо.
...
Рейтинг: 0 / 0
Ограничить объем вложения
    #39311110
Decabrist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И вдогонку. Подскажите пожалуйста какое ограничение у Access 2013 на объём базы. Хотел бы хранить картинки в ней. База не большая - тысяч на пять (край десять - но это уже маловероятно) записей в основной таблице, ну и на порядок меньше во вспомогательных.
...
Рейтинг: 0 / 0
Ограничить объем вложения
    #39311115
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Decabrist,

Ограничение на объем файла данных у Акцесса 2 Гб, но проблемы начинаются уже после 1 Гб, т.к. при некоторых операциях Акцесс создает временные таблицы и выйти за предел 2 Гб очень легко. Поэтому настоятельно не рекомендуется хранить файлы в сколько-нибудь значимых объемах в базе. Гораздо лучше хранить только имя файла в папке, а имя папки вычислять отдельно, например текущий каталог программы, подкаталог Pictures. Нужно только предусмотреть процедуру переименования файлов с одинаковыми названиями, например, добавлением цифры к имени.

Ну а если все же решите хранить, то размер файла лучше проверять до загрузки в базу, например так:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Sub CheckFileSize(strMyFile)
  Dim objFileSys As Object ' Scripting.FileSystemObject
  Dim objMyFile As File
  Set objFileSys = CreateObject("Scripting.FileSystemObject")
  Set objMyFile = objFileSys.GetFile(strMyFile)
  If objMyFile.Size > 6000000 then
    MsgBox "File is too big.", vbokonly
  Else
    MsgBox "File is OK.", vbokonly
  End If
  Set objFileSys = Nothing
  Set objMyFile = Nothing
End Sub
...
Рейтинг: 0 / 0
Ограничить объем вложения
    #39311123
Decabrist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MrShin,

Спасибо огромное. Что касается ограничений - база не большая. Если предположить что для каждой записи будет хранится две картинки по 100 кБ (а это будет не так, да и ограничить можно и 50 кБ - картинки чисто для представления в базе, а не для того что-бы их на весь экран рассматривать), то для 5000 записей понадобится 5000х2х100=1000000 кБ или 977 МБ. - Что вполне укладывается в названные вами ограничения. В пределе - с 10000 записей 2 ГБ. - но это маловероятная ситуация, вообще на текущий момент достаточно 2000 записей. Но думаю так же насчет хранения картинок отдельно - просто в этом варианте существует вероятность их потерять.
...
Рейтинг: 0 / 0
Ограничить объем вложения
    #39311124
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Decabrist,

Да, в таблице для вложений лучше больше ничего другого не хранить, а еще лучше вынести ее в отдельную базу и прилинковать таблицу.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ограничить объем вложения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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