pt.82 wrote: И вот про файлики script tables и forms можно поподробней чуть не понял
Для примера возьмем проект с названием "project", который работает с SQLite, и разберём его анатомию. В папке с проектом находятся:
Report - папка, в которой хранятся файлы с отчетными формами *.fr3
Script - папка, в которой хранятся файлы со скриптами *.pas и главный скомпилированный файл script.dcu
forms.xml - файл с описанием пользовательского интерфейса: формы и компоненты.
settings.ini - настройки проекта
sqlite.db - база данных
sqlite3.dll - библиотека для работы с СУБД SQLite
tables.ini - описание структуры базы данных
project.exe - исполняемый файл
project.vdb - служебный файл
Жирным шрифтом выделены файлы, которые содержат информацию, относящуюся к конкретному проекту. То есть новая версия проекта отличается от предыдущей версии этого же проекта только этими файлами. Предполагается, что файл с исходниками (script.pas) не передаются конечным пользователям. Файлы settings.ini и sqlite.db содержат пользовательскую информацию, а остальные файлы не изменяются от версии к версии.
Таким образом, при переходе к следующей версии конечному пользователю необходимо:
заменить файлы *.fr3, script.dcu, forms.xml, tables.ini новыми
обновить структуру базы данных с помощью SQL-скрипта
То есть изменение версии вы делаете в среде разработки (конструкторе), в том числе и необходимые изменения в структуре базы данных. Но дополнительно вы создаёте SQL-скрипт, который необходимо однократно выполнить на базе данных конечного пользователя, чтобы привести её в соответствие со структурой новой версии проекта. Он необходим только в случае наличия в базе пользовательских данных, которые нужно сохранить. Если данные не важны, то можно просто удалить старую базу данных,а при запуске проекта создастся новая (пустая), на основании информации, хранящейся в tables.ini.
При переходе на другую версию среды разработки так же потребуется заменить файлы project.exe и project.vdb
Визуальное программирование:
блог и
телеграм-канал.