SQL: Visual QuickStart Guide
What this book does right: The myth that it's more important for a programming book to be technically accurate than well written endures even though the opposite situation is true: A lucid explanation of a difficult concept or clever algorithm is more valuable than a bug-free implementation of same.
Consider Ken Henderson's The Guru's Guide to Transact-SQL , a book full of useful examples but so marred by the author's bloated style and disrespect for the language that I cringe every time I'm forced to read the text rather than simply lift a code snippet. Henderson even goes so far as to include an introductory section, titled "On Formality," about how he is going to split infinitives (even though their syntax is a burden for the brain to parse) and how he is going to use "data" in the singular sense (even though doing so can cause confusion) and how he considers "record," "row", and "tuple" to be interchangeable terms (even though they're not) and on and on. Readers would be aghast to find such self-exculpatory nonsense in the pages of Donald Knuth or Patrick Henry Winston. As for SQL: Visual QuickStart Guide, the author, a statistical programmer, presents each topic with a mathematician's sense of restraint and order. I've found few typos, no technical errors, and consistent use of technical terms.
Almost every aspect of SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, and DROP is covered. What distinguishes this book is that every ANSI SQL statement -- and there are hundreds of examples -- was tested on six separate DBMSes: Microsoft Access 2002, Microsoft SQL Server 2000, MySQL 4.0, PostgreSQL 7.1, Oracle 8i, and Oracle 9i (8i and 9i differ considerably in SQL-92 compliance). The examples in each section increase in depth and complexity, so you can stop reading once you've learned what you need to know. When an ANSI SQL statement doesn't work as-is on a particular DBMS, the author shows you how to fix it or offers workarounds (which is particularly useful for MySQL, whose adherence to the SQL standard is poor). These DBMS-specific fixes are given as separate "DBMS Tips" apart from the main body of text, so they don't interfere with the conceptual flow. This organization is especially useful for consultants who have difficulty keeping track of how each implementation deviates from the ANSI standard, and is superior to the alphabetical, segregated approach of O'Reilly's SQL in a Nutshell.
This book was shoehorned into the publisher's Visual QuickStart format, which, as I implied earlier, doesn't work well for procedural languages, but does work for a declarative language like SQL. A two-column layout separates examples from explanatory text. Red type highlights the relevant portions of code and results. The book is extensively cross-referenced and has an 18-page index. This layout also makes the book a good quick reference for experienced programmers. Almost all the examples use a single, sample database (so there's no need to memorize multiple schemas). The code listings and sample database are available for download.
The derivative nature of programming books makes it difficult to determine whether the author truly has mastered the material. Writing a book is a difficult task (perhaps even harder than programming) but, at the risk of exaggerating my point, I suspect that any determined, organized, and competent programmer could write any O'Reilly Nutshell book by paraphrasing existing materials. But if an author establishes his credentials early, the reader gains a sense of trust that remains throughout the entire book. In the introduction to this book, the author avoids an error that almost every other SQL-book author commits: that SQL stands for structured query language. According to ANSI (the only legitimate arbiter here), it stands for S-Q-L and nothing more. Fehily even offers an amusing explanation of why structured query language is the worst possible description of SQL. Throughout the book, the author also scatters bits of practical advice (job candidates are wise to say my-es-kyu-el, not my-sequel), beginner-friendly insights ("Although SELECT is powerful, it's not dangerous: You can't use it add, change, or delete data or database objects."), and advanced topics (optimization, concurrency control, logical data independence). It is these asides and respect for basic research, rather than swaths of expository text, that lend authority.
This book describes the effects of nulls in almost every aspect of SQL, including the interpretation of null-contaminated query results. You can no more be a competent SQL programmer without understanding nulls than you can be a competent LISP programmer without understanding recursion. Particularly useful are the discussion of three-value logic (true/false/unknown) and an algebraic derivation of how a null can cause a subquery to return an empty result unexpectedly (which has bitten me more than once).
As a wizened developer weary of hand-holding users and junior programmers through routine queries, I've found it mollifying to give away copies of this book (it's cheap) to reduce my interrupt stack.
What's Missing: Some missing items that I would have found useful:
- A glossary
- A quick syntax reference
- A chapter about statistics
- A chapter about advanced SQL "tricks"
- DB2 coverage
- Coverage of security commands (GRANT/REVOKE)
- An expanded query-optimization discussion
- Improved normalization examples
- A little more mathematical rigor in the set-theory discussion
my 2nd FP for today.
toaster,toaster toaser, do you have toast in you yet i think
so!!!!!!!!!!!!!!!!!!!Im not a toaster!!!!!!!!!!And one more
thing........YOUR A TOASER!!!!!!!!!!!!!! AND A COOKIE WITH MILK SOAGE
MILK!!!!!!!!!!AND A BUTT WITH POOP IN IT!!!!!!!!!!!!!!!!
a hole bunch of pumping/dumping going on now upon the pacific crest annex of wall street of deceit. so many billyonerrors on felonium.
& oe =UTF-8&q=microsoft+%22sanjay+ahuja%22&btnG=Google+ Search
& oe =UTF-8&q=microsoft+%22bill+weisgerber%22&btnG=Goog le+Search
& oe =UTF-8&q=microsoft+attacks+linux+open+source&btnG= Google+Search
2003-07-23 GATES, WILLIAM H. III Chairman 206,227 Sale at $26.5812 - $26.634 per share. (Proceeds of about $5,487,000) 2003-07-23 GATES, WILLIAM H. III Chairman 476,123 Sale at $26.5371 - $26.5811 per share. (Proceeds of about $12,645,000) 2003-07-23 GATES, WILLIAM H. III Chairman 948,634 Sale at $26.484 - $26.537 per share. (Proceeds of about $25,149,000) 2003-07-23 GATES, WILLIAM H. III Chairman 1,369,016 Sale at $26.222 - $26.481 per share. (Proceeds of about $36,076,000)
fauxking phonIE billonly FraUDs they are
http://www.google.com/search?hl=en&lr=&ie=UTF-8
http://www.google.com/search?hl=en&lr=&ie=UTF-8
http://www.google.com/search?hl=en&lr=&ie=UTF-8
consult with/trust in yOUR creator. vote with yOUR wallet. the daze of the Godless georgewellian fuddites is WANing into coolapps.
looking further into the billmirror:
2003-05-30 BALLMER, STEVEN A. Chief Executive Officer 4,551,548 Planned Sale (Estimated proceeds of $112,392,285) 2003-05-30 BALLMER, STEVEN A. Chief Executive Officer 152,619 Automatic Sale at $24.83 - $24.9 per share. (Proceeds of about $3,795,000) 2003-05-30 BALLMER, STEVEN A. Chief Executive Officer 3,993,801 Automatic Sale at $24.54 - $24.82 per share. (Proceeds of about $98,567,000) 2003-05-29 RAIKES, JEFFREY S. Vice President 400,000 Sale at $24.542 per share. (Proceeds of $9,816,800) 2003-05-29 BALLMER, STEVEN A. Chief Executive Officer 4,000,000 Automatic Sale at $24.28 - $24.64 per share. (Proceeds of about $97,840,000) 2003-05-29 BALLMER, STEVEN A. Chief Executive Officer 4,000,000 Planned Sale (Estimated proceeds of $97,832,000) 2003-05-28 BALLMER, STEVEN A. Chief Executive Officer 2,000,000 Planned Sale (Estimated proceeds of $49,313,800) 2003-05-28 BALLMER, STEVEN A. Chief Executive Officer 808,518 Automatic Sale at $24.74 - $24.86 per share. (Proceeds of about $20,051,000)
& just whoisit do you think is REALLY paying for all of this FUDgeFest execrable?
more details @ trustworthycomputing.com
[ Reply to This ]
Starting Score: 0 points
Moderation -1
100% Offtopic
Extra 'Offtopic' Modifier 0
Total Score: -1
an armIE of felonious billyonerror softwar.. (Score:0)
by Anonymous Coward on Thursday July 31, @01:33PM (#6581581)
gangsters, appear unable to asphyxiate a handful of selfless hobbyists. not that they're (the gangsters) not trying.
lookout bullow.
pay no heed (or anything else) to va lairIE's pateNTdead PostBlock(tm) devise.
Hi,
I'm a first year programming student at an Ivy League school and I've
just finished my Visual Basic classes. This term I'll be moving onto
C++. However I've noticed some issues with C++ that I'd like to
discuss with the rest of the programming community. Please do not
think of me as being technically ignorant. In addition to VB, I am
very skilled at HTML programming, one of the most challenging
languages out there!
C++ is based on a concept known as Object Oriented Programming. In
this style of programming (also known as OOPS in the coding community)
a programmer builds "objects" or "glasses" out of his code, and then
manipulates these "glasses". Since I'm assuming that you, dear reader,
are as skilled at programming as I am, I'll skip further explanation
of these "glasses".
Please allow me to make a brief aside here and discuss the origins C++
for a moment. My research shows that this language is one of the
oldest languages in existence, pre-dating even assembly! It was
created in the early 70s when AT&T began looking for a new language to
write BSD, its Unix Operation System (later on, other companies would
"borrow" the BSD source code to build both Solaris and Linux!)
Interestingly, the name C++ is a pun by the creator of the language.
When the first beta was released, it was remarked that the language
would be graded as a C+, because of how hideously complex and unwieldy
it was. The extra plus was tacked on during a later release when some
of these issues were fixed. The language would still be graded a C,
but it was the highest C possible! Truly a clever name for this
language.
Back to the topic on hand, I feel that C++ - despite its flaws - has
been a very valuable tool to the world of computers. Unfortunately
its starting to show its age, and I feel that it should be
retired, as COBOL, ADA and Smalltalk seem to have been. Recently I've
become acquainted with another language that's quite recently been
developed. Its one that promises to greatly simplify programming. This
new language is called C.
Although syntactically borrowing a great deal from its predecessor
C++, C greatly simplifies things (thus its name, which hints at its
simpler nature by striping off the clunky double-pluses.) Its biggest
strength is that it abandons an OOPS-style of programming. No more
awkward "objects" or "glasses". Instead C uses what are called
structs. Vaguely similar to a C++ "glass", a struct does away with
anachronisms like inheritance, namespaces and the whole
private/public/protected/friend access issues of its variables and
routines. By freeing the programmer from the requirement to juggle all
these issues, the coder can focus on implementing his algorithm and
rapidly developing his application.
While C lacks the speed and robustness of C++, I think these are petty
issues. Given the speed of modern computers, the relative sluggishness
of C shouldn't be an issue. Robustness and stability will occur as C
becomes more pervasive amongst the programming community and it
becomes more fine-tuned. Eventually C should have stability rivaling
that of C++.
I'm hoping to see C adopted as the de facto standard of programming.
Based on what I've learned of this language, the future seems very
bright indeed for C! Eventually, many years from now, perhaps we'll
even see an operating system coded in this language.
Thank you for your time. Your feedback is greatly appreciated.
They're, err, generrrrrrric!
Isn't Chris Farely dead?
Oh, that's Chris Fehily. Sorry, my bad.
HA! YOU MUST BE A TOASTER!!!