Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 Site Related Forums
 The Yak Corral
 need a personal SQL boost

Author  Topic 

Sitka
Aged Yak Warrior

571 Posts

Posted - 2002-06-13 : 12:02:43
I wrote a large post about my situation then kicked the power bar breaker under this loaner desk and lost it.

The gist of it was.
I'm the only devel/prog/support guy at a company of 400
Responsible for: Intranet/ERP/MRP(Made2Manage)/Data
Touch: Access/MSSQL/Fox Pro/VB6/.asp/javascript

T-SQL skills seem to me to help with alot of things. I would like to acquire some fundamentals. It is noisy here (at work) and although I have ample time to self train I have been through so many torturous episodes of it I need a change of scenery. Most of the professional training I've had has been half info-mercial for a certain product, or too many hows and not enough whys (easy to forget the hows, whys are forever). I'm considering an training week somewhere to force some focus and get better, anyone ever take one of those. Or would a personal retreat with some good books and sqlteam be the equivalent. I know T-SQL skills are lifelong pursuits but I've never had a face to face conversation with someone about T-SQL. That alone would be worth the price if everyone in class was stoked and the exercises were cool.

Page47
Master Smack Fu Yak Hacker

2878 Posts

Posted - 2002-06-13 : 12:24:42
T-SQL is a product specific variant of a language. And SQL, like any computer language, is just syntax. Syntax is good to know, but a good database professional is does not make.

The powerful skill to be mastered is relational thinking. SQL programming is very different than VB6/.asp/javascript in this regard. Sure the syntax is different, but more importantly, the approach is different. If you are a strong vb/c/java programmer, you inclination is going to be to approach sql programming iteratively. That how most so-called database people do it. It's a shame, really. Sniff around this board for a while and you'll see tons of example of what I mean.

I say, if you truely want to be a database rockstar, study relational database theory from the likes of Joe Celko, C.J. Date, Fabian Pascal and Codd himself. The syntax is just a matter of practice and looking things up in books on line.

If, on the otherhand, you just want to be a little better at not having to look up syntax in BOL, then I would suggest you stay far away from the above mentioned (as they can really eff with your mind ) and either take a class or buy a learn-in-21-days book. Note: I've never taken a computer class of this nature, so I don't know what it would be like. AnotherNote: I have read books though.

Either way, reading (and asking questions) this forum won't hurt.

<O>
Go to Top of Page

M.E.
Aged Yak Warrior

539 Posts

Posted - 2002-06-13 : 12:34:50
I think I probably find myself in a simular situation as you. I've had this dts package running for 90 minutes and it's still chugging away. I've found the few courses I've taken are always so one sided. The Microsoft ones teach you nothing but how to use this wizard and whats the fastest was to convert to Microsoft from oracle. I did one for ASP which was helpful, but on the same note kinda useless for anything past declaring a connection and opening a recordset (way too basic for what I needed). Never seen a purely T-SQL course before, if not I'd be tempted to take it.

Books are where I started, First thing was Learn tsql in 21 days by sam (I still use it as a reference guide every so often). If you want books, look through the 'books' section on here... sqlteam has put hours into researching them so they know better then I do.

What actually helped me the most was helping others on here. Taking their problems, researching em and then posting an answer. Although Rob and Page47 usually post way to fast for me to keep up with, it's a great way of learning. Difference between going 'hey thats a cool function' and going 'hey thats a cool function.. now how would I apply it to make it work for this problem posted'... you'll keep it in your memory alot longer. I'd suggest learning atleast basic fundamentals first though (memorize the differences between outer and inner joins or they'll pounce on ya.. hehe )

Oh ya... Use BOL, best reference you'll have

anychance your companies looking for a second devel/prog/support guy? )


---Edit... One note, Leech off the experienced peoples knowledge. Page47 being one of them... The knowledge I've got just from there rants and what not have probably been the most helpful. The 'relational thinking' bit there is probably what I've learned the most. Thanks to a few fridays, I now enjoy hunting and killing cursors myself
-----------------------
The best answer = just do as rob or page47 say.


Edited by - M.e. on 06/13/2002 12:38:15
Go to Top of Page

robvolk
Most Valuable Yak

15732 Posts

Posted - 2002-06-13 : 15:09:01
It's interesting that you brought this up, timing-wise; I've spent the last few days helping a coworker with a SQL class she's taking at a university. We actually did everything over instant messenger (MSN) because she has a dialup connection. If the forums in SQL Team don't provide the instant dialog, you can try something on the phone or IM with someone more knowledgeable.

Page and M.E. are absolutely right about thinking in a relational manner, it is EXTREMELY hard to make that transition if you have a programming background. It took me months to really get the hang of it. If you find that it's making your brain throb, take a step or two back from it and let it sit for a day or so.

Some of the advice I gave to my friend: if you slap yourself in the forehead when answering a question, that's a good sign. It means you UNDERSTAND the concept. Another good sign is when the light bulb goes on in your head, that is truly the glimmer of understanding. With luck you'll have a lot of moments where the light bulb will go on, and a few seconds later you'll slap yourself in the forehead. Congrats! You've nailed it.

I agree with the suggestions about Celko, Date, and Pascal, although I prefer

The Guru's Guide to Transact-SQL

or

The Guru's Guide to SQL Server Stored Procedures, XML and HTML

both by Ken Henderson. Whew, it's been a while since I earned my kickback!

Ken is probably easier to pick up if you're new to SQL; the other guys get very theoretical at times without providing a practical example of what they mean (sorry byrmol, but Date and Pascal are horrible in this respect) That's not to say that theory is bad, it's very important to UNDERSTAND the idea behind these concepts and not just know them by rote. Nor will you get by with purely practical knowledge and nothing else, you need the balance of theory and practice.

Also get Inside SQL Server by Microsoft Press, you will use this book forever. And don't forget SQL for Dummies (seriously, it's a good starter)

Another thing you should try to do is to get more than one opinion, don't just follow one person's or teacher's advice/practice (not even mine...hmmmm, ESPECIALLY not even mine)

The reason I mention this is part of the old saying: "Those that can't do, teach", and that is based on some of the remarks my friend made regarding her class. So if you find that the advice of the professor doesn't jibe with what you see in a recent book, you should spend more time on that topic to make sure you've covered every angle.

If you go with a university type course, they could very well over-stress theory. Then on the job you might create a theoretically perfect, Domain Key Normal Form database, that performs like shit because you have to join 17 tables together for any useful query. Don't sign up for a course with a very generic subject, like "Database Design Theory", find something more specific.

On the other side of the coin, a boot camp kind of course will get you building cookie-cutter databases that the MS Access wizards and templates could make for you. One of my personal peeves about this is the use of the autonumber/identity column as primary key. I admit this is a hot button with me, but it's amazing how many people with a lot of experience don't understand that it ISN'T NECESSARY or even DESIREABLE to design tables that way. They just use an ID column and can't explain why, or explain why and can't admit that it's redundant or useless. How many times have you seen a table like this:

ID   StateCode    StateName
1 AL Alabama
2 AK Arkansas
3 AZ Arizona
4 CA California


If you find someone who supports this kind of design, steer clear of their advice; they're misinformed.

Anyway, hope this helps. Don't hesitate to post questions here, everyone is pretty quick to jump in with some help and advice.

And if they are looking for another developer at your company, I need the work more than M.E. does!

Go to Top of Page

Sitka
Aged Yak Warrior

571 Posts

Posted - 2002-06-13 : 15:27:15
Page47 wrote
if you truely want to be a database rockstar

Rock star! how about a bango pickin', train riding, hobo... Dirty but Happy.

Thanks for the replies folks. I've been lurking for a little while, registered a few days ago. Some of the replies and help is amazing.
Typical is a snipet of code, a plea for help and some magical set based elegance that just has me thinking, how could the answer come from that post? There are definitely a few rock stars around although they probably don't consider themselves as such. It will be some time before I can help anyone directly but I like the idea of that help working to double benefit.

Here is a typical internal dialogue
>
"Man, I'd just like to get better than lousy at one or two things. Not visit lousyville everyday because someone says hey fix this or get me that and it is some piece of trash thing you were lousy at some time ago and everyone mistook that lousyness for competence. So now they want you to do it again but it is 2 months later and you have forgotten how you got thru it, you are not proud of what you did before but it was working, in retrospect you see the errors but they weren't corrected. Next time you'll do better, but next time comes around and the pattern repeats. Now enhance the junk that was barely working before. This generates another lousy struggle and erases recent progress made in a different area."
"Go away and Shut Up"
"Who said that?"
>
Not really that bad but ya get the point.

How does this fit in with needing a boost? (Had to ask myself that to make sure I'm staying on topic here. lol)
The skills I'm lacking in general are the ones that can "really eff with your mind". Got to get me some of those because the range of interfaces, syntax and other noise (< I like to call it) is limitless and everchanging.
If there are no relational thinking classes (or better yet tropical islands where the wahines bring you drinks while SETS roll in) I'll just kick back and tune in and try to catch the flow.

Oh yea there is a C J Date Book on the night stand but I found it thrilling in a trapped underwater kind of way.

Edited by - sitka on 06/13/2002 15:40:25
Go to Top of Page

Merkin
Funky Drop Bear Fearing SQL Dude!

4970 Posts

Posted - 2002-06-13 : 19:18:21
Hi Sitka

Welcome aboard!
All the advice in this thread is good, I'm going to put in another book recommendation though, Professional SQL Server Programming, it's in the SQL Team bookshop www.sqlteam.com/store.asp

As for training, where are you ? There are a number of good sql server consultants on this board who would love to come in to your company and do some training. Including Graz (who runs the site). So that might be an option.

Other than that, hang around here, read the articles, read the forums, when you see a question you don't know the answer to, look it up and try to figure it out. That is the best learning excersise I can think of.

Good luck!

Damian

P.S. Hey Page, someone cares

quote:

Page47 being one of them... The knowledge I've got just from there rants



Damian
Go to Top of Page

graz
Chief SQLTeam Crack Dealer

4149 Posts

Posted - 2002-06-13 : 23:08:43
quote:
As for training, where are you ? There are a number of good sql server consultants on this board who would love to come in to your company and do some training. Including Graz (who runs the site). So that might be an option.


And since my main project was unexpectedly cancelled by "management" today I find myself with loooots of available time Anybody have a project for a slightly lazy DBA?

===============================================
Creating tomorrow's legacy systems today.
One crisis at a time.
Go to Top of Page

Sitka
Aged Yak Warrior

571 Posts

Posted - 2002-06-14 : 08:59:48
As for training, where are you ? There are a number of good sql server consultants on this board who would love to come in to your company and do some training.


That's kind of funny because when I had some similar thoughts last night driving home. I'm a lousy salesman, but I'll see how the idea sits with folks around here.

Go to Top of Page

MichaelP
Jedi Yak

2489 Posts

Posted - 2002-06-14 : 09:52:59
Hey Graz, there is the issue of a certain message board system that needs to be re-written. I think you'd do a great job at that!



Michael

Go to Top of Page

graz
Chief SQLTeam Crack Dealer

4149 Posts

Posted - 2002-06-14 : 10:18:25
quote:
As for training, where are you ?


I'm in Kansas City but travel isn't a problem. You can email me for more info (graz@sqlteam.com).

quote:
Hey Graz, there is the issue of a certain message board system that needs to be re-written. I think you'd do a great job at that!


Yeah! That's actually high on my priority list ... right after finding a new job

===============================================
Creating tomorrow's legacy systems today.
One crisis at a time.
Go to Top of Page

M.E.
Aged Yak Warrior

539 Posts

Posted - 2002-06-14 : 10:55:16
quote:
graz
Chief SQLTeam
Crack Dealer



Include that on your resume maybe?

-----------------------
Take my advice, I dare ya
Go to Top of Page

AjarnMark
SQL Slashing Gunting Master

3246 Posts

Posted - 2002-06-14 : 11:45:54
quote:
Anybody have a project for a slightly lazy DBA?


Sorry Graz, everything here at the city requires a TOTALLY lazy DBA. I'm afraid you're underqualified... or over-qualified, I'm not sure which.

Maybe you could help Rob find the Yak (hint, hint). The way things are going, there may be a few people on this site who are just about ready to pay somebody to do that.

Go to Top of Page

Ledell
SQL NASCAR Parsing Chick

107 Posts

Posted - 2002-06-14 : 21:34:17
quote:
----------------------------------------------
Some of the advice I gave to my friend: if you slap yourself in the forehead when answering a question, that's a good sign.
----------------------------------------------

Except, it really hurts when I do that, Rob!

(BTW ... A big hearty THANKS, for all your help.)


Seriously, tho Sitka ... the articles on here (including the additional material/links at the end of the articles) are good, too. Have found several links for Normalization and Theoretical Foundations, that have been very helpful.



*************************
Hey, Fem. Got this code from Rob. It's all on one line. Can you help me out?

Edited by - ledell on 06/15/2002 07:24:57

Edited by - ledell on 06/15/2002 16:23:10
Go to Top of Page
   

- Advertisement -