<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><BR><DIV><DIV>On Dec 30, 2006, at 9:09 AM, Jimmie Houchin wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><P style="margin: 0.0px 0.0px 0.0px 0.0px"><FONT face="Helvetica" size="3" style="font: 12.0px Helvetica">I've avoided RDBMS because I read a lot about the Object Relational mismatch in Squeak, Ruby, Python, etc. mailing lists. So how do I store my millions of objects, search and access them. I could easily store them in files and search via Swish-e. But managing millions of files in the file system is kludge. Ugh. So I've been thinking that I'm working harder on a kludge than it would be to learn SQL and use PostgreSQL.</FONT></P> </BLOCKQUOTE></DIV><BR><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">So with that nudge from you, I sit at my desk right now reading one of my several SQL books. Thanks. :)</DIV></BLOCKQUOTE><BR><DIV>Put down the book.  </DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>You want to load up GLORP.  It rocks.  It is as easy to work with as an OODB, but much more flexible and is backed by PostgreSQL.  Grab a copy of squeak, load the postgres client, then load up glorp.  You're golden.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Except you need a meta model.  You can write one in glorp, you can build one with a GUI like Apple's EOModeler - free with WebObjects.  The EOGlorp package will let GLORP work off of your EOModel files.  Once you have your meta model, glorp is just like working with objects.  You write queries in Smalltalk like</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>aDatabase readOneOf: User where: [:user | user login = 'jhouchin'].</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>-Todd Blanchard</DIV></BODY></HTML>