Originariamente inviato da king size slim
il problema di access è che a quanto ho visto alcuni comandi SQL non sono standard, ad esempio non esiste il limit come in mysql e alcune volte è necessario utilizzare HAVING


proprio per questo motivo volevo un abstraction layer nel mezzo per uniformare le query per qualsiasi db...

non è detto che in futuro anzichè nell'as400 debba poi scrivere in un db mysql
uhm, le cose non sono esattamente così. Il LIMIT di MySQL in realtà non è standard ANSI-SQL, ad esempio in Oracle hai row_number e in MS SQL e SyBase usai TOP e START AT, mentre HAVING è correttamente compreso nello standard ANSI, e poi supporta delle funzioni precise.

Come ho detto sopra non conosco Access, ma trattandosi di un prodotto Microsoft ritengo probabile che comprenda una libreria più vicina a quella di MS-SQL (derivata in larga misura da SyBase) e quindi ragionevolmente in linea con lo standard ANSI SQL.

Quello di cui ti dovresti preoccupare è appunto cercare di impiagare il più possibile l'SQL standard, ed evitare grammatiche proprietarie come ad esempio TRANSACT-SQL (che è compresa in MS SQL, ma non sono sicuro lo sia in Access).

Circa la migrazione a MySQL, se hai a disposizione DB2, io ci penserei su bene prima di passare a MySQL.