Я пытаюсь изменить один из примеров проектов FireDAC, чтобы использовать существующий файл SQLite в качестве источника базы данных. Образец отлично работает без изменений и подключается к своей базе данных. Однако я не могу понять, где указана база данных, к которой он подключается, чтобы изменить ее.
Согласно документации, должно быть свойство Database
на компоненте TFDPhysSQLiteDriverLink
. Его нет: его не существует. Я даже преобразовал форму в текст и просмотрел настраиваемые свойства всех компонентов, и нигде не определен путь. Его нет и в коде — выборка очень мала, и путь вообще не определен.
Другим вариантом в документации является включение модуля FireDAC.Phys.SQLite
, хотя это не объясняет, как установить базу данных, поскольку, насколько я могу судить, этот модуль включает только компонент. И когда я ищу свойства базы данных (см. прикрепленное изображение), ни один из них ни в одном классе этого модуля не кажется мне тем, что мне нужно. Ближайшая строка для компонента резервного копирования - сомневаюсь, что это то, что мне нужно. В классе TFDPhysSQLiteConnection
есть свойство SQLiteDatabase
, но оно доступно только для чтения.
Список всех свойств базы данных, определенных в модуле FireDAC.Phys.SQLite
Я также попытался создать определение временного соединения во время выполнения, двойным щелчком по компоненту TFDConnection
. Это дает только исключение:
Исключение при двойном щелчке компонента TFDConnection
Единственное решение этой проблемы, которое я нашел, находится в документации по XE5, где сказано: noreferrer">для установки переменной окружения $(PUBLICDOCUMENTSDIR)
. Я уже должен был сделать это, чтобы запустить демо (ранее оно выдавало такое же исключение в строке FDConnection1.Connected := True;
; теперь этого не происходит, демо отлично работает во время выполнения). Очевидно, что это изменение не повлияло на дизайнера, и Я даже не знаю, правильно ли я ищу, так как в документации говорится о настройке свойства Database
.
Так что я в тупике. Где он устанавливает базу данных? Его нет в DFM или каких-либо свойствах потоковой передачи; его нет в свойстве, определенном в документации (TFDPhysSQLiteDriverLink.Database
не существует и не имеет ничего похожего); его нет в редакторе времени разработки TFDConnection
(даже несмотря на то, что он выдает исключение, я думаю, что файл, указанный здесь как свойство, появится в потоковом DFM); это не в коде; ...где еще это может быть?
(Я никогда раньше не использовал FireDAC, так что я полный нуб, кстати. Я самообучаюсь с помощью документации и примеров.)