Build a virtual bookstore (a la  These are the steps:


1. Model entities such as books, their authors, topics, publisher

house, etc... Create a schema and an E/R diagram representing your

database.  Create useful and meaningful relationships between the

emtotu sets. Also describe any constraints you want to have on your

schema (referential integrity constraints, functional dependencies,



2. Transform your E/R diagram into SQL syntax and create a "real"

database in SQL Server using your model.


3. Populate your database. You can either use "synthetic" data or

download a list of "real" books and populate your database. You should

have at least 25 books in the database. If you choose to use synthetic

data, please use meaningful names and entries.


4. Create another table(s) storing customers along with their VISA and M/C

card numbers and other relevant information. Create meaningful

relationships between customers and books, authors, etc...


5. Create a WEB portal to your database. Books should be able to be found

using names, authors, ISBNs and keywords. Once a search has completed, a

web page should be created summarizing the results of the search. Also for

each book in the summary, there is a link that the user can click on to

expand the information about the respective book.


6. Add e-commerce functionality to your website. Let a user be able to

buy his/her desired book from your database. Each buyer needs to be

able to order his book, and fill in his credit card information. (Do

not worry about security issues). Store the credit card information in

your database, so that a user does not have to enter this information

more than once. However, allow the user to modify his credit card

information.  For each book title keep track of how many copies there

are currently in stock.  When a customer buys a book, decrement that



BONUS: If a user is searching for a book you don't have in stock, your

database application should go to, search for the

respective book and add it to your database. The price of the book

should be $5 over that at  For example, in order to search

for Kundera's "Unbearable lightness of being" you would submit the

following URL:


NOTE: Do not make your schema too complex: the entire project should

contain at most 3-4 entity sets plus relationships.