6 users online. Create an account or sign in to join them.Users

Search

Hello,

I know there are some discussions about another database systems.

What is the situation? Is Symphony going to be support different databases and if, when?

If not, could this thread become a list what should and have to be changed to make Symphony to support other database systems too.

Well... the problem with other databases is that they all speak a different dialect of SQL. In order to make Symphony support this, you will need an abstraction layer that is fairly complex.

Since MySQL is a common database for the type of projects that run on Symphony-CMS, and the demand is to limited, the investment on adding this abstraction is simply to big and the return to little.

Even the investment on making the core accept other database types would be high, for instance because this will involve adjusting the installer and adding logic/convention to the configuration to allow a different database driver to be used.

If you want to take a shot at this (like I've done when trying to add support for SQLite) without core support, you will need to hack around :)

the problem with other databases is that they all speak a different dialect of SQL

MySQL is the problem here, because it's far from the SQL standard!

What would be the problem if converting SQL to standard one?

MySQL is the problem here, because it's far from the SQL standard!

All DBMSs are far from the standard, can't blame just one!

All DBMSs are far from the standard, can't blame just one!

There is a difference: the standard will be extended with additional functions or something is done differently and not supported. Compare MySQL and PostgreSQL.

Back to topic: An abstraction layer is the answer. (e.g. Doctrine DBL)

An abstraction layer is the answer.

Yes, it is. But the current available abstraction layers are far from perfect and like I said in my previous post: it's not worth it to create one within the context of Symphony CMS.

So the best thing that can be done is adding the ability to the core that allow extension developers to create custom DB drivers. MySQL would be the default dialect and the extension developer would have to create a translator. That is how I would add support for additional databases in Symphony.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.2 or above
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.0 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details