Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 15.04.2011
Сообщений: 28

Размер фаила БД

25.10.2011, 23:58. Показов 1484. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,
проблема вот в чем,после удаления записи в таблице access объем размера фаила базы не изменяется,вопрос почему?
программа в архиве прикреплена к теме
Вложения
Тип файла: rar АБДД.rar (3.84 Мб, 25 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.10.2011, 23:58
Ответы с готовыми решениями:

Как определить размер фаила с ifstream или как-то по другому?
Как определить размер фаила с помощью ifstream или как-то по другому?

Загрузка из фаила
Здрасти. Какой код нужен чтобы загрузить в массив данные из текстового файла?

Создания фаила
Есть такой скрипт который читает фаилы в зависимости от гет запроса. Но вот беда не могу сделать чтобы он создавал фаилы если их нет...

19
 Аватар для sharky123
47 / 47 / 5
Регистрация: 02.03.2010
Сообщений: 119
26.10.2011, 01:37
Когда мы удаляем запись, то мы ее после не видим, а она остается в БД как бы в "невидимом" для глаз пользователя состоянии. Для этого необходимо выполнить процедуру, подобную той, что в MS Access выполняется так (на примере 2003):
сервис/служебные программы/сжать и восстановить БД
После этой процедуры БД теряет в весе, за счет стирания ранее удаленных пользователем записей
Надеюсь понятно изложил ))
1
 Аватар для Alex_pac
1302 / 708 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
26.10.2011, 07:39
проблема вот в чем,после удаления записи в таблице access объем размера фаила базы не изменяется,вопрос почему
..............
Миниатюры
Размер фаила БД  
1
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.10.2011, 10:53
Сжатие БД после удаления каждой записи - это все равно как во время приема пищи мыть всю посуду после каждой проглоченной ложки (вилки) - т.е. полная чушь и бред.
Более того, применяя этот прием Вы гарантированно сделаете работу с Вашим приложением не только некомфортной, но и неэффективной (хотя бы из-за сугубо монопольного юзания). Ну и дико тормозной тоже.

Что касается увеличения размера файла БД - то это общепринятая для скл-серверов технология резервирования дискового пространства для обеспечения стабильной производительности при "плановом" росте объемов хранимой информации.
При желании можно подробно почитать об этом в той же википедии например.
1
1 / 1 / 0
Регистрация: 15.04.2011
Сообщений: 28
26.10.2011, 15:25  [ТС]
зачем же делать сжатие после каждого удаления записи?
можно сделать отдельную кнопку с процедурой сжатия базы данных
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.10.2011, 15:35
Не надо делать никаких кнопок ! И вообще нельзя никаких АДМИНИСТРАТИВНЫХ функций по обслуживанию БД впихивать в клиентское приложение !!! Это же ведь элементарные меры хотя бы для обеспечения безопастности потери данных при работе в многопользовательскитм приложении.
Сжатие как и резервирование, восстановление, "ремонт" и т.д. относятся к сервисной службе и должны выполняться квалифицированным специалистом и в строго определенном прядке.

И вообще совет Вам: обращайте внимание на размер файла БД акцеса только тогда, когда он превысит гиг. До тех же пор просто забудьте про эту "проблему", просто уяснив для себя, что на производительность работы это никак не влияет !

Добавлено через 37 секунд
безопастности от потери данных
1
1 / 1 / 0
Регистрация: 15.04.2011
Сообщений: 28
26.10.2011, 15:59  [ТС]
гиг она точно превысит
и что мне тогда делать?
0
 Аватар для Alex_pac
1302 / 708 / 107
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
26.10.2011, 18:00
гиг она точно превысит
и что мне тогда делать?
https://www.cyberforum.ru/atta... 1319600359
0
1263 / 706 / 62
Регистрация: 21.12.2009
Сообщений: 2,256
26.10.2011, 18:01
Цитата Сообщение от Aizent Посмотреть сообщение
и что мне тогда делать?
Немедленно забыть про акцесс, выбросить его в мусорку и пользовать более серьезные клиент - серверные СУБД
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.10.2011, 22:51
Delphi
1
гиг она точно превысит
Основания для такого заявления имеются ? В студию !

Delphi
1
и что мне тогда делать?
Когда Ваша база "дорастет" до такких объемов, очень возможно, что Вы будете уже умудренным опытом "базовиком" и "перевезти" Вашу базу на мсскл (как наиболее родную акцесу) для Вас будет делом пустяшным
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
27.10.2011, 08:34
Правда что, если есть предпосылки для такого роста БД. Стоит отказаться от Access.
Цитата Сообщение от MsGuns Посмотреть сообщение
Когда Ваша база "дорастет" до такких объемов, очень возможно, что Вы будете уже умудренным опытом "базовиком" и "перевезти" Вашу базу на мсскл (как наиболее родную акцесу) для Вас будет делом пустяшным
Опять же, мы не знаем, может человек там рипы фильмов хранить будет. :-)
Ну, или вообще файлы. Мы не знаем.
Ну, а сжатие, да, в клиента выносить кнопку не стоит. А вот процедурку и вызов из консоли с параметрами для сжатия сделать можно.
Т.е. при необходимости можно будет сделать сжатие не делая никаких манипуляций в Access.
Ну либо разделить интерфейс.
На админский и пользовательский.
И соответственно поделить функционал.
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
27.10.2011, 10:52
Delphi
1
Опять же, мы не знаем, может человек там рипы фильмов хранить будет.
Ага, решать проблема "фильмотеки" посредствои акцеса - это типа возить на стройку бетон стаканами.
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
27.10.2011, 11:07
Ну про фильмы я юморил.
Но человек там картинки хранить собирается.
А может и еще чего. В общем я не так уж и ошибся.
Ну что сказать.
Стоит пересмотреть архитектуру программы в целом.
Например как в базе храним информацию о файле.
Ссылку на файл.
А файл в файловом хранилище.
В общем иначе строить программу.
0
1 / 1 / 0
Регистрация: 15.04.2011
Сообщений: 28
28.10.2011, 16:10  [ТС]
в БД будут загружаться документы юридического отдела предприятия,а документооборот там довольно таки большой я думаю)

Добавлено через 3 минуты
а насчет хранить ссылки на фаил в БД,я так уже и сделал
и интерфейс разделил
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
28.10.2011, 16:23
Ну вот а теперь еще подумайте на тему почему у вас для автоматизации отдела используется Access. У вас один человек в отделе?
А если более, то им базу перекладывать с одного компа на другой. Или по очереди ходить как по нужде?
Ну а далее.
На самом деле есть схожая задача. Но пока в стадии сбора мыслей и взгляда на реализуемое в целом.
Потому что я не очень приемлю локальные решения к которым потом надо лепить еще что-то.
Так что можно попробовать вместе подумать. Может в итоге получится более интересный проект.
Правда я смотрю в сторону веб интерфейса. И с делфи здесь связываться не хочу.
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
28.10.2011, 16:43
Delphi
1
БД будут загружаться документы юридического отдела предприятия
Одно из двух.

1. Вы - юрист или сотрудник (рук-ль) юротдела, желающий бумажные горы "засунуть" в компьютер. Да так, чтобы можно было быстро найти (в т.ч. по содержимому, т.н. контекстный поиск). К тому же надо чтобы ВСЕ документы лежали в одном хранилище, а не по столам сотрудников.
Вам нужно просто посмотреть готовые решения, коих нынче предостаточно. Для начала можно просто нагуглить, тупо набрав в поисковике фразу "система документооборота"

2. Вы - программист, которому поручили (тот же юрист) чего-нибудь наваять в духе электронного документооборота. Тогда акцес+сжатые документы в BLOB-полях. Приложение должно работать в режиме "только чтение". Для дозаписи/замены документов надо написать еще одно, "админское" приложение, с которым будет работать понятно кто. Остальные юристы могут искать и выбирать в базе любые документы (разрешенные им разумеется), распаковывать на свои лок.диски и работать с ними. Но вот класть их на место старых - уволльте - только через админа
Это - реальный проект, который Вы вполне можете реализовать за достаточно короткий срок имея только делфу.
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
28.10.2011, 16:48
Ну на гора могу толкнуть вот сюда.Alfresco.
Я смотрю в ее сторону но пока с юристами не сели и не обсудили хватит ли данного функционала.
Или нужно доставать напильник.
И да MsGuns, мы опять же не знаем ECM нужна или это просто электронный архив.
И кстати вот с этим не совсем согласен.
Цитата Сообщение от MsGuns Посмотреть сообщение
Это - реальный проект, который Вы вполне можете реализовать за достаточно короткий срок имея только делфу.
Ибо ECM система подразумевает хранение версионности документа а это довольно таки сложный момент с точки зрения хранения информации.
Я поэтому пока в состоянии сбора мыслей и взгляда на реализуемое в целом.
А не приступаю к реализации.
Ибо мне кажется что каждый документ в этом варианте должен представляться как некоторый контейнер. Внутри которого лежат все его версии с момента зачатия документа т.е. регистрации в системе и да родов т.е. попадания в архив.
0
1 / 1 / 0
Регистрация: 15.04.2011
Сообщений: 28
28.10.2011, 18:18  [ТС]
rdama
зачем же перекладывать базу?
программа будет залита на один компьютер да,но доступ к ней с других комп. будет по сетке
насчет веб тож думал,но решил все-таки на делфе
MsGuns
не то и не другое
все намного проще))) я студент,это будет моей курсовой
идейку подкинул сотрудник одного предприятия,т.е. я ее делаю и на курсовую и для юр.отдела этого предприятия

Добавлено через 9 минут
MsGuns,
кстати насчет сжатия документов может подскажете как реализовать?
в БД будут фаилы не более 1 мб,ограничение я сделал
а если объем фаила более 1 мб хочу их сжимать(уменьшать)
прогуглил,нашел что-то типа
Delphi
1
2
3
Jpg.CompressionQuality:=90;
Jpg.JPEGNeeded;
Jpg.Compress;
но чтот не выходит(я на правильном пути вообще?)))
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
28.10.2011, 20:55
Не морочьтесь, вполне достаточно использовать ахиватор xxxZip, xxxRar, xxx7z etc
Для надежности можно либо включить его в инсталяшку либо как требование к конфигурации ПК
Вызывать используя обычный ShellExecute

Добавлено через 10 минут
Чтобы не быть голословным...
Есть такая область, как контрольно-измерительные системы. Программа "снимает" показания датчика и записывает их в таблицу. Так вот, если показание N точно такое же, как N-1, но его НЕОБХОДИМО записать. Да, в таблице будут 2 (а может быть и больше) одинаковых записей. НО ТАК НАДО !
Вы скажете, надо добавить в таблицу UID
А зачем ?
Таблица обрабатывается, например, каждый час и РЕЗУЛЬТИРУЮЩАЯ гистограмма записывается в другую таблицу, после чего ЧИСТИТСЯ !
Вопрос: с какой радости тут UID, который будет абсолютно лишним, т.к. не используется совершенно

Добавлено через 5 минут
Delphi
1
Ибо ECM система подразумевает хранение версионности документа а это довольно таки сложный момент с точки зрения хранения информации.
Ну это, батенька, уже Вас понесло
Не надо придумывать черных кошек в черной комнате
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
29.10.2011, 04:35
Цитата Сообщение от MsGuns Посмотреть сообщение
Ну это, батенька, уже Вас понесло
Ну отчего же.
Как раз таки если внутри системы предусматривать цепочки согласования документа., то вопрос версионости как раз и возникает.
Если у документ в процессе согласования проходит через несколько отделов. Каждый из отделов вносит свои изменения в него. И комментирует их в сопроводительной информации к нему.
А документ исходный мы не можем заменить. Потому что это первичная болванка.
Вот так и возникает версионость файла. Т.е на каждой стадии согласования возникает новый документ и необходимо хранить и его и предыдущие версии.
После прохода до стадии Согласован.Завершен документ уходит в архив.
Вот как-то так должно все это работать.
А задача которая решается ТС это автоматизация ведения реестра договоров. И до кучи его линковка с файлами. Но не документооборот.

PS. Опять же я сразу сказал что у меня схожая задача, но не такая. Более глобальная. И реестр договоров это мелочь.
И да MsGuns, прав когда сказал
Это - реальный проект, который Вы вполне можете реализовать за достаточно короткий срок имея только делфу.
Ваш проект именно такой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.10.2011, 04:35
Помогаю со студенческими работами здесь

ЗАгрузка фаила
Пытаюсь загрузить фаил: if(is_uploaded_file($_FILES)) { copy($_FILES, "/audio/".$_FILES); } ...

чтение с фаила
есть фаил с такими данными то есть это вещественные числа: 9744.953989759.6790189773.1769659780.539481 Так читаю: __fastcall...

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

Вывод картинки из фаила
Помогите пожалуйста вывести картинку из фаила. Использовать токлько окно BGI пишу на def-cpp какие функции для этого нужны?

Чтение из фаила txt
Привет всем. Решил написать прогу которая читает координаты из фаила и рисует график. Запарелся целую ночь сидел так и не смог прочитать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru