1) make your project thinking about the next possibilities of database change
2) In the database use names of tables and fields that can be understood by any database. use maximum size names as allowed by all database, usually 31 ASCII characters. In the same way, for the name of the columns.
3) In the UniDAC / FireDAC project use the common components: dbConnection, dbWaitCursor, dbQuery, dbDataSource, etc ... more are proper components for each Framework as FireDAC / UniDAC xxxPhysxxxDriversxxx
4) If possible, use MACRO replacement in the confections of the connections or querys. This way, your project will be ready for any database change.
5) Be careful not to overcomplicate your project with excess macro overwriting table names or fields.
6) If your project also serves for MOBILE use DIRECTIVES for each platform, each platform must have its definitions and forms in different units.
Use the directives through, for example:
{IFDEF ANDROID} code {ENDIF}
see {INCLUDE xxxx.pas} or {i xxxx.pas} or any text file with Delphi code.
7) To embed files next to your project, look for using OPTION, DEPLOIMENT options so that the necessary ones for your application are sent to the appropriate installation locations. See the RAD STUDIO help manual (or the Embarcadero online manual) for each platform's standard variables to install additional files from your application, such as the database in MOBILE / Windows / Linyx / macOS environments
This makes maintenance easy, if necessary.