Errata

MySQL in a Nutshell

Errata for MySQL in a Nutshell, Second Edition

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
Printed Page 24
dealing with WHERE clause

Not really an error, but a strong suggestion:

I found out a couple of months ago that 'WHERE operations' on text are case-INsensitive(*), unless you do some pretty confusing things that I've never quite gotten to work.

In a 545 page book about MySQL, seems like something people would want to know.

(*) e.g.
"select * from mytable where myname like 'John%';"

not only finds "JohnF" but also "johnf" and "JOHNF" and "JoHnF" - yuck!

Anonymous   
Printed Page 24
dealing with WHERE clause

sorry, not really an error, but a strong suggestion:

I found out to my horror a coupla months ago that 'WHERE operations' on text are case-INsensitive(*), unless you do some pretty confusing things that I've never quite gotten to work.

That was on the short list of three things I wanted your book to tell me, and if it is there I cannot find it.

In a 545 page book about MySQL, seems like something people would want to know :)

thanks!

(*) e.g.
"select * from mytable where myname like 'John%';"

not only finds "JohnF" but also "johnf" and "JOHNF" and "JoHnF" - yuck!

Anonymous  Jul 01, 2008 
Printed Page 32
Last paragraph of page

The paragraph refers to a TEXT_FIELDS clause on the LOAD DATA INFILE statement. I am unable to find any confirmation that that clause is recognized or supported by MySQL 5.1. I referred to the online MySQL manual at http://dev.mysql.com/doc/refman/5.1/en/load-data.html, as well as the PDF manual for 5.0.

Thanks!

Anonymous  Jan 12, 2010 
Printed Page 34
Top SELECT statement

The SELECT statement is missing a 'FROM authors' line.

Stuart Ashton  Jul 27, 2012 
Printed Page 54
2/3 down the page

Under the heading for SHA1(), the subheading says SHA(string). It should say SHA1(string).

Anonymous   
Printed Page 54
2/3 down the page

Under the heading for SHA1(), the subheading says SHA(string). It should say SHA1(string).

Anonymous  Jun 19, 2008 
Printed Page 66
4th paragraph

the CHANGE clause is used to change the name of the city column,but not its column type and size. (CHANGE is both the name and data type of an existing column) and the example above 4th paragraph changes data type size. Shouldn't the paragraph above read: the CHANGE clause is used to change the name of the city column and column size,but not its position.

laserled  Jul 11, 2010 
Printed Page 83
CREATE TABLE statement syntax specification

Replace
[[AS] SELECT ...]
with
[[IGNORE|REPLACE][AS] SELECT ...]

The modifier affects behaviour when the statement considers rows
having a duplicate UNIQUE key: IGNORE retains the existing row and
discards the new one, while REPLACE overwrites the existing row.
Without the modifier duplicates cause an error.

Also needs an explanation in the text and an index entry.

Anonymous  Sep 09, 2008 
Printed Page 94
Next to last statement heading

I own the first edition of this book (ISBN 0-596-00789-2), but I have also noticed the problem in the second edition by examining what I could of it online. I also am not sure of the page numbers in the second edition.

The problem is that I cannot find the UPDATE statement described in detail anywhere in the book, especially regarding exact syntax, except in the "tutorial" section, pp 25-26 where it is briefly mentioned as a user feature. I also own "SQL in a Nutshell" (ISBN 0-596-00481-8). In that book, there are 10 pages, 459-469, devoted to the UPDATE statement, with an expostion of the WHERE clause as it relates to UPDATE following on pp. 469-470.

Maybe I have the wrong idea about the intented content of MySQL IAN. Since there is a great deal of duplication across the two publications, I am not sure that MySQL IAN was supposed to be self-contained. In any case, though, I feel that the omission of the formal detailed syntactical description of the UPDATE statement as it pertains to MySQL is a serious technical mistake.

If I am wrong and the UPDATE statement does appear in the 2nd ed, I would be glad to purchase it. Thanks.

Don Gillespie  Apr 26, 2010 
PDF Page 131
Line 11

It says lines in Windows are terminated by /n/r. Shouldn't it be /r/n

Robert Davies  Jul 28, 2010 
Printed Page 150
Under the definition for MAX

The definition for MAX should read "This function returns the highest number..." instead of "lowest number"

Anonymous  Feb 19, 2009 
Printed Page 240 & 249
.

I found an error on pg 240 that is also repeated on page 249 of the second
edition. Under the definition of character_length() and length() you will
find the following statement:
"In this example, in the WHERE clause we're using CHARACTER_LENGTH() to get
the number of bytes and LENGTH() to get the number of characters for each
name"

I believe it should read with CHARACTER_LENGTH() and LENGTH() reversed:
"In this example, in the WHERE clause we're using LENGTH() to get the
number of bytes and CHARACTER_LENGTH() to get the number of characters for
each name"

Anonymous  May 31, 2013