logo       

Non-SQL databases and the Zend_Db namespace: msg#00002

Subject: Non-SQL databases and the Zend_Db namespace
Hi everyone,

Currently I'm in the process of writing up a simple proposal for Dbm-style databases (Berkeley DB, GDBM, etc.). The description for Zend_Db and Zend_Db_Adapter_Abstract both say, "Class for connecting to SQL databases and performing common operations." But there are other types of databases besides SQL: key/value pair (Dbm-like), XPath-based, object-oriented, and so on.

So where do the adapters for the other types of databases go if not Zend_Db? If someone wanted to create a read-only dBase adapter, where would it fit? Creating multiple top-level namespaces is sloppy from an organizational point of view as well as unintuitive for users. For that reason I propose that the current Zend_Db_* hierarchy move to Zend_Db_Sql_*. This way, we can keep abstract functionality in logical places: Zend_Db_Xml_Adapter_Db2 (IBM DB2 9), Zend_Db_Xml_Adapter_Berkeley (Berkeley DB XML), Zend_Db_Dbm, etc.

It might be a bit painful to do now, but I think the need will come up again later. If it's closer to 1.0 then it will be much more painful.

Thoughts?

-Matt



<Prev in Thread] Current Thread [Next in Thread>