I think your real challenge will lie not is making it cross database, but in keeping
the performance up to snuff and doing that at the same time. Most people think in terms
of feature issues when they think of porting, but as a performance analyst of sorts I
see the other side of the coin. When I work with some of these e-application platforms
and ERP (Vignette, BEA, PeopleSoft, SAP, etc.), they all put high value on their DB
independence. But every one of them pays a price on the performance side. Either they
have huge routines to go through to optimize for each DB and then do checks to see which
one it is; or they end up writing such generic SQL that it does not take advantage of
any of the optimizations that these DBs make available in order to perform really well.
The moral here is to be aware of performance considerations as you go forward and try
and be DB independent. Remember too that people will bend from need and if what you're
doing provides enough value to them, they will support the DB you design and optimize for
because they need what you are doing.
"A man's maturity -- consists in having found again the
seriousness one had as a child, at play." --Nietzsche