Question

im currently working on an sql database homework for a fundamentals class but im not too sure if my results are alright and would like to compare results, the assignment is as follows:
O4pk,fk evaluate de data models, the specifications and table contents: equipment_tb Assigned_Equipment_tb workers_tb pk seri

0 0
Add a comment Improve this question Transcribed image text
Answer #1

SOLUTION

The solution has been executed in Oracle Live SQL Schema.

QUESTION 1:

--DROP TABLE --

DROP TABLE ASSIGNED_EQUIPMENT_TB;

DROP TABLE WORKERS_TB;

DROP TABLE EQUIPMENT_TB;

--CREATE TABLE --

CREATE TABLE EQUIPMENT_TB(SERIAL_NUMBER INT PRIMARY KEY, BRAND CHAR(10) NOT NULL, MODEL CHAR(15) NOT NULL, PROCESSOR CHAR(15),

PROCESSOR_VELOCITY NUMBER(3,2) NOT NULL, MEMORY CHAR(7) NOT NULL, HARD_DISK CHAR(6) NOT NULL);

CREATE TABLE WORKERS_TB(WORKER_ID INT PRIMARY KEY, LASTNAME CHAR(100) NOT NULL, FIRSTNAME CHAR(50) NOT NULL, DEPARTMENT INT, EMAIL CHAR(200) NOT NULL);

CREATE TABLE ASSIGNED_EQIUPMENT_TB(SERIAL_NUMBER INT, WORKER_ID INT, ASSIGNED_DATE DATE,

CONSTRAINT PK_SERIAL_WORKER PRIMARY KEY(SERIAL_NUMBER, WORKER_ID),

CONSTRAINT FK_SERIAL_NUMBER FOREIGN KEY(SERIAL_NUMBER) REFERENCES EQUIPMENT_TB(SERIAL_NUMBER),

CONSTRAINT FK_WORKER_ID FOREIGN KEY(WORKER_ID) REFERENCES WORKERS_TB(WORKER_ID));

-- INSERT DATA --

INSERT INTO EQUIPMENT_TB VALUES(00000001, 'DELL', 'OPTIPLEX 7040', 'INTEL I7-6700', 3.6, '32.0 GB', '3.0 TB');

INSERT INTO EQUIPMENT_TB VALUES(00000002, 'DELL', 'OPTIPLEX 7040', 'INTEL I7-6700', 3.6, ' ', '3.0 TB');

INSERT INTO WORKERS_TB VALUES(1, 'JOHNSON WILLIAMS', 'ROBB', 1, '[email protected]');

INSERT INTO WORKERS_TB VALUES(2, 'RIVERA LOPEZ', 'JOEL', 2, '[email protected]');

INSERT INTO ASSIGNED_EQIUPMENT_TB VALUES(00000001, 1, TO_DATE('15-JAN-20'));

INSERT INTO ASSIGNED_EQIUPMENT_TB VALUES(00000002, 2, TO_DATE('21-JAN-20'));

-- DISPLAY DATA --

SELECT * FROM EQUIPMENT_TB;

SELECT * FROM WORKERS_TB;

SELECT * FROM ASSIGNED_EQIUPMENT_TB;

QUESTION 2:

-- ADD PHONE NUMBER COLUMN TO WORKERS_TB TABLE--

ALTER TABLE WORKERS_TB ADD PHONE_NUMBER CHAR(12);

--CHECK TABLE STRUCTURE --

SELECT COLUMN_NAME, DATA_TYPE FROM ALL_TAB_COLUMNS WHERE TABLE_NAME='WORKERS_TB';

QUESTION 3:

--CREATE VIEW WORKER_EQUIPMENT_V --

CREATE VIEW WORKER_EQUIPMENT_V AS SELECT A.SERIAL_NUMBER, E.BRAND, E.MODEL, E.PROCESSOR, E.MEMORY, TRIM(W.LASTNAME)||', '|| TRIM(W.FIRSTNAME) AS "ASSIGNED TO", DEPARTMENT

FROM ASSIGNED_EQIUPMENT_TB A, WORKERS_TB W, EQUIPMENT_TB E

WHERE (A.WORKER_ID=W.WORKER_ID) AND (A.SERIAL_NUMBER = E.SERIAL_NUMBER);

--DISPLAY VIEW DATA --

SELECT * FROM WORKER_EQUIPMENT_V

QUESTION 4:

--CREATE FUNCTION BRAND_MODEL_FN--

CREATE OR REPLACE FUNCTION BRAND_MODEL_FN(BRAND CHAR, MODEL CHAR)

RETURN VARCHAR2 IS

    BRAND_MODEL VARCHAR2(50);

BEGIN

    BRAND_MODEL := CONCAT(CONCAT(TRIM(BRAND), ':'), MODEL);

    RETURN BRAND_MODEL;

END;

/

--TEST FUNCTION BRAND_MODEL_FN --

SELECT BRAND_MODEL_FN(BRAND,MODEL) FROM EQUIPMENT_TB;

QUESTION 5:

--CREATE VIEW COMPANY_BRAND_MODEL_V --

CREATE VIEW COMPANY_BRAND_MODEL_V AS SELECT SERIAL_NUMBER, BRAND_MODEL_FN(BRAND,MODEL) AS "BRAND MODEL" FROM EQUIPMENT_TB;

--DISPLAY VIEW DATA --

SELECT * FROM COMPANY_BRAND_MODEL_V;

OUTPUT

SQL Worksheet Q Clear Find 1 --DROP TABLE DROP TABLE ASSIGNED_EQUIPMENT_TB; DROP TABLE WORKERS_TB; DROP TABLE EQUIPMENT_TB; -SQL Worksheet Clear BeFind Actions A Save Run 24 25 26 27 28 29 30 INSERT INTO ASSIGNED_EQIUPMENT_TB VALUES ( 00000001, 1, TOSQL Worksheet Clear Find Actions A Save 21 -- ADD PHONE NUMBER COLUMN TO WORKERS TB TABLE-- ALTER TABLE WORKERS_TB ADD PHONE_SQL Worksheet Q Clear 1 2 3 4 5 SELECT * FROM WORKER_EQUIPMENT_V; SELECT BRAND_MODEL_EN(BRAND, MODEL) FROM EQUIPMENT_TB; SELE

HENCE THE SOLUTION...!

Add a comment
Know the answer?
Add Answer to:
im currently working on an sql database homework for a fundamentals class but im not too...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • I need help for SQL homework. the question: the code for part 1,2: drop table Customer;...

    I need help for SQL homework. the question: the code for part 1,2: drop table Customer; drop table Company; drop table Cruise; drop table TravelAgent; drop table Reservation; drop sequence customerID_seq; drop sequence cruiseID_seq; drop sequence travelAgentID_seq; drop sequence reservationID_seq; create table Customer( customerID number, firstName varchar2(15), lastName varchar2(15), address varchar2(30), phone number(10) not null, age number(3), Constraint Customer_PK Primary Key (customerID), constraint Customer_unique unique (firstName,lastName,phone), constraint Customer_check check(phone is not null) ); create sequence customerID_seq start with 1 increment...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT