20.07.2013 Views

Beginning SQL

Beginning SQL

Beginning SQL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 11<br />

This <strong>SQL</strong> adds formats (data) to the format table:<br />

INSERT INTO [Format]([Format])<br />

VALUES(‘VHS’)<br />

INSERT INTO [Format]([Format])<br />

VALUES(‘Beta’)<br />

INSERT INTO [Format]([Format])<br />

VALUES(‘DVD’)<br />

The primary key of this table is an identity, which means it automatically creates a number for the key<br />

(1, 2, and 3). Thus, 1, 2, and 3 are used as the foreign key in the next table.<br />

This <strong>SQL</strong> adds data to the Inventory table:<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(1,1,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(1,2,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(2,1,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(2,2,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(2,3,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(3,2,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(4,2,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(4,3,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(5,2,’N’)<br />

INSERT INTO Inventory(FilmId, FormatId, CheckedOut)<br />

VALUES(5,3,’N’)<br />

The process of renting movies consists of running a query to find out what is available, selecting a specific<br />

inventory item and marking it as rented, and building a new record in the Rentals table with the<br />

member ID, the inventory ID, and the date rented.<br />

Try It Out Renting Movies without Transactions<br />

1. Select all available inventory records so that you can pick a movie:<br />

304<br />

SELECT Inventory.InventoryId, Films.FilmName, Films.PlotSummary, Format.Format<br />

FROM (Inventory<br />

INNER JOIN Films ON Inventory.FilmId = Films.FilmId)<br />

INNER JOIN Format ON Inventory.FormatId = Format.FormatId<br />

WHERE (((Inventory.CheckedOut)= ‘N’));<br />

2. Select a specific movie and mark it as rented:<br />

UPDATE Inventory<br />

SET Inventory.CheckedOut = ‘Y’<br />

WHERE (((Inventory.InventoryId)=7));

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!