Database Systems Engineering

Nick Ryan & Dan Smith

International Thomson Computer Press, 1995. ISBN 1-85032-115-9

List of known errors in 1st edition

Many of these errors have been corrected in subsequent reprints, but some still remain. In particular, the smart quotes problem persists in many parts of the book.


p7: Figure 1.1

Some horizontal and vertical lines have disappeared from this diagram, probably as a result of multiple transfers between PCs and Macs.

pp13-16 and 168-183:

Unfortunately, someone turned on smart quotes between page proofs and printing. This problem appears throughout the book. A few incorrect opposed pairs appear on these pages. The quotes should follow the C and SQL standard notations and use pairs of single quotes (') for SQL character constants and C character types, and double quote (") symbols for C string constants.

pp231-234: Section 9.3.1 Logic languages

Opposed pairs of quotes again, this time in PROLOG. All string constants should be enclosed in ' characters.

p240: Figure 10.3 Unrepeatable read

The caption is correct, but the diagram is that of Figure 10.2 repeated from the preceding page.

pp281-282: Sort-merge Join

The algorithm should read:
    Sort R on R(a)
    Sort S on S(b)
    read first tuple from R
    read first tuple from S
    while (tuple R exists) 
        while (R(a) > S(b))
            read next tuple from S
        if R(a) = S(b)
            concatenate the tuples
            put concatenated tuple on the result
        read next tuple from R

p309: Section 13.3.4 Join

There are several errors in the join notation as printed here.

p310: Figure 13.10 Natural Join

There are several errors in the Appointment table and one in the result, R. The sixth row of R should have a DoctorID value of 52, not 50, and the Appointment table should be as follows:
Doctor ID Patient ID Appt Date Appt Time
50 100 1994-08-10 10:00:00
50 100 1994-08-16 10:50:00
50 102 1994-08-21 11:20:00
50 103 1994-08-10 10:10:00
50 104 1994-08-10 10:20:00
52 102 1994-08-10 10:00:00
52 105 1994-08-10 10:10:00
53 106 1994-08-10 11:30:00

p311: Semijoin

pp321: Chapter 14 SQL

In the CREATE TABLE statement for the person table, the column last_name should be of type VARCHAR(24).

pp329-365

The opposed pairs of quotes problem is at its worst in this chapter. Again all SQL character constants should be enclosed in '...'. From p353 on, the embedded SQL examples also include opposed pairs of double quotes which should be replaced by "...".

p 344:

In the second text paragraph, T.Williams' date of birth has the wrong year (1981). It should be 1972.

pp371,373-376, 379-380, 383 and 404-406:

The opposed pairs of quotes problem continues in the following two chapters, but note that in POSTQUEL, "..." is used for character constants.

p406: Section 16.7 Summary

The last word of the 2nd line is should be the number 15.

p414: Sizeup

On line 6, B-tree searches should be O(logN), not O(N logN).


Please let us know if you have any comments on the book or find any other errors
Nick Ryan and Dan Smith

Last updated: 9th February 1998