One thing I don’t really understand is that we have advanced, expensive, magical databases, like MySQL, Oracel, whatever, and still everywhere I look there are a few things developers just don’t want to use, actually fighting against these things:
- null values in fields
- foreign keys. They hold that the program should handle the relatinos between the tables, the ideal DB is made of independent tables without any relationships stored
- fields that allow for null values
- sequences in Oracle
- anything that has been introduced after ’87
I just wonder why don’t they code in FORTRAN or COBOL or BASIC instead of Java.
Right on. I think the problem is that you have no-talent hacks writing code for you ;). All too ordinary in my experience. Disclaimer: I am not actually a database wonk, nor am I a computer scientist.
The reason we use relational databases to begin with is to represent intrinsic relations in non-uniform structured data. If you don’t get that, use a CSV or some god-awful hand-rolled binary/compound format.
However, keep in mind that designers can get over-zealous in trying to use the DB schema to express relations that are entirely artificial. That’s what “view”s are for if I understand correctly.
This isn’t a matter of language choice. http://www.canaimasoft.com/Products.htm
Nah, not all of them are “no-talent hacks”. The one I had in mind is a quite good programmer, just a total control freak in a sense. The “If I do it I know it’s right, but I don’t trust other people” type.
As for being over-zealous, I don’t think I am. I mean, using foreign key relation between customer and contract does not seem an “entirely artificial” relation.
Yes, you are right, it is not a matter of language choice, the reference to the language was linked to the “anything that has been introduced after ‘87″ part.
Why are coders eager to jump on the new languages, while not risking to try the “new” DB features?
Ah, yes, and welcome, first commenter, gotta look up a prize for you.