Transaction Management and Concurrency Control

Description

Question 6 to 11.

Don't use plagiarized sources. Get Your Custom Assignment on
Transaction Management and Concurrency Control
From as Little as $13/Page

Unformatted Attachment Preview

Database management
Module 10, Question 6-11
Question 6
ABC Markets sell products to customers. The relational diagram shown in Figure P10.6 represents
the main entities for ABC’s database. Note the following important characteristics:
• A customer may make many purchases, each one represented by an invoice.
• The CUS_BALANCE is updated with each credit purchase or payment and represents the
amount the customer owes.
• The CUS_BALANCE is increased (+) with every credit purchase and decreased (–) with every
customer payment.
• The date of last purchase is updated with each new purchase made by the customer.
• The date of last payment is updated with each new payment made by the customer.
• An invoice represents a product purchase by a customer.
• An INVOICE can have many invoice LINEs, one for each product purchased.
• The INV_TOTAL represents the total cost of the invoice, including taxes.
• The INV_TERMS can be “30,” “60,” or “90” (representing the number of days of credit) or
“CASH,” “CHECK,” or “CC.”
• The invoice status can be “OPEN,” “PAID,” or “CANCEL.”
• A product’s quantity on hand (P_QTYOH) is updated (decreased) with each product sale.







A customer may make many payments. The payment type (PMT_TYPE) can be one of the
following:
“CASH” for cash payments.
“CHECK” for check payments.
“CC” for credit card payments.
The payment details (PMT_DETAILS) are used to record data about check or credit card
payments:
The bank, account number, and check number for check payments.
The issuer, credit card number, and expiration date for credit card payments.
Note: Not all entities and attributes are represented in this example. Use only the attributes
indicated.
Using this database, write the SQL code to represent each of the following transactions. Use BEGIN
TRANSACTION and COMMIT to group the SQL statements in logical transactions.
a. On May 11, 2018, customer 10010 makes a credit purchase (30 days) of one unit of
product 11QER/31 with a unit price of $110.00; the tax rate is 8 percent. The invoice
number is 10983, and this invoice has only one product line.
b. On June 3, 2018, customer 10010 makes a payment of $100 in cash. The payment ID
is 3428.
Question 7
Create a simple transaction log (using the format shown in Table 10.14) to represent the actions of
the transactions in Problems 6a and 6b.
Question 8
Assuming that pessimistic locking is being used but the two-phase locking protocol is not, create a
chronological list of the locking, unlocking, and data manipulation activities that would occur during
the complete processing of the transaction described in Problem 6a.
Question 9
Assuming that pessimistic locking is being used but the two-phase locking protocol is not, create a
chronological list of the locking, unlocking, and data manipulation activities that would occur during
the complete processing of the transaction described in Problem 6a.
Question 10
Assuming that pessimistic locking is being used but the two-phase locking protocol is not, create a
chronological list of the locking, unlocking, and data manipulation activities that would occur during
the complete processing of the transaction described in Problem 6b.
Question 11
Assuming that pessimistic locking with the two-phase locking protocol is being used with row-level
lock granularity, create a chronological list of the locking, unlocking, and data manipulation activities
that would occur during the complete processing of the transaction described in Problem 6b.

Purchase answer to see full
attachment