Debugging database problems on deployed systems - how do I locate the problem?

I have a simple application with one menu and two forms. The app runs on the development machine but, on the delivery system I get a database error message when I access a form which does a simple search. The development and delivery systems are almost identical (SUSE 13.2, MariaDB, Firefox browser) so I’m almost sure the problem is mine. But, how do I find out what the real error is ? The actual message in the app is “Error while accessing the database”. Clicking the View SQL link shows nothing at all.

As the delivery system is physically different I ran the deployment tool to check the database connection and it was happy with it ie the test worked and it showed my correct database name. I duplicated the database too so it is identical to the development system.

I have seen older posts which advised turning on “debug” mode. I have checked the FAQ’s and knowledge base and also gone through all of the settings I can find but I cannot find a debug mode option. Is it now deprectated?

Clearly what I need to know is what database operation (SQL probably) caused the problem. Can anyone point me in the right direction? Why didn’t the View SQL link not show me anything? Is there a debug mode and how do I switch it on?

I am only one full week into Scriptcase and I am liking it thus far. But, if debugging is this obscure, I may have to abandon it as the real world beckons…

David Goadby, North Wales.

Solved!. After some more coffee I found my problem. The debug mode is set on a per application basis not a deployment basis. For other newbies like me struggling with this you open your application in the development system and, on the Applications->Settings screen, it’s right there at the bottom. A simple toggle!

And, armed with the SQL, I found my problem in 20 seconds, so all’s well again… Oh, in case it’s helps somebody else in this predicament, the problem was something you cannot easily replicate between systems and that is MySQL user privileges. I didn’t permit my user to open the database for Insert or Update. A form that was going to add a record clearly needed this.