Michael Boyink - 04 May 2008 09:50 AM
Hey Rich -
A few comments as a former MSAccess/VB guy.
EE isn’t a RDMS even though it shares some characteristics of one.
The structures you create using the EE control panel to hold content (weblogs, categories, fields etc) don’t map 1:1 to the MySQL database that EE runs on. For example - all weblog content is stored in the same MySQL tables, regardless if you use 1 or 10 weblogs on your site.
I think the best route for you to take is to install EE and look the underlying database structure. I almost wonder if an investigation of CodeIgniter might also be worthwhile - as a way to save some of the PHP development time you’ve mentioned but also be more in control of things at the database level.
Hi Michael,
I guess some understanding of EE’s architecture may help me a bit.
1) It is my understanding that EE is a development platform (CMS), that accesses data from a MySQL database.
2) Each weblog, as far as I understand, maps to a single MySQL table. In other words, a weblog is a user view of the table.
3) Since most applications require a logical database of multiple SQL tables in order to efficiently store data, most EE applications will require the definition of multiple weblogs, which appear to be in actuality multiple MySQL relational tables. This is commonly referred to as the the logical design. Weblogs (tables) are related to each other by unique keys in the MySQL tables.
4) EE allows the definition of views (same as a SQL View), by relating two (or more?) weblogs (tables).
5) EE will generate the necessary SQL statements in order to retrieve the data from multiple tables. If this is true, I am attempting to find out if the generating SQL statement is a series of single table SQL statements or SQL join statements, since joins can be optimized and yield far better performance than single table SELECT statements.
6) The weblog relationship views can be easily displayed on an EE form, without programming code.
7) For more advanced manipulation/filtering of data, it may be necessary to use CI programming code, in the same what Access may require Visual Basic.
I think that EE’s data handling is probably rudimentary compared to Access, however, it appears that EE can define Views via the relationship specification.
I hope this breaks it down a bit, and if you can tell me where my understanding is wrong, it will help facilitate my evaluation process. Thanks again for your assistance.
Rich