skip to Main Content

this is the image for your reference

I was given an image of a sql database model and asked to extract information from it. how do i convert or transcribe the image into something I can do this with?

I don’t know what to try because the database model is an image and not a ddl file.

2

Answers


  1. Create Tables and provides Primary key and Unique key as per model image and then you can get easily .
    Create Table [dbo].[location](
    [Id] [int] IDENTITY(1,1) location_id NOT NULL,

    )
    and create all and then work out .

    Login or Signup to reply.
  2. You can start using this one as a base:
    https://onecompiler.com/mysql/3zz3m4gnd

    it creates DB tables, ads some dummy data and selects some info from it

    MySQL dump:

    CREATE TABLE location (
        location_id INTEGER PRIMARY KEY,
        city VARCHAR(50),
        state_province VARCHAR(30),
        postal_code VARCHAR(5),
        country VARCHAR(20)
    );
    
    CREATE TABLE supplier (
        supplier_id INTEGER PRIMARY KEY,
        city VARCHAR(50),
        state_province VARCHAR(30),
        postal_code VARCHAR(5),
        country VARCHAR(20),
        name VARCHAR(50)
    );
    
    CREATE TABLE vehicle (
        vehicle_id INTEGER PRIMARY KEY,
        vehicle_name VARCHAR(10),
        vin VARCHAR(50),
        make VARCHAR(50),
        model VARCHAR(50),
        year INTEGER
    );
    
    CREATE TABLE vehicle_part (
        vehicle_part_id INTEGER PRIMARY KEY,
        rfid VARCHAR(255),
        purchase_price DECIMAL(25,5),
        sold_price DECIMAL(25,5),
        vehicle_id INTEGER,
        make VARCHAR(50),
        model VARCHAR(50),
        year INTEGER,
        part_name VARCHAR(50),
        FOREIGN KEY (vehicle_id) REFERENCES vehicle(vehicle_id)
    );
    
    CREATE TABLE vehicle_part_location (
        vehicle_part_location_id INTEGER PRIMARY KEY,
        location_id INTEGER,
        vehicle_part_id INTEGER,
        arrived_timestamp TIMESTAMP,
        left_timestamp TIMESTAMP,
        FOREIGN KEY (location_id) REFERENCES location(location_id),
        FOREIGN KEY (vehicle_part_id) REFERENCES vehicle_part(vehicle_part_id)
    );
    
    CREATE TABLE vehicle_part_supplier (
        supplier_id INTEGER,
        vehicle_part_id INTEGER,
        PRIMARY KEY (supplier_id, vehicle_part_id),
        FOREIGN KEY (supplier_id) REFERENCES supplier(supplier_id),
        FOREIGN KEY (vehicle_part_id) REFERENCES vehicle_part(vehicle_part_id)
    );
    
    -- Insert corrected sample data into 'location'
    INSERT INTO location (location_id, city, state_province, postal_code, country) VALUES
    (1, 'Edinburgh', 'Scotland', 'EH11B', 'UK'),
    (2, 'Glasgow', 'Scotland', 'G11XW', 'UK');
    
    -- Insert corrected sample data into 'supplier'
    INSERT INTO supplier (supplier_id, city, state_province, postal_code, country, name) VALUES
    (1, 'Birmingham', 'England', 'B11TT', 'UK', 'AutoParts Ltd'),
    (2, 'Leeds', 'England', 'LS11B', 'UK', 'CarParts Co');
    -- Insert sample data into 'vehicle'
    INSERT INTO vehicle (vehicle_id, vehicle_name, vin, make, model, year) VALUES
    (1, 'EcoCar', '1HGCM82633A004352', 'Toyota', 'Prius', 2020),
    (2, 'FamilyCar', '1HGCM82633A004353', 'Honda', 'Civic', 2021);
    
    -- Insert sample data into 'vehicle_part'
    INSERT INTO vehicle_part (vehicle_part_id, rfid, purchase_price, sold_price, vehicle_id, make, model, year, part_name) VALUES
    (1, 'RFID123456', 100.00, 150.00, 1, 'Toyota', 'Prius', 2020, 'Battery'),
    (2, 'RFID123457', 50.00, 75.00, 2, 'Honda', 'Civic', 2021, 'Air Filter');
    
    -- Insert sample data into 'vehicle_part_location'
    INSERT INTO vehicle_part_location (vehicle_part_location_id, location_id, vehicle_part_id, arrived_timestamp, left_timestamp) VALUES
    (1, 1, 1, '2024-01-01 10:00:00', NULL),
    (2, 2, 2, '2024-01-02 10:00:00', '2024-01-03 15:00:00');
    
    -- Insert sample data into 'vehicle_part_supplier'
    INSERT INTO vehicle_part_supplier (supplier_id, vehicle_part_id) VALUES
    (1, 1),
    (2, 2);
    
    SELECT vp.part_name, l.city, l.state_province
    FROM vehicle_part vp
    JOIN vehicle_part_location vpl ON vp.vehicle_part_id = vpl.vehicle_part_id
    JOIN location l ON vpl.location_id = l.location_id;
    
    
    SELECT YEAR(vp.year) AS year, SUM(vp.sold_price) AS total_sales
    FROM vehicle_part vp
    GROUP BY YEAR(vp.year);
    
    SELECT vp.part_name, l.city
    FROM vehicle_part vp
    JOIN vehicle_part_location vpl ON vp.vehicle_part_id = vpl.vehicle_part_id
    JOIN location l ON vpl.location_id = l.location_id
    WHERE vpl.left_timestamp IS NULL;
    
    
    SELECT s.name, s.city, vp.part_name
    FROM supplier s
    JOIN vehicle_part_supplier vps ON s.supplier_id = vps.supplier_id
    JOIN vehicle_part vp ON vps.vehicle_part_id = vp.vehicle_part_id
    WHERE vp.part_name = 'Battery';
    
    SELECT s.name, s.city, vp.part_name
    FROM supplier s
    JOIN vehicle_part_supplier vps ON s.supplier_id = vps.supplier_id
    JOIN vehicle_part vp ON vps.vehicle_part_id = vp.vehicle_part_id
    WHERE vp.part_name = 'Battery';
    
    SELECT vp.part_name, COUNT(*) AS total_parts, SUM(vp.purchase_price) AS total_cost
    FROM vehicle_part vp
    GROUP BY vp.part_name;
    
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search