Please sit down and imagine...
-
And now imagine a 500+ company, managing its inventory (worth of millions), employee, customers, contact and so on, on Access... (They where located in Lod, just near enough to get infected)
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
Meh. Too new-fangly. Inventory management in Excel is all any real company ever needs! For that matter, Excel can handle ALL your data! (Don't know whether to use the Joke or Rant type for this post. I feel dirty from writing it.)
Sudden Sun Death Syndrome (SSDS) is a very real concern which we should be raising awareness of. 156 billion suns die every year before they're just 1 billion years old. While the military are doing their part, it simply isn't enough to make the amount of nukes needed to save those poor stars. - TWI2T3D (Reddit)
-
... a database, that was designed 25 years ago (SQL 6.5) and since then only upgraded, but never updated... Do you feel me?!
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
-
I know of a similar company ... but because they don't have "database expertise" they re-type reports from Access into Excel to send out to clients. Yes ... I really did say "re-type"
CHill60 wrote:
Yes ... I really did say "re-type"
Well, copy & paste is hard!
I wanna be a eunuchs developer! Pass me a bread knife!
-
No, me neither. How do you define upgraded vs updated? Is an update 'throw everything away and start again'? Windows was launched 35 years ago - has it been updated? Or upgraded? Or both? I don't see the difference. Semantics...
pt1401 wrote:
Windows was launched 35 years ago - has it been updated? Or upgraded?
Downgraded.
I wanna be a eunuchs developer! Pass me a bread knife!
-
... a database, that was designed 25 years ago (SQL 6.5) and since then only upgraded, but never updated... Do you feel me?!
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
Tables is still tables, Shirley? You might want to recook a few stored procedures, scripts, and queries, but unless the data has changed hugely and new table structures haven't been implemented well, it shouldn't be too painful.
I wanna be a eunuchs developer! Pass me a bread knife!
-
Please stop whining: Twenty five years ago they did know how to design a database. :laugh:
Well, yes, 25 years ago there were some people who knew how to design databases, but there were an awful lot who didn't. Many people came to SQLServer or Oracle directly from ISAM systems, so it was hardly surprising that many didn't really grasp RDBMS. Have things changed since then? Maybe - I think that people are generally a bit more clued up than they used to be on this front but I can guarantee that even as I type this, somebody, somewhere is creating a "database" with mile-wide tables and not a single foreign key to be seen - and they don't have the excuse of it being new technology. People who don't know RDBMS 1.01 (the fact that the 'R' stands for "Relational") are still banging together monstrosities that will be causing pain for the poor souls who have to clean up after them for many, many years to come. Until the world comes to its senses and introduces the death penalty for denormalisation, this problem will continue.
Slogans aren't solutions.
-
Well, yes, 25 years ago there were some people who knew how to design databases, but there were an awful lot who didn't. Many people came to SQLServer or Oracle directly from ISAM systems, so it was hardly surprising that many didn't really grasp RDBMS. Have things changed since then? Maybe - I think that people are generally a bit more clued up than they used to be on this front but I can guarantee that even as I type this, somebody, somewhere is creating a "database" with mile-wide tables and not a single foreign key to be seen - and they don't have the excuse of it being new technology. People who don't know RDBMS 1.01 (the fact that the 'R' stands for "Relational") are still banging together monstrosities that will be causing pain for the poor souls who have to clean up after them for many, many years to come. Until the world comes to its senses and introduces the death penalty for denormalisation, this problem will continue.
Slogans aren't solutions.
PeejayAdams wrote:
Until the world comes to its senses and introduces the death penalty for denormalisation, this problem will continue.
Denormalisation isn't necessarily a bad thing, unless you mix it up with randomly-dump-any-value-where-you-feel-like-it "methodologies". If you need a lot of derived values, for example, it can often be less costly to have them handled within the database, rather than build them into a front end, which may radically change, year over year. Denormalisation can also provide significant performance boosts, especially where joins begin to resemble spiderwebs built by drunken spiders. For me, the sole function of a db is to provide needed data as efficiently as possible. Most of the time, that means it's best if it's at least third normal, but "most of the time" isn't "always". You shouldn't close doors to effective pathways.
I wanna be a eunuchs developer! Pass me a bread knife!
-
... a database, that was designed 25 years ago (SQL 6.5) and since then only upgraded, but never updated... Do you feel me?!
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
So only INSERTs and DELETEs? :laugh: :laugh:
-
PeejayAdams wrote:
Until the world comes to its senses and introduces the death penalty for denormalisation, this problem will continue.
Denormalisation isn't necessarily a bad thing, unless you mix it up with randomly-dump-any-value-where-you-feel-like-it "methodologies". If you need a lot of derived values, for example, it can often be less costly to have them handled within the database, rather than build them into a front end, which may radically change, year over year. Denormalisation can also provide significant performance boosts, especially where joins begin to resemble spiderwebs built by drunken spiders. For me, the sole function of a db is to provide needed data as efficiently as possible. Most of the time, that means it's best if it's at least third normal, but "most of the time" isn't "always". You shouldn't close doors to effective pathways.
I wanna be a eunuchs developer! Pass me a bread knife!
Well, yes, I agree that we need to be pragmatic and I was maybe being slightly flippant in suggesting that all forms of denormalisation, rather than most, should lead to the slow and painful death of the perpetrator :)
Mark_Wallace wrote:
If you need a lot of derived values, for example, it can often be less costly to have them handled within the database, rather than build them into a front end, which may radically change, year over year.
I'm not saying that I would never add redundant data but I'd need a rock solid case for doing so. In my experience, redundancy pretty well always ends in tears. Maybe not today, maybe not tomorrow but somewhere down the line ...
Mark_Wallace wrote:
Denormalisation can also provide significant performance boosts, especially where joins begin to resemble spiderwebs built by drunken spiders.
It's very rare for this to be so; the optimiser thrives on foreign keys - it is, in itself, optimised for normalised databases. If joins are becoming spidery and problematic, I'd be looking for the cause of that before I considered reducing their number by denormalising the DB.
Mark_Wallace wrote:
For me, the sole function of a db is to provide needed data as efficiently as possible. Most of the time, that means it's best if it's at least third normal, but "most of the time" isn't "always".You shouldn't close doors to effective pathways.
I completely agree with that! My general rule of thumb is 3/4NF in most cases, 5NF if the thing has to really fly but that is, very much, a rule of thumb and rules should never be immovable.
Slogans aren't solutions.
-
... a database, that was designed 25 years ago (SQL 6.5) and since then only upgraded, but never updated... Do you feel me?!
Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.
Kornfeld Eliyahu Peter wrote:
SQL 6.5
IIRC, wasn't that the last version where every database had to have its own dedicated partition? :~
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer