>> There are still people who just want >> a cursor to a chunk of data which they pull in and iterate over rather than >> use SQL's power to manage data a set-at-a-time
I am dealing with such a project now. The schema consists of time stamp plus blob, where the blobs "map" directly to C++ structs. Of course, there are all sorts of useful data items in those blobs, and many of the capabilities of SQL are lost by reducing data to blobs. I think this is an extreme example of what you describe. The architectural excuse given was, I think, performance. >> Call me old fashioned but object-relational mappers worry me on this score I agree, except that you're not old-fashioned. In fact, I think you're on the cutting edge here. OO (including any attempt to apply it to database work) is no longer trendy. At best, it is tolerated... perhaps many people still haven't admitted that the proverbial emporer has no clothes, but no one's bragging about his (i.e. OOP's) new jacket, either. Microsoft, for example, is moving rapidly to functional programming and generic programming. Implementation inheritance has been lobotomized in C# compared to C++, for example, and Microsoft's new "Linq" database client technology is functional and generic. As for ORM, OODBMS (whatever that is), etc. proponents of such technologies continue to hem and haw about "object-relational impedance." This is just a fancy way of describing the problems that result when a good (Relational) model of reality must interface with a dysfunctional (OO) model. OO creates problems (or "opportunities"...) because it doesn't work. MIT has been saying this for 30 years. Few people are willing to consciously stick their necks out and say, "you know, I've always thought OOP was a bunch of B.S" but the sentiment's out there and it's justified. ________________________________________ From: sqlite-users-boun...@sqlite.org [sqlite-users-boun...@sqlite.org] On Behalf Of CityDev [nab...@recitel.net] Sent: Monday, July 27, 2009 9:33 AM To: sqlite-users@sqlite.org Subject: Re: [sqlite] What is a Relation? It's true that Codd and Date used the term 'relational' (They championed the N-ary Relational Model - others were around at the same time) but it's not easy to track the origin of the term in mathematics. Certainly the word implies joining things together. I guess the joining refers to fields (domains) within each row (n-tuple). If you look at other forums you often see novices (and others) using the word 'relate' as if it is some special way of joining information between two tables. They also clearly feel that you need to declare foreign keys in order to have a logical connection between tables. As you are no doubt aware, one of the guiding principles of the relational model is there is nothing that is not a data value so you are totally free to join anything to anything as long as you feel it might make sense. Relationships between tables are contingent - they can be there one day and gone the next. Any persistent relationship information (eg foreign keys) is optional and there for other purposes (eg documentation or referential integrity enforcement). Another common conceptual misunderstanding I've seen over the years is that the database is just a fancy filestore. There are still people who just want a cursor to a chunk of data which they pull in and iterate over rather than use SQL's power to manage data a set-at-a-time. Call me old fashioned but object-relational mappers worry me on this score. -- View this message in context: http://www.nabble.com/What-is-a-Relation--tp24674278p24681797.html Sent from the SQLite mailing list archive at Nabble.com. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users The information contained in this e-mail is privileged and confidential information intended only for the use of the individual or entity named. If you are not the intended recipient, or the employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any disclosure, dissemination, distribution, or copying of this communication is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender and delete any copies from your system. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users