I Always check the database on startup with Updatedatabase. I use SQLite and although it seems to work fine, I Always get a lot of exception (only in the IDE debugger) like:
[FireDAC][Phys][SQLite]-308. Cannot open / define command, which does not return result sets. Hint: use Execute / ExecSQL method for non-SELECT commands
Because there are a lot of these exceptions every startup, I disable these exceptions. But this is a fairly common exception class, so then all Firedac exceptions are not visible while debugging. Could you fix this, or at least wrap it in one of your own exceptions so I can ignore them without suppressing all firedac exceptions?
Problem is with FireDac, we execute statements like "pragma foreign keys" that return result sets, but firedac thinks it's wrong. So as far as I know the only way to execute such statements is calling OpenOrExecute method which raises the exception no matter what.