Oracle is one of the most widely used database systems in the world. It runs on virtually all platforms, from Windows-based PCs to UNIX servers. It also comes with an array of programming tools and environments and provides access to the database from a variety of high-level programming languages.
In recent years, more and more universities in the United States and elsewhere are using Oracle in their database courses as the primary vehicle to illustrate database concepts and principles. This has resulted in the need for a concise book on Oracle programming to supplement the traditional text in the database courses. The main motivation for writing this book is to satisfy this need. This book can also be used by nonacademic professionals interested in learning about Oracle programming.
Three sample databases are introduced early in the book, and most of the chapters use these databases for illustration purposes. These are the grade-book database, the mail-order database, and the portfolio database.
The grade-book database contains data typically tracked by an instructor of a course and includes information about students, courses being taught, which student is enrolled in which course, grading components for courses, and the individualís scores in these grading components. An application that allows instructors to update the database and students to access their grades is presented in the text.
The mail-order database contains data relevant to a mail-order company that sells items to customers. A variation of this database is used in the Web shopping application that allows users to shop on theWeb for items. The users have the ability to search for items, add and update a shopping cart, and check out.
The portfolio database contains data about companies, their share prices, and members who have an account with the brokerage company. An application that allows members to sign on to the system, obtain stock quotes, place bids, and so on is developed in the text.
Several application programs are developed in their entirety in the different programming environments discussed in the text . Other application programs are shown in part in the text, and the corresponding complete applications are available for download from the publisher's Web site.
This book is suitable as a supplemental text for an introductory database course that covers the relational model and uses Oracle as the database system for the course projects and assignments. Course projects can be developed using Embedded SQL in C or C++, or in Java using JDBC. Web projects can be developed using the PL/SQL Web Toolkit, PL/SQL Server Pages, Java Servlets, Java Server Pages, or XML. An entire chapter is devoted to suggestions for course projects. These course projects are typically assigned in introductory database courses where a team of students start with a problem statement, write the problem specifications, design the database, create the database in Oracle, and write application programs that access the database. Some of the chapters also have review problems for the readers to go over to consolidate their understanding of the concepts presented in these chapters.
The supplements for this book can be found at the following URL: www.aw.com. Please follow the link to Supplements Central. These supplements include:
First of all, I would like to acknowledge Matt Goldstein at Addison Wesley for working with me closely and diligently to get this book out on time. The staff at Addison Wesley is always a pleasure to work with. I would also like to thank the following reviewers who have provided very useful and critical comments to improve the presentation and content of the book in all its editions: Louis Mazzucco, SUNY Institute of Technology; Panos Chrysanthis, University of Pittsburgh; S. David Wu, Lehigh University; Akira Kawaguchi, City College of New York; Louis Mazzucco, SUNY Cobleskill; Mark Barnard, Marquette University; Willie Favero, Professional; Ashesh Parekh, Professional; Laurian Chirica at CalPoly, San Luis Obispo; James Geller, New Jersey Institute of Technology; Chad Peiper, University of Illinois at Urbana-Champagne; Bina Ramamurthy, SUNY at Buffalo; Ahmet Ugur, Central Michigan University; and Sean Wang, George Mason University.
I would also like to acknowledge all my students who have diligently worked on various projects using Oracle over the past several years at Wichita State University and Georgia State University. In particular, I would like to acknowledge the effort put forth by Krissy Echols, Veena Pujari, and Radhika Venkataraman, in designing and implementing the investment portfolio database application discussed in the SQLJ chapter, and to Radhika Venkataraman for her effort in designing and implementing the Web shopping application discussed in the Java Servlets chapter.
Finally, I would like to acknowledge the support my family has shown to me during the writing of this edition of the book. Thank you, Radhu, for all the hard work and understanding, and thanks, Nannu and Nammi, for your excellent cooperation and constant encouragement during the writing of this book.