I am sure that this is way too broad of a question to ask here, but heck, if anyone has any thoughts it would be helpful.
I wonder, how do you make a truly portable sql application? You see apps out there that can run on just about any SQL server. I have always wondered how they can do that? I mean, I have run into so many problems just moving the simplest things from one system to the next, from Linux to Windows, from Mysql to Postgres, MSSQL to MySQL, whatever.
The reason I ask is this, because when you go from Postgres to say Firebird, you have all your column or tables names in lowercase. Now that can probably just move right into Firebird if the datatypes are all setup right, but then all the names will be in UPPERCASE. Now your client app has a problem, wrong case.
So how do they do it? Just enclose everything (all table and column names) in double-quotes? Do all SQL servers support that?
FYI: My client app is Zope. Which, as I write this, is occurring to me that IT may be my problem. (Python code is case-sensitive)
I am really thinking out loud here, so dont feel like you need to reply. But, having any thought from you more experienced developers is always helpful.
Thanks.