DBMS Project
DBMS Project
DBMS(CO-202)
PROJECT
MADE BY:
Name-AVIRAL YADAV
Roll No.-2K18/CO/102
Topic- University Management System
A2 Group 2
Aim: The aim of this project is to familiarise the students with the various
concepts of database management such as Entity Relationship Model and
the use of basic query language commands and clauses of Data Definition
Language(DDL) and Data Manipulation Language(DML).
DESCRIPTION
COMPOSITE ATTRIBUTES-
We can observe from the ER diagram that the Composite attributes are-
1. Door
2. Street
3. City
4. State
5. Country
Creating Tables
TABLE COURSE(for storing the courses/branches)
TABLE CREATION:
mysql> CREATE TABLE COURSE(
-> COURSE_ID VARCHAR(10) PRIMARY KEY NOT NULL,
-> COURSE_NAME VARCHAR(30) NOT NULL,
-> );
Query OK, 0 rows affected (0.02 sec)
TABLE ENTRY:
mysql> INSERT INTO COURSE VALUES
-> ('CO','Computer Science'),
-> ('EC','Electronics and Communication'),
-> ('CE','Civil Engineering'),
-> ('BT','Bio-Tech Engineering');
Query OK, 4 rows affected (0.01 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM COURSE;
TABLE SUBJECT(for storing the subjects in a course)
TABLE CREATION:
mysql> CREATE TABLE SUBJECT(
-> SUBJECT_ID VARCHAR(10) PRIMARY KEY NOT NULL,
-> COURSE_ID VARCHAR(10) NOT NULL,
-> SUBJECT_NAME VARCHAR(30) NOT NULL,
-> FOREIGN KEY(COURSE_ID) REFERENCES COURSE(COURSE_ID)
-> );
Query OK, 0 rows affected (0.02 sec)
TABLE ENTRY:
mysql> INSERT INTO SUBJECT VALUES
-> ('CO_101','CO','Operating Systems'),
-> ('CO_102','CO','DBMS'),
-> ('CO_103','CO','Digital Electronics'),
-> ('EC_101','EC','Digital Electronics'),
-> ('EC_102','EC','Analog Electronics'),
-> ('CE_101','CE','Building and Construction'),
-> ('CE_102','CE','Earthquake Proofing'),
-> ('BT_101','BT','Biology'),
-> ('BT_102','BT','Marine Sciences');
Query OK, 9 rows affected (0.00 sec)
Records: 9 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM SUBJECT;
TABLE STUDENT(for storing the information of students)
TABLE CREATION:
mysql> CREATE TABLE STUDENT(
-> STUDENT_ID VARCHAR(10) PRIMARY KEY NOT NULL,
-> STUDENT_NAME VARCHAR(30) NOT NULL,
-> COURSE_ID VARCHAR(10) NOT NULL,
-> DOB DATE NOT NULL,
-> DOOR VARCHAR(20) NOT NULL,
-> STREET VARCHAR(20) NOT NULL,
-> CITY VARCHAR(20) NOT NULL,
-> STATE VARCHAR(20) NOT NULL,
-> COUNTRY VARCHAR(20) NOT NULL,
-> FOREIGN KEY (COURSE_ID) REFERENCES COURSE(COURSE_ID)
-> );
Query OK, 0 rows affected (0.02 sec)
TABLE ENTRY:
mysql> INSERT INTO STUDENT VALUES
-> ('CO102','AVIRAL YADAV','CO','2000-10-20','ABC','CIVIL
LINES','DELHI','DELHI','INDIA'),
-> ('EC001','HARSHIL PANWAR','EC','2000-10-3','GFG','SANTA
CRUZ','MUMBAI','MAHARASHTRA','INDIA'),
-> ('CE002','AJAY
SHARMA','CE','2000-10-17','FGF','ALABAMA','ATLANTA','GEORGIA','USA'),
-> ('BT103', 'NEEL
GUPTA','BT','1999-7-10','DEE','SAKET','JAIPUR','RAJASTHAN','INDIA');
Query OK, 4 rows affected (0.01 sec)
Records: 4 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM STUDENT;
TABLE TEACHERS(for storing the information of
teachers)
TABLE CREATION:
mysql> CREATE TABLE TEACHERS(
-> TEACHER_ID VARCHAR(10) PRIMARY KEY NOT NULL,
-> TEACHER_NAME VARCHAR(30) NOT NULL,
-> DEPARTMENT VARCHAR(10) NOT NULL,
-> FOREIGN KEY (DEPARTMENT) REFERENCES COURSE(COURSE_ID)
-> );
Query OK, 0 rows affected (0.03 sec)
TABLE ENTRY:
mysql> INSERT INTO TEACHERS VALUES
-> ('001CO','ROHIT BENIWAL','CO'),
-> ('002CO','RAHUL KUMAR','CO'),
-> ('001EC','MS CHAUDHARY','EC'),
-> ('002EC','MANIKA CHAUDHARY','EC'),
-> ('001CE','R.V. RAO','CE'),
-> ('001BT','N.S. RAGHAVAN','BT');
Query OK, 6 rows affected (0.01 sec)
Records: 6 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM TEACHERS;
Creating Derived Tables
TEACHER_SUBJECTS TABLE
Created to cover the case that many many relationships of teachers and the
subjects they teach.
Cases-
TABLE CREATION:
mysql> CREATE TABLE TEACHER_SUBJECTS(
-> TEACHER_ID VARCHAR(10) NOT NULL ,
-> SUBJECT_ID VARCHAR(10) NOT NULL ,
-> FOREIGN KEY(SUBJECT_ID) REFERENCES SUBJECT(SUBJECT_ID),
-> FOREIGN KEY(TEACHER_ID) REFERENCES TEACHERS(TEACHER_ID)
-> );
Query OK, 0 rows affected (0.03 sec)
TABLE ENTRY:
mysql> INSERT INTO TEACHER_SUBJECTS VALUES
-> ('001EC','CO_103'),
-> ('001EC','EC_101'),
-> ('002EC','EC_101'),
-> ('002EC','EC_102'),
-> ('001CO','CO_101'),
-> ('002CO','CO_102'),
-> ('001CE','CE_101'),
-> ('001CE','CE_102'),
-> ('001CE','CE_102'),
-> ('001BT','BT_102');
Query OK, 10 rows affected (0.01 sec)
Records: 10 Duplicates: 0 Warnings: 0
TABLE STUDENT_TEACHER
Created to cover the case that many many relationships of teachers and the
students they teach.
Cases-
TABLE CREATION:
mysql> CREATE TABLE STUDENT_TEACHERS(
-> STUDENT_ID VARCHAR(10) NOT NULL,
-> TEACHER_ID VARCHAR(10) NOT NULL,
-> SUBJECT_ID VARCHAR(10) NOT NULL,
-> FOREIGN KEY(TEACHER_ID) REFERENCES TEACHERS(TEACHER_ID),
-> FOREIGN KEY(SUBJECT_ID) REFERENCES SUBJECT(SUBJECT_ID),
-> FOREIGN KEY(STUDENT_ID) REFERENCES STUDENT(STUDENT_ID)
-> );
Query OK, 0 rows affected (0.01 sec)
TABLE ENTRY:
mysql> INSERT INTO STUDENT_TEACHERS VALUES
-> ('CO102','001EC','CO_103'),
-> ('EC001','002EC','EC_101'),
-> ('EC001','002EC','EC_102'),
-> ('CE002','001CE','CE_101'),
-> ('CE002','001CE','CE_102'),
-> ('BT103','001BT','BT_102');
Query OK, 6 rows affected (0.00 sec)
Records: 6 Duplicates: 0 Warnings: 0
SQL QUERIES
1. Displaying the details of all students of CO and EC branch
mysql> SELECT * FROM STUDENT WHERE (COURSE_ID='CO' OR COURSE_ID='EC');
3. List all the subjects of BT and CE department
mysql> SELECT * FROM SUBJECT WHERE COURSE_ID='BT' OR COURSE_ID='CE' ;
4. List all the subjects studied by the student of CO branch
mysql> SELECT S.STUDENT_ID ,S.STUDENT_NAME,F.SUBJECT_ID,F.SUBJECT_NAME FROM
STUDENT S
-> INNER JOIN SUBJECT F
-> ON F.COURSE_ID=S.COURSE_ID
-> WHERE S.COURSE_ID='CO';
CONCLUSION:
Through this case study, we have learnt how to convert our database and
create our tables from the ER diagram we created and to perform various
DDL and DML operations on our database to get the desired result.Overall
in this case study, we have learnt a practical approach to the database we
created.