This introduction to database systems covers both object-oriented and object-relational design. The first half of the book provides in-depth coverage of databases from the point of view of the database designer, user, and application programmer, with material on the latest database standards SQL-1999, SQL/PSM, SQL/CLI, JDBC, ODL, and XML. The second half of the book looks at databases from the perspective of the DBMS implementor, focusing on management. Principal techniques are covered, with ample information on query optimization. Advanced topics include multidimensional and bitmap indexes, distributed transactions, and information integration techniques. Previous sophomore-level courses are required in data structures and software systems. The authors teach computer science at Stanford University.