Assignment
Consider the following set of requirements for a pharmaceutical company.
1) Patients are identified by an SSN, and their names, addresses, and ages must be recorded.
2) Doctors are identified by an SSN. For each doctor, the name, specialty, and years of experience must be recorded.
3) Each pharmaceutical company is identified by name and has a phone number.
4) For each drug, the trade name and formula must be recorded. Each drug is sold by a given pharmaceutical company, and the trade name identifies a drug uniquely from among the products of that company. If a pharmaceutical company is deleted, you need not keep track of its products any longer.
5) Each pharmacy has a name, address, and phone number.
6) Every patient has a primary physician. Every doctor has at least one patient.
7) Each pharmacy sells several drugs and has a price for each. A drug could be sold at several pharmacies, and the price could vary from one pharmacy to another.
8) Doctors prescribe drugs for patients. A doctor could prescribe one or more drugs for several patients, and a patient could prescriptions from several doctors. Each prescription has a date and a quantity associated with it. You can assume that if a doctor prescribes the same drug for the same patient more than once, only the last such prescription needs to be stored.
9) Pharmaceutical companies have long-term contracts with pharmacies. A pharmaceutical company can contract with several pharmacies, and a pharmacy can contract with several pharmaceutical companies. For each contract, you have to store a start date, an end date, and the text of the contract.
10) Pharmacies appoint a supervisor for each contract. There must always be a supervisor for each contract, but the contract supervisor can change over the lifetime of the contract.
A. Draw a PATIENT entity with attributes. Specify all attribute types.
B. Draw a DOCTOR entity with attributes. Specify all attribute types.
C. Draw a PHARMACY entity with attributes. Specify all attribute types.
D. Draw a DRUG entity with attributes. Specify all attribute types.
E. Draw a PHARM_COMPANY entity with attributes. Specify all attribute types.
F. Draw the names of all relationship types, and specify the constraint on each participation of an entity type in a relationship type. Design and draw an ER diagram for that schema. Specify key attributes of each entity type and structural constraints on each relationship type. Note any unspecified requirements, and make appropriate assumptions to make the specification complete. Identify any constraints that are not captured by the ER diagram.