0% found this document useful (0 votes)
7 views

ICT Assignment(4)

Uploaded by

bekele.alexis21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

ICT Assignment(4)

Uploaded by

bekele.alexis21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 27

Q #1) What do you understand by

‘Database’?

Ans: Database is an organized collection of

related data where the data is stored and

organized to serve some specific purpose.

For Example , A librarian maintains a

database of all the information related to

the books that are available in the library.

Q #2) Define DBMS.

Ans: DBMS stands for Database

Management system. It is a collection of

application programs which allow the user to

organize, restore and retrieve information

about data efficiently and as effectively as

possible.

Some of the popular DBMS's are MySql,

Oracle, Sybase, etc.

Q #3) Define RDBMS.

Ans: Relational Database Management

System(RDBMS) is based on a relational

model of data that is stored in databases in

separate tables and they are related to the


use of a common column. Data can be

accessed easily from the relational database

using Structured Query Language (SQL).

Q #4) Enlist the advantages of DBMS.

Ans: The Advantages of DBMS includes:

Data is stored in a structured way

and hence redundancy is controlled.

Validates the data entered and

provide restrictions on unauthorized

access to the database.

Provides backup and recovery of the

data when required.

Provides multiple user interfaces.

Q #5) What do you understand by Data

Redundancy?

Ans: Duplication of data in the database is

known as Data redundancy. As a result of

Data Redundancy, duplicated data is present

at various locations, hence it leads to

wastage of the storage space and the

integrity of the database is destroyed.

Q #6) What are the various types of


relationships in Database? Define them.

Ans: There are 3 types of relationships in

Database:

One-to-one: One table has the

relationship with another table

having the similar kind of column.

Each primary key relates to only one

or no record in the related table.

One-to-many: One table has a

relationship with another table that

has primary and foreign key relation.

The primary key table contains only

one record that relates to none, one

or many records in the related table.

Many-to-many: Each record in both

the tables can relate to many

numbers of record in another table.

Q #7) Explain Normalization and De-

Normalization.

Ans : Normalization is the process of

removing the redundant data from the

database by splitting the table in a well-


defined manner in order to maintain data

integrity. This process saves much of the

storage space.

De-normalization is the process of adding

up redundant data on the table in order to

speed up the complex queries and thus

achieve better performance.

Q #8) What are the different types of

Normalization?

Ans: Different Types of Normalization are:

First Normal Form (1NF): A relation

is said to be in 1NF only when all

the entities of the table contain

unique or atomic values.

Second Normal Form (2NF): A

relation is said to be in 2NF only if it

is in 1NF and all the non-key

attribute of the table is fully

dependent on the primary key.

Third Normal Form (3NF): A relation

is said to be in 3NF only if it is in

2NF and every non-key attribute of


the table is not transitively

dependent on the primary key.

Q #9) What is BCNF?

Ans: BCNF is Boyce Code Normal form. It is

the higher version of 3Nf which does not

have any multiple overlapping candidate

keys.

Q #10) What is SQL?

Ans: Structured Query language, SQL is an

ANSI(American National Standard Institute)

standard programming language which is

designed specifically for storing and

managing the data in the relational database

management system (RDBMS) using all

kinds of data operations.

Q #11) How many SQL statements are

used? Define them.

Ans: SQL statements are basically divided

into three categories, DDL, DML, and DCL.

They can be defined as:

Data Definition Language (DDL) commands

are used to define the structure that holds


the data. These commands are auto-

committed i.e. changes done by the DDL

commands on the database are saved

permanently.

Data Manipulation Language (DML)

commands are used to manipulate the data

of the database. These commands are not

auto-committed and can be rolled back.

Data Control Language (DCL) commands are

used to control the visibility of the data in

the database like revoke access permission

for using data in the database.

Q #12) Enlist some commands of DDL, DML,

and DCL.

Ans: Data Definition Language (DDL)

commands:

CREATE to create a new table or

database.

ALTER for alteration.

Truncate to delete data from the

table.

DROP to drop a table.


RENAME to rename a table.

Data Manipulation Language (DML)

commands:

INSERT to insert a new row.

UPDATE to update an existing row.

DELETE to delete a row.

MERGE for merging two rows or two

tables.

Data Control Language (DCL) commands:

COMMIT to permanently save.

ROLLBACK to undo the change.

SAVEPOINT to save temporarily.

Q #13) Define DML Compiler.

Ans: DML compiler translates DML

statements in a query language into a low-

level instruction and the generated

instruction can be understood by Query

Evaluation Engine.

Q #14) What is DDL interpreter?

Ans: DDL Interpreter interprets the DDL

statements and records the generated

statements in the table containing metadata.


Q #15) Enlist the advantages of SQL.

Ans: Advantages of SQL are:

Simple SQL queries can be used to

retrieve a large amount of data from

the database very quickly and

efficiently.

SQL is easy to learn and almost

every DBMS supports SQL.

It is easier to manage the database

using SQL as no large amount of

coding is required.

Q #16) Explain the terms ‘Record’, ‘Field’

and ‘Table’ in terms of database.

Ans: Record: Record is a collection of values

or fields of a specific entity. Eg. An

employee, Salary account, etc.

Field: A field refers to an area within a

record which is reserved for a specific piece

of data. Eg. Employee ID.

Table: Table is the collection of records of

specific types. E.g. Employee table is a

collection of record related to all the


employees.

Q #17) What do you understand by Data

Independence? What are its two types?

Ans: Data Independence refers to the ability

to modify the schema definition in one level

in such a way that it does not affect the

schema definition in the next higher level.

The 2 types of Data Independence are:

Physical Data Independence: It

modifies the schema at the physical

level without affecting the schema

at the conceptual level.

Logical Data Independence: It

modifies the schema at the

conceptual level without affecting or

causing changes in the schema at

the view level.

Q #18) Define the relationship between

‘View’ and ‘Data Independence’.

Ans: View is a virtual table which does not

have its data on its own rather the data is

defined from one or more underlying base


tables.

Views account for logical data independence

as the growth and restructuring of base

tables is not reflected in views.

Q #19) What are the advantages and

disadvantages of views in the database?

Ans: Advantages of Views:

As there is no physical location

where the data in views is stored, it

generates output without wasting

resources.

Data access is restricted as it does

not allow commands like insertion,

updation, and deletion.

Disadvantages of Views:

View becomes irrelevant if we drop a

table related to that view.

More memory is occupied when the

view is created for large tables.

Q #20) What do you understand by

Functional dependency?

Ans: A relation is said to be in Functional


dependency when one attribute uniquely

defines another attribute.

For Example, R is a Relation, X and Y are

two attributes. T1 and T2 are two tuples.

Then,

T1[X]=T2[X] and T1[Y]=T2[Y] means the

value of component X uniquely define the

value of component Y.

Also, X->Y means Y is functionally

dependent on X.

Q #21) When is functional dependency said

to be the fully functional dependency?

Ans: To fulfill the criteria of fully functional

dependency, the relation must meet the

requirement of functional dependency.

A functional dependency ‘A’ and ‘B’ is said

to be fully functional dependent when

removal of any attribute say ‘X’ from ‘A’

means the dependency does not hold

anymore.

Q #22) What do you understand by E-R

model?
Ans: E-R model is an Entity-Relationship

model which defines the conceptual view of

the database.

E-R model basically shows the real world

entities and their association/relations.

Entities here represent the set of attributes

in the database.

Q #23) Define Entity, Entity type, and Entity

set.

Ans: Entity can be anything, be it a place,

class or object which has an independent

existence in the real world.

Entity type represents a set of entities which

have similar attributes.

Entity set in the database represents a

collection of entities having a particular

entity type.

Q #24) Define Weak Entity set.

Ans: Weak entity set is the one whose

primary key comprises of its partial key as

well as the primary key of its parent entity.

This is the case because the entity set may


not have sufficient attributes to form a

primary key.

Q #25) Explain the terms ‘Attribute’ and

‘Relations’

Ans: Attribute describes the properties or

characteristics of an entity. For Example ,

Employee ID, Employee Name, Age, etc., can

be attributes of the entity Employee.

Relation is a two-dimensional table

containing a number of rows and columns

where every row represents a record of the

relation. Here, rows are also known as

‘Tuples’ and columns are known as

‘Attributes’.

Q #26) What are VDL and SDL?

Ans: VDL is View Definition language which

represents user views and their mapping to

the conceptual schema.

SDL is Storage Definition Language which

specifies the mapping between two

schemas.

Q #27) Define Cursor and its types.


Ans: Cursor is a temporary work area which

stores the data as well as the result set

occurred after manipulation of data

retrieved. A cursor can hold only one row at

a time.

The 2 types of Cursor are:

Implicit cursors are declared automatically

when DML statements like INSERT, UPDATE,

DELETE is executed.

Explicit cursors have to be declared when

SELECT statements which are returning

more than one row are executed.

Q #28) What is Database transaction?

Ans: Sequence of operation performed

which changes the consistent state of the

database to another is known as the

database transaction. After the completion

of the transaction, either the successful

completion is reflected in the system or the

transaction fails and no change is reflected.

Q #29) Define Database Lock and its types.

Ans: Database lock basically signifies the


transaction about the current status of the

data item i.e. whether that data is being

used by other transactions or not at the

present point of time.

There are two types of Database lock which

are Shared Lock and Exclusive Lock.

Q #30) What is Data Warehousing?

Ans: The storage as well as access to data,

that is being derived from the transactions

and other sources, from a central location in

order to perform the analysis is called Data

Warehousing.

Q #31) What do you understand by Join?

Ans: Join is the process of explaining the

relationship between different tables by

combining columns from one or more table

having common values in each. When a

table joins with itself, it is known as Self

Join.

Q #32) What do you understand by Index

hunting?

Ans: Index hunting is the process of


boosting the collection of indexes which

help in improving the query performance as

well as the speed of the database.

Q #33) How to improve query performance

using Index hunting?

Ans: Index hunting help in improving query

performance by:

Using query optimizer to coordinate

queries with the workload.

Observing the performance and

effect of index and query

distribution.

Q #34) Differentiate between ‘Cluster’ and

‘Non-cluster’ index.

Ans: Clustered Index alters the table and

reorders the way in which the records are

stored in the table. Data retrieval is made

faster by using the clustered index.

A Non-clustered index does alter the records

that are stored in the table but creates a

completely different object within the table.

Q #35) What are the disadvantages of a


Query?

Ans: Disadvantages of a Query are:

Indexes are not present.

Stored procedures are excessively

compiled.

Difficulty in interfacing.

Q #36) What do you understand by

Fragmentation?

Ans: Fragmentation is a feature which

controls the logical data units, also known

as fragments that are stored at different

sites of a distributed database system.

Q #37) Define Join types.

Ans: Given below are the types of Join,

which are explained with respect to the

tables as an Example:

employee table:

employee_info table:

1) Inner JOIN: Inner JOIN is also known as a

simple JOIN. This SQL query returns result

from both the tables having a common value

in rows.
SQL Query:

SELECT * from employee, employee_info

WHERE employee.EmpID =

employee_info.EmpID ;

Result:

2) Natural JOIN: This is a type of Inner JOIN

which returns results from both the tables

having same data values in the columns of

both the tables to be joined.

SQL Query:

SELECT * from employee NATURAL JOIN

employee_info;

Result:

3) Cross JOIN: Cross JOIN return results as

all the records where each row from the

first table is combined with each row of the

second table.

SQL Query:

SELECT * from employee CROSS JOIN

employee_info;

Result:

Let us do some modification in the above


tables to understand Right JOIN, Left JOIN,

and Full JOIN.

employee table:

employee_info table:

1) Right JOIN: Right JOIN is also known as

Right Outer JOIN. This returns all the rows

as a result from the right table even if the

JOIN condition does not match any records

in the left table.

SQL Query:

SELECT * from employee RIGHT OUTER

JOIN employee_info on (employee.EmpID =

employee_info.EmpID);

Result:

2) Left JOIN: Left JOIN is also known as

Left Outer JOIN. This returns all the rows as

a result of the left table even if JOIN

condition does not match any records in the

right table. This is exactly the opposite of

Right JOIN.

SQL Query:

SELECT * from employee LEFT OUTER JOIN


employee_info on (employee.EmpID =

employee_info.EmpID);

Result:

3) Outer/Full JOIN: Full JOIN return results

in combining the result of both the Left JOIN

and Right JOIN.

SQL Query:

SELECT * from employee FULL OUTER JOIN

employee_info on (employee.EmpID =

employee_info.EmpID);

Result:

Q #38) What do you understand by

‘Atomicity’ and ‘Aggregation’?

Ans: Atomicity is the condition where either

all the actions of the transaction are

performed or none. This means, when there

is an incomplete transaction, database

management system itself will undo the

effects done by the incomplete transaction.

Aggregation is the concept of expressing the

relationship with the collection of entities

and their relationships.


Q #39) Define Phantom deadlock.

Ans: Phantom deadlock detection is the

condition where the deadlock does not

actually exist but due to a delay in

propagating local information, deadlock

detection algorithms identify the deadlocks.

Q #40) Define checkpoint.

Ans: Checkpoint declares a point before

which all the logs are stored permanently in

the storage disk and is the inconsistent

state. In the case of crashes, the amount of

work and time is saved as the system can

restart from the checkpoint.

Q #41) What is Database partitioning?

Ans: Database partitioning is the process of

partitioning tables, indexes into smaller

pieces in order to manage and access the

data at a finer level.

This process of partitioning reduces the cost

of storing a large amount of data as well as

enhances the performance and

manageability.
Q #42) Explain the importance of Database

partitioning.

Ans: The importance of Database

partitioning are:

Improves query performance and

manageability.

Simplifies common administration

tasks.

Acts as a key tool for building

systems with extremely high

availability requirements.

Allows accessing a large part of a

single partition.

Q #43) Explain Data Dictionary.

Ans: Data dictionary is a set of information

describing the content and structure of the

tables and database objects. The job of the

information stored in the data dictionary is

to control, manipulate and access the

relationship between database elements.

Q #44) Explain Primary Key and Composite

Key.
Ans: Primary key is that column of the table

whose every row data is uniquely identified.

Every row in the table must have a primary

key and no two rows can have the same

primary key. Primary key value can never be

null nor can be modified or updated.

Composite Key is a form of the candidate

key where a set of columns will uniquely

identify every row in the table.

Q #45) What do you understand by Unique

key?

Ans: A Unique key is same as the primary

key whose every row data is uniquely

identified with a difference of null value i.e.

Unique key allows one value as NULL value.

Q #46) What do you understand by Database

Triggers?

Ans: A set of commands that automatically

get executed when an event like Before

Insert, After Insert, On Update, On Delete of

row occurs in a table is called as Database

trigger.
Q #47) Define Stored procedures.

Ans: A Stored procedure is a collection of

pre-compiled SQL Queries, which when

executed denotes a program taking input,

process and gives the output.

Q #48) What do you understand by B-Trees?

Ans: B-Tree represents the data structure in

the form of a tree for external memory that

reads and writes large blocks of data. It is

commonly used in databases and file

systems where all the insertions, deletions,

sorting, etc., are done in logarithmic time.

Q #49) Name the different data models that

are available for database systems.

Ans: Different data models are:

Relational model

Network model

Hierarchical model

Q #50) Differentiate between ‘DELETE’,

‘TRUNCATE’ and ‘DROP’ commands.

Ans: After the execution of ‘DELETE’

operation, COMMIT and ROLLBACK


statements can be performed to retrieve the

lost data.

After the execution of ‘TRUNCATE’

operation, COMMIT, and ROLLBACK

statements cannot be performed to retrieve

the lost data.

‘DROP’ command is used to drop the table

or key like the primary key/foreign key.

Q #51) Based on the given table, solve the

following queries.

Employee table

1) Write the SELECT command to display

the details of the employee with empid as

1004.

Ans:

SELECT empId, empName, Age, Address

from Employee WHERE empId = 1004;

Result:

2) Write the SELECT command to display all

the records of table Employee.

Ans:

SELECT * from Employee;


Result:

3) Write the SELECT command to display all

the records of the employee whose name

starts with the character ‘R’.

Ans:

SELECT * from Employee WHERE empName

LIKE ‘R%’;

Result:

4) Write a SELECT command to display id,

age and name of the employees with their

age in both ascending and descending order.

Ans:

SELECT empId, empName, Age from

Employee ORDER BY Age;

Result:

SELECT empId, empName, Age from

Employee ORDER BY Age Desc;

Result:

5) Write the SELECT command to calculate

the total amount of salary on each employee

from the below Emp table.

Emp table:
Ans:

SELECT empName, SUM(Salary) from Emp

GROUP BY empName;

You might also like