As some might noticed already I started migrating all the MySQL specific stuff to more generic queries and started using PDO in order to have support for PostgreSQL and sqlite. I’m not moving away from MySQL as it will be supported also, but since Starfish PBX wants to have a version that will be bundled with hardware we needed to find an alternative to it. I also aim to improve the performance on embedded systems and sqlite will be o good alternative to a heavy database server.
This process may take some time and It’s very boring to code but it’s no use to delay it more. It’s a good chance to go over all the code I wrote so far and fix some of the wrong decisions I made in the past. I’m also adding a database abstraction layer so the interface / backend code to have all the db logic in external functions, this way the code will be easier to maintain.
Something to keep in mind for the next time I code a MySQL powered application: never use camel case naming and always stick to ANSI SQL.