STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20...

14
https://www.sampleassignment.com/ STOCK MANAGEMENT

Transcript of STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20...

Page 1: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

https://www.sampleassignment.com/

STOCK MANAGEMENT

Page 2: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

ENTITY RELATIONSHIP DIAGRAM

id (PK)

purchase_id (FK)

product_id (FK)

quantity

cost_price,

Purchase_order_detaill

supplier_id (PK)

name

phone

address

Supplier

category_id (PK)

category_name

description

Category

purchase_id (PK)

pdate

supplier_id (FK)

Purchase_order

sale_id (PK)

customer_id (FK)

sdate

Sale_order

customer_id (PK)

name

phone

Customer

product_id (PK)

name

category_id (FK)

selling_price

quantity

description

Product

id (PK)

sale_id (FK)

product_id (FK)

quantity

Sale_order_detaill

1..1

0..*

1..1

1..*

1..1

1..*

0..*

1..1

1..*

1..*

0..*

1..1

1..*

1..1

1..1

1..*

receives

has

supplies lists

contains

lists

Belongs to initiates

Page 3: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

SQL STATEMENTS TO CREATEALL TABLES AND RELATIONSHIPS

CREATE DATABASE STOCK_MANAGEMENT;

USE STOCK_MANAGEMENT;

CREATE TABLE category ( category_id INT NOT NULL AUTO_INCREMENT, category_name

VARCHAR(100) NOT NULL, description VARCHAR(255), PRIMARY KEY (category_id) );

CREATE TABLE product ( product_id INT NOT NULL AUTO_INCREMENT, name VARCHAR(100)

NOT NULL, category_id INT, selling_price NUMERIC(10,2) NOT NULL, quantity INT NOT NULL

DEFAULT 0 CHECK(quantity>=0), description VARCHAR(255), PRIMARY KEY (product_id),

FOREIGN KEY (category_id) REFERENCES category(category_id) );

CREATE TABLE supplier ( supplier_id INT NOT NULL AUTO_INCREMENT, name

VARCHAR(100) NOT NULL, phone NUMERIC(10,0), address VARCHAR(255), PRIMARY KEY

(supplier_id) );

CREATE TABLE purchase_order ( purchase_id INT NOT NULL AUTO_INCREMENT, pdate

DATETIME, supplier_id INT, PRIMARY KEY (purchase_id), FOREIGN KEY (supplier_id)

REFERENCES supplier(supplier_id) );

CREATE TABLE purchase_order_detail ( id INT NOT NULL AUTO_INCREMENT, purchase_id

INT, product_id INT, quantity INT DEFAULT 1 CHECK(quantity>0), cost_price NUMERIC(10,2)

NOT NULL, Total_cost_price NUMERIC(10,2) NOT NULL, PRIMARY KEY (id), FOREIGN KEY

(purchase_id) REFERENCES purchase_order(purchase_id), FOREIGN KEY (product_id)

REFERENCES product(product_id) );

CREATE TABLE customer ( customer_id INT NOT NULL AUTO_INCREMENT, name

VARCHAR(100) NOT NULL, phone NUMERIC(10,0), PRIMARY KEY (customer_id) );

CREATE TABLE sales_order ( sale_id INT NOT NULL AUTO_INCREMENT, customer_id INT,

sdate DATETIME, PRIMARY KEY (sale_id), FOREIGN KEY (customer_id) REFERENCES

customer(customer_id) );

CREATE TABLE sales_order_detail ( id INT NOT NULL AUTO_INCREMENT, sale_id INT,

product_id INT, quantity INT DEFAULT 1 CHECK(quantity>0), PRIMARY KEY (id), FOREIGN KEY

(sale_id) REFERENCES sales_order(sale_id), FOREIGN KEY (product_id) REFERENCES

product(product_id) );

TRIGGERS TO UPDATE QUANTITY IN PRODUCT TABLE

DELIMITER $$

CREATE TRIGGER purchase_update AFTER INSERT ON purchase_order_detail FOR EACH

ROW

BEGIN

UPDATE product SET quantity=quantity + NEW.quantity where product_id=NEW.product_id;

END$$

DELIMITER ;

Page 4: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

DELIMITER $$

CREATE TRIGGER sale_update AFTER INSERT ON sales_order_detail FOR EACH ROW

BEGIN

UPDATE product SET quantity=quantity - NEW.quantity where product_id=NEW.product_id;

END$$

DELIMITER ;

SQL STATEMENTS TO INSERT DATA

INSERT INTO category (category_name, description) VALUES ("Pen", "Stationary item");

INSERT INTO category (category_name, description) VALUES ("Pencil", "Stationary item");

INSERT INTO category (category_name, description) VALUES ("Light bulb", "Electronics

item");

INSERT INTO product (name, category_id, selling_price, description) VALUES ("Parker

015",1,5,"Ball pen");

INSERT INTO product (name, category_id, selling_price, description) VALUES ("Perry Cardin

St. Louis",1,3,"Ball pen");

INSERT INTO product (name, category_id, selling_price, description) VALUES ("Philips

5W",3,10,"LED light bulb");

INSERT INTO supplier (name, phone, address) VALUES ("James",7409324567,"Sydney");

INSERT INTO supplier (name, phone, address) VALUES ("Robert",8239324567,"New South

Wales");

INSERT INTO purchase_order (pdate, supplier_id) VALUES (SYSDATE(),1);

INSERT INTO purchase_order (pdate, supplier_id) VALUES (SYSDATE(),2);

INSERT INTO purchase_order_detail (purchase_id, product_id, quantity, cost_price,

total_cost_price) VALUES (1,1,12,4,quantity*cost_price);

INSERT INTO purchase_order_detail (purchase_id, product_id, quantity, cost_price,

total_cost_price) VALUES (1,2,13,2,quantity*cost_price);

INSERT INTO purchase_order_detail (purchase_id, product_id, quantity, cost_price,

total_cost_price) VALUES (2,3,15,9,quantity*cost_price);

INSERT INTO customer (name, phone) VALUES ("Rachel",9994725897);

INSERT INTO customer (name, phone) VALUES ("Stuart",8794754890);

INSERT INTO sales_order (customer_id, sdate) VALUES (1,SYSDATE());

INSERT INTO sales_order (customer_id, sdate) VALUES (2,SYSDATE());

INSERT INTO sales_order (customer_id, sdate) VALUES (1,SYSDATE());

INSERT INTO sales_order_detail (sale_id, product_id, quantity) VALUES (1,1,1);

INSERT INTO sales_order_detail (sale_id, product_id, quantity) VALUES (1,3,1);

INSERT INTO sales_order_detail (sale_id, product_id, quantity) VALUES (2,1,3);

Page 5: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

INSERT INTO sales_order_detail (sale_id, product_id, quantity) VALUES (3,3,1);

COMMIT;

STATEMENTS

1. TO DISPLAY ALL TABLES

SHOW TABLES;

SELECT * FROM supplier;

SELECT * FROM purchase_order;

SELECT * FROM purchase_order_detail;

SELECT * FROM product;

SELECT * FROM category;

SELECT * FROM customer;

SELECT * FROM sales_order;

SELECT * FROM sales_order_detail;

2. TO ID2ENTIFY STACK LEVEL FOR ITEMS

SELECT quantity FROM product WHERE product_id=1;

3. TO IDENTIFY CUSTOMER TOTAL EXPENDITURE

SELECT a.customer_id, d.name, sum(c.selling_price*b.quantity) expenditure from

sales_order a, sales_order_detail b, product c, customer d where a.sale_id=b.sale_id and

b.product_id=c.product_id and a.customer_id=a.customer_id and a.customer_id=1;

Page 6: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

SQL WORKBENCH SCREENSHOTS

1. TABLE CREATION

2. DATA INSERTION

Page 7: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

3. LIST OF TABLES

4. SUPPLIER TABLE DATA

Page 8: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...
Page 9: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

5. PURCHASE_ORDER TABLE DATA

6. PURCHASE_ORDER_DETAIL TABLE DATA

Page 10: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

7. PRODUCT TABLE DATA

8. CATEGORY TABLE DATA

Page 11: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

9. CUSTOMER TABLE DATA

10. SALES_ORDER TABLE DATA

Page 12: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

11. SALES_ORDER_DETAILS TABLE DATA

12. CHECKING STOCK OF AN ITEM

13. TOTAL EXPENDITURE OF A CUSTOMER

Page 13: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

MS ACCESS SCREENSHOTS

PURCHASE ORDER

Page 14: STOCK MANAGEMENT - Sample Assignment...STOCK MANAGEMENT Author: com Created Date: 10/24/2018 5:31:20 PM ...

SALE ORDER