The document outlines the creation of several SQL tables for an insurance database, including Agent, Client, Policy, Vehicle, PremiumPayment, Bank, AgentPolicy, ClientPolicy, and PaymentBank. Each table is defined with its respective fields, data types, and constraints such as primary keys and foreign keys. The structure supports relationships between agents, clients, policies, and payments.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
3 views4 pages
Exp 4-1
The document outlines the creation of several SQL tables for an insurance database, including Agent, Client, Policy, Vehicle, PremiumPayment, Bank, AgentPolicy, ClientPolicy, and PaymentBank. Each table is defined with its respective fields, data types, and constraints such as primary keys and foreign keys. The structure supports relationships between agents, clients, policies, and payments.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4
SQL> CREATE TABLE Agent (
2 AgentID NUMBER PRIMARY KEY,
3 Name VARCHAR(255) NOT NULL, 4 Phone VARCHAR(15) UNIQUE NOT NULL, 5 Email VARCHAR(255) UNIQUE NOT NULL, 6 Address VARCHAR(255) NOT NULL 7 );
Table created.
SQL> DESC Agent;
Name Null? Type ----------------------------------------- -------- ---------------------------- AGENTID NOT NULL NUMBER NAME NOT NULL VARCHAR2(255) PHONE NOT NULL VARCHAR2(15) EMAIL NOT NULL VARCHAR2(255) ADDRESS NOT NULL VARCHAR2(255)
SQL> CREATE TABLE Client (
2 ClientID NUMBER PRIMARY KEY, 3 Name VARCHAR(255) NOT NULL, 4 Phone VARCHAR(15) UNIQUE NOT NULL, 5 Email VARCHAR(255) UNIQUE NOT NULL, 6 Address VARCHAR(255) NOT NULL 7 );
Table created.
SQL> DESC Client;
Name Null? Type ----------------------------------------- -------- ---------------------------- CLIENTID NOT NULL NUMBER NAME NOT NULL VARCHAR2(255) PHONE NOT NULL VARCHAR2(15) EMAIL NOT NULL VARCHAR2(255) ADDRESS NOT NULL VARCHAR2(255)
SQL> CREATE TABLE Policy (
2 PolicyID NUMBER PRIMARY KEY, 3 Type VARCHAR(50) CHECK (Type IN ('Vehicle', 'Life', 'Accident')) NOT NULL, 4 CoverageDetails VARCHAR(255) NOT NULL, 5 StartDate DATE NOT NULL, 6 EndDate DATE NOT NULL, 7 PremiumAmount NUMBER NOT NULL 8 );
Table created.
SQL> DESC Policy;
Name Null? Type ----------------------------------------- -------- ---------------------------- POLICYID NOT NULL NUMBER TYPE NOT NULL VARCHAR2(50) COVERAGEDETAILS NOT NULL VARCHAR2(255) STARTDATE NOT NULL DATE ENDDATE NOT NULL DATE PREMIUMAMOUNT NOT NULL NUMBER
SQL> CREATE TABLE Vehicle (
2 VehicleID NUMBER PRIMARY KEY, 3 PolicyID NUMBER UNIQUE NOT NULL, 4 Make VARCHAR(100) NOT NULL, 5 Model VARCHAR(100) NOT NULL, 6 Year NUMBER NOT NULL, 7 LicensePlate VARCHAR(20) UNIQUE NOT NULL, 8 ChassisNumber VARCHAR(50) UNIQUE NOT NULL, 9 FOREIGN KEY (PolicyID) REFERENCES Policy(PolicyID) 10 );
Table created.
SQL> DESC Vehicle;
Name Null? Type ----------------------------------------- -------- ---------------------------- VEHICLEID NOT NULL NUMBER POLICYID NOT NULL NUMBER MAKE NOT NULL VARCHAR2(100) MODEL NOT NULL VARCHAR2(100) YEAR NOT NULL NUMBER LICENSEPLATE NOT NULL VARCHAR2(20) CHASSISNUMBER NOT NULL VARCHAR2(50)
SQL> CREATE TABLE PremiumPayment (
2 PaymentID NUMBER PRIMARY KEY, 3 PolicyID NUMBER NOT NULL, 4 ClientID NUMBER NOT NULL, 5 PaymentDate DATE NOT NULL, 6 Amount NUMBER NOT NULL, 7 PaymentMethod VARCHAR(50) CHECK (PaymentMethod IN ('Cheque', 'Bank Transfer')) NOT NULL, 8 PaymentStatus VARCHAR(20) CHECK (PaymentStatus IN ('Paid', 'Unpaid')) NOT NULL, 9 FOREIGN KEY (PolicyID) REFERENCES Policy(PolicyID), 10 FOREIGN KEY (ClientID) REFERENCES Client(ClientID) 11 );
Table created.
SQL> DESC PremiumPayment;
Name Null? Type ----------------------------------------- -------- ---------------------------- PAYMENTID NOT NULL NUMBER POLICYID NOT NULL NUMBER CLIENTID NOT NULL NUMBER PAYMENTDATE NOT NULL DATE AMOUNT NOT NULL NUMBER PAYMENTMETHOD NOT NULL VARCHAR2(50) PAYMENTSTATUS NOT NULL VARCHAR2(20)
SQL> CREATE TABLE Bank (
2 BankID NUMBER PRIMARY KEY, 3 BankName VARCHAR(255) NOT NULL, 4 Branch VARCHAR(255) NOT NULL, 5 Location VARCHAR(255) NOT NULL 6 );
Table created.
SQL> DESC Bank;
Name Null? Type ----------------------------------------- -------- ---------------------------- BANKID NOT NULL NUMBER BANKNAME NOT NULL VARCHAR2(255) BRANCH NOT NULL VARCHAR2(255) LOCATION NOT NULL VARCHAR2(255)
SQL> CREATE TABLE AgentPolicy (
2 AgentID NUMBER NOT NULL, 3 PolicyID NUMBER NOT NULL, 4 Commission NUMBER NOT NULL, 5 StartDate DATE NOT NULL, 6 PRIMARY KEY (AgentID, PolicyID), 7 FOREIGN KEY (AgentID) REFERENCES Agent(AgentID), 8 FOREIGN KEY (PolicyID) REFERENCES Policy(PolicyID) 9 );
Table created.
SQL> DESC AgentPolicy;
Name Null? Type ----------------------------------------- -------- ---------------------------- AGENTID NOT NULL NUMBER POLICYID NOT NULL NUMBER COMMISSION NOT NULL NUMBER STARTDATE NOT NULL DATE
SQL> CREATE TABLE ClientPolicy (
2 ClientID NUMBER NOT NULL, 3 PolicyID NUMBER NOT NULL, 4 PRIMARY KEY (ClientID, PolicyID), 5 FOREIGN KEY (ClientID) REFERENCES Client(ClientID), 6 FOREIGN KEY (PolicyID) REFERENCES Policy(PolicyID) 7 );
Table created.
SQL> DESC ClientPolicy;
Name Null? Type ----------------------------------------- -------- ---------------------------- CLIENTID NOT NULL NUMBER POLICYID NOT NULL NUMBER
SQL> CREATE TABLE PaymentBank (
2 PaymentID NUMBER NOT NULL, 3 BankID NUMBER NOT NULL, 4 PRIMARY KEY (PaymentID, BankID), 5 FOREIGN KEY (PaymentID) REFERENCES PremiumPayment(PaymentID), 6 FOREIGN KEY (BankID) REFERENCES Bank(BankID) 7 );
Table created.
SQL> DESC PaymentBank ;
Name Null? Type ----------------------------------------- -------- ---------------------------- PAYMENTID NOT NULL NUMBER BANKID NOT NULL NUMBER