В разных СУБД очень разные подходы к транзакциям, к изоляции, разные возможности запросов.
Если использовать "минимум", то это будет и очень неэффективно и довольно неудобно.
А если пользоваться возможностями СУБД (транзакциями, например), то при переезде придется переделывать как минимум dao layer (а иногда, из-за проблем с производительностью, и что-то выше)