Yes - there are two ways to get through a firewall. So from the VPN perspective, you will want to be sure your client app and VPN pass bonjour packets so the remote iOS device can see the Mac that is advertising it's VNC screen sharing capabilities. AirPort hardware does a good job of proxying the VNC capabilities of sleeping macs and will even wake them up in response to incoming requests for screen sharing.
No - there is no iOS VNC client so your "out of the box" experience will involve going to the app store or otherwise installing an app like Screens or whatever other VNC app you prefer.
I can speak for screens working in a mixed VPN / NAT port forwarding combined network where Lion server has configured the VPN and controls the AirPort. I do use the screens connect software and location service when I am not using VPN since that allows me to locate my macs similar to Back to My Mac does using iCloud. The screens solution really works well for me with or without VPN or needing iCloud integration. You don't need the screens connect in most cases when VPN is set up, but it's nice to have and doesn't interfere with VPN either.
There are quite a few SQL clients in the App Store, PostGres, MySql, Oracle, SqlServer
Impathic make one for just about every database such as
I've not used these products myself, but they are known to be limited to creating queries graphically, you can't write your own SQL.
The higher end versions, do allow you greater flexibility and the iPad apps are pretty good, however and this is a caveat, if you run SQL that returns lots of data, the query runs slowly since the amount of data being returned can be large and the handling of the large amount of data is limited by the iOS devices memory. Write more concise SQL to return only the data you need and the apps run fine.
Best Answer
The full version of Spark View supports RemoteApp. You can try it here:
http://www.remotespark.com:8080
You'll have to install the gateway to make your internal network accessible.