- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
90 percent of databases is about storing information so that when you need to retrieve it later, you just have to provide a database name, table name and some key information, and it comes back. Oh and you can retrieve a bunch of related information at the same time, as long as you arrange your database properly.
10 percent of databases is about other stuff. Mainly performance and other minor complications.
But for some reason the way most people think about databases is 90 percent other stuff: performance, security, scalability, foreign keys, denormalization, nulls, stored procedures, GUIDs, compound vs composite keys, shards, grids, big data, materialized views, SQL injection attacks, NoSQL, and triggers.
As Scotty once said on Star Trek: “The more they overthink the plumbing, the easier it is to stop up the drain.”
Admin
[quote user="Compiler"]While I can't say this universally (I've worked with some very good DBAs), it often seems as if they've never developed software before.
For example, our genius DBA and his buddy on a contract (who was the expert in the field put together a system about a year ago to do a lot of processing of data to allow reports to run against the processed data.
Setting aside the parts about the reports being wrong (in the rare case they actually ran to completion) when doing a demo, they built this grandiose system to connect which stored procedures to run to another piece of data, table X.
So, for row 1 in table X, they could map it to collect stored procedures sp1, sp2, sp3... for row 2, it might run sp2, sp5, and sp6. Fine, maybe a nice abstraction...
Except in this mapping, they used the 'name' field from table X. When we discussed this, I pointed out the name field has an online admin function, and could change at any time, unlike the UniqueId field, which is an identity.
I was told that use of either field was simply a preference and equally valid, as either one could change.
I suppose that's theoretically true; someone could go into the database, set identity insert off, update the unique id to something else, then turn it back on, and the machine wouldn't run for row 2 in table X.
Or, they could unse the online function to administer the name column. Which, of course, was practically the first thing out of the box the users did.
Nothing like knowing your environment and building around the things which are likely to cause problems.
Chimpanzee-like attention to detail.[/quote]
Parse error: Mismatched parentheses line 2 char 56 Segmentation fault [core dumped][/quote] ... with a mismatched [/quote] tag, classic!
Admin
Admin
An annoying stance that has cost a few american buisnesses sales quite a lot of times when customers could not enter their address, despite the webpage claiming global shipping. It's utterly retarded. Names, adresses, phone numbers and a few other personal details should only ever be stored in a long, single string (or varchar) each. Getting it any more specific (such as first/last name) will invariably fuck you in the ass, hard, once the system outgrows it's initial spec. MAking shit MORE complex to fit a smaller requirement is just fucking daft in ways that I lack words to describe.
Admin
Admin
Admin
Admin
My Zip+4 goes to 11 !
Admin
My Zip+4 goes to 11 !
Admin
You have a different definition of "elegant" than the rest of the world.
Admin
You have a different definition of "elegant" than the rest of the world.
Admin
[quote user="3GSr"][quote user="anonymous"]Yes, I love when I have calculations and I need to insert one, and the references don't change (think of a bank statement where you have to insert a transaction between B and C....it helps if the stuff moving from C to D now points to the inserted C, instead of the original B)
That said, I also have encountered cases where it's handy the referential integrity is maintained... As with most things, perhpas there is no silver bullet....[/quote] In Excel you use the $ symbol to lock a reference. If you calculation points at cell D5, that will change if you insert/delete cells.
If you use $D$5 instead, then not matter how much the sheet changes, the calculation will read from D5.
$D$5 locks both row & column, you can use either or both. Handy for when you drag a formula down and want to reference the first column or something.
And in many cases you should be useng names ranges anyway.
Admin
If you actually do need a formula that always references the cell at D5, regardless of cells being moved around, any of the following will work (assume this goes in cell A1 for the sake of the formula with A1 that needs to calculate the offset relative to itself):
Admin
Very informative but all i have been seeing is runaround no soundly put advise one long claim letter and too much misinforming data.. Trust starts with trust when there is none all is not well
Admin
Admin