RDBMS Concepts: Database
RDBMS Concepts: Database
RDBMS Concepts
Database
A database is the place of storage of the data in the form of tables
Data means information which is very useful. A database is also collection of 1 or more
tables.
Table a table is a collection of rows and columns.
CELL
CELL
Columns
A
A
A
A
Note : If we install any of the database related software(s) we can create our own
database, we can create our own tables and we can store the data inside it.
When we install any database s/w(s) a part of hard disk will be designated /
reserved to perform database related activities
A database can also contain other database objects like views, indexes, stored
procedures, functions, triggers etc, apart from tables.
Some of the database software(s) we have are,
Oracle, SQL Server, DB2, Sybase, Informix, MySQL, MS Access, Foxbase, FoxPro
Among the above database software some of them are DBMS and some of them are
RDBMS
The s/w which is widely used today is Oracle. The different versions of Oracle starting from
the earliest to the latest are Oracle 2, Oracle 3, Oracle 4, Oracle 5, Oracle 6, Oracle 7,
1 | Page
Oracle 8i, Oracle 9i, Oracle 10g, and the latest to hit the market is Oracle 11g. here i
stands for Internet and g stands for Grid / Grid computing.
RELATIONSHIPS
A relationship is the association between any two tables which preserves data integrity.
Relationships
Master (
Parent )
Dept No.
Dept Name
Emp No.
Emp
Name
Dept No.
Salary
10
Accounting
101
10
20000
20
Research
102
10
30000
0
30
Sales
103
20
30000
Detail
( Child
)
Types of Constraints
NOT NULL
2 | Page
NULL
UNIQUE
Primary Key
Foreign Key
Check
NULL is nothing, it is neither zero nor blank space
It will not occupy any space in the memory
Two NULLS are never same in Oracle.
NULL represents unknown value
Any arithmetic operation we perform on NULL will result in NULL itself. For ex,
100000 + NULL = NULL ; 100000 * NULL = NULL
NOT NULL
- NOT NULL will ensure atleast some value should be present in a column
UNIQUE
It will not allow any duplicates in a column
UNIQUE column can take multiple NULL (s)
Primary Key
It is the combination of NOT NULL and UNIQUE
Only one PK is allowed in a table
PK identifies a record uniquely in a table
Creation of PK is not mandatory, but it is highly recommended to create
Foreign Key
FK creates relationship between any two tables
FK is also called as referential integrity constraints
FK is created on the child table
FK can take both NULL and duplicate values
To create FK, the master table should have PK defined on the common column of the
master table
We can have more than 1 FK in a given table
CHECK
It is used to provide additional validations as per the customer requirements.
Ex - 1) sal > 0
2) empnum should start with 1
3) commission should be between 1000 & 5000
Check
(sal >
0)
3 | Page
PK
NN
PK
NN
FK
NN
Uniqu
e
Uniqu
e
Dept
No.
Dept
name
Emp
No.
Emp
Name
Dept
No.
Salary
Ph
No.
10
Accountin
g
101
10
20000
0
2222
a@gm
ail
20
Research
102
10
30000
30
Sales
103
20
40000
0
3333
RELATIONSHIP
NULL
CHAPTER 2
5 | Page
The above query gives the description of the employee table. But we see that all the data
is in different lines which makes it very difficult to analyse.
So we use the following command to see the data in a more orderly fashion,
6 | Page
The set linesize command helps in increasing the line size , thus the data is arranged in
a orderly fashion.
The above command set pagesize 20 increases the page size, thus accommodating
more number of rows in a single page.
7 | Page
The above query gives the value of only these 3 columns from the table employee.
where clause is used to restrict the number of records displayed. It gives only the records
of the specified condition.
Any string data should be enclosed within single quotes ( ) and the same becomes
case sensitive.
Assignment
1) List the employees in dept 20
8 | Page
CHAPTER 3
OPERATORS
9 | Page
ASSIGNMENT
1) List the employees whose name is having atleast 2 Ls
2) List the employees whose name is having letter E as the last but one
character
3) List all the employees whose name is having letter R in the 3 rd position
11 | P a g e
ASSIGNMENT
1) List all the employees who dont have a reporting manager
LOGICAL OPERATORS
1) List all the salesmen in dept 30
13 | P a g e
2) List all the salesmen in dept number 30 and having salary greater than 1500
4) List all the employees except those who are working in dept 10 & 20.
14 | P a g e
6) List all the employees who are having reporting managers in dept 10
ASSIGNMENT
1) List the employees who are not working as managers and clerks in dept 10 and
20 with a salary in the range of 1000 to 3000
2) List the employees whose salary not in the range of 1000 to 2000 in dept
10,20,30 except all salesmen
15 | P a g e
3) List the department names which are having letter O in their locations as well
as their department names
SORTING
It arranges the data either in ascending / descending order
Ascending ASC / Descending DESC
We can sort the data using ORDER BY
By default, the data is always arranged in ASC order
For ex 1) Arrange all the employees by their salary
16 | P a g e
3) Arrange ename, sal, job, empno and sort by descending order of salary
17 | P a g e
In the above query we have order by 2 thus it arranges only the 2 nd column salary in
the descending order.
Thus to arrange the specific columns in order we must have to specify the column
number.
NOTE :- ORDER BY should be used always as the last statement in the SQL query.
Selecting DISTINCT VALUES
The above query arranges all the distinct values of department number.
CHAPTER 4
18 | P a g e
4) The below query gives the number of employees who have commission
ASSIGMENT
1) Display the total salary in department 30
GROUPING
It is the process of computing the aggregates by segregating based on one or more
columns.
20 | P a g e
HAVING
Having is used to filter the grouped data.
Where is used to filter the non grouped data.
Having should be used after group by clause
Where should be used before group by clause
For ex 1) Display job-wise highest salary only if the highest salary is more than
Rs1500
21 | P a g e
2) Display job-wise highest salary only if the highest salary is more than 1500
excluding department 30. Sort the data based on highest salary in the ascending
order.
RESTRICTIONS ON GROUPING
- we can select only the columns that are part of group by statement
If we try selecting other columns, we will get an error as shown below,
The above query is an error because job is there in the select query but not in the group
by query.
If it is enclosed in any of the group functions like sum(sal) etc then it is not an error.
But whatever table is included in the select query must also be included in the group by
query.
The above problem can be overcome with the following query as shown below,
22 | P a g e
Whatever is there in the select statement must be there in the group by statement. But,
whatever is there in the group by statement need not be present in the select statement.
This is shown in the above two corrected queries.
ASSIGNMENT
1) Display the department numbers along with the number of employees in it
2) Display the department numbers which are having more than 4 employees in
them
23 | P a g e
3) Display the maximum salary for each of the job excluding all the employees
whose name ends with S
4) Display the department numbers which are having more than 9000 as their
departmental total salary
NOTE :
To clear the screen, the command used is,
cl scr ;
if it is a large query and we cannot type it repeatedly, then type in SQL > ed ;
when we type ed ; - we get the notepad after making the necessary changes then
click on the x i.e, the close button at the top right corner then click on yes when a
dialog box asking whether to overwrite the file comes after this it comes to the oracle
screen in the next line , enter / and hit on enter button another way of ending the
query is by typing / in the next line of the query this indicates the end of the query.
CHAPTER 5
STATEMENTS
24 | P a g e
Statements they help us to create the table and insert the data.
There are 3 types of statements,
DDL Data Definition Language the various commands in DDL are :- Create, Drop,
Truncate, Alter, Rename
DML Data Manipulation Language the various commands in DML are :- Insert,
Update, Delete
TCL Transaction Control Language the various commands in TCL are :- Rollback,
Commit, Savepoint
CREATE It creates the table.
Before we study the Create command, let us first study the some of the basic datatypes
we use in SQL.
1) CHAR :It stores the fixed length character data.
It can store the alphanumeric data (i.e, numbers and characters).
2) VARCHAR
It stores the variable length character data
It can store alphanumeric data.
Difference between CHAR & VARCHAR
Let us consider an example as shown below to explain the difference.
Name char (6) ;
Here we are defining name which is of 6characters in length.
Now, let us store Tom in the name field. Let us understand how the memory is allocated
for this,
Blank Space
Reserved / Non-reusable
memory
25 | P a g e
When we declare anything of type char, the memory is allocated as of the size given and
its fixed length hence it cannot be altered.
Now, when we give tom, it allocates 6 bytes for name char only the 1st 3bytes are used
to store Tom the rest becomes waste as it is a blank space and it is reserved memory.
The length(name) = 6.
Name varchar (6) ;
Here we are defining name which is of 6characters in length.
Now, let us store Tom in the name field. Let us understand how the memory is allocated
for this,
Null
Re-usable memory
When we declare anything of type varchar, the memory is allocated as shown above and it
is variable length
When we give tom, it allocates 6bytes for name varchar only the 1st 3bytes are used to
store tom the remaining 3 fields becomes null. As we know the property of null null
does not occupy any memory space thus the memory is not wasted here.
The length(name) = 3.
Another difference is : In char, maximum value we can store is 2000 characters
In varchar, maximum value we can store is 4000 characters.
3) NUMBER
- it stores numeric data.
For ex 1) sal number(4) ;
Here the maximum possible value is 9999.
2) sal number (6, 2) ;
Here, 2 scale (total number of decimal places)
6 precision (total number of digits including decimal places)
Maximum value is 9999.99
sal number (4, 3) ;
maximum value is 9.999
sal number (2, 2)
maximum value is .99
4) DATE
- it stores date and time
26 | P a g e
dd month yy
NOTE :varchar2 from 10g, varchar & varchar2 are the same.
Earlier, varchar was supporting upto 2000 characters and varchar2 was
supporting upto 4000 characters.
5) BLOB
Stands for Binary Large Object
It stores binary data (images, movies, music files) within the database. It stores upto 4GB.
6) CLOB
Stands for Character Large Object
It stores plain character data like varchar field upto 4GB.
Create the following tables
PRODUCTS
ProdID ( PK )
ProdName ( Not Null )
Qty ( Chk > 0 )
Description
ORDERS
ProdID ( FK from products )
OrderID ( PK )
Qty_sold ( chk > 0 )
Price
Order_Date
27 | P a g e
The new table orders has been created. We can see from the above query how to reference
a child table to the parent table using the references keyword.
28 | P a g e
Thus we can verify that orders table has ben created and added to the database.
Thus we can see that we have created another table temp from the table dept.
We can verify it as shown below,
Thus, we can see that the table temp has been created.
29 | P a g e
Thus, we can see that the table temp has copied the structure of the table dept. Here, we
must observe that temp copies all the columns, rows and NOT NULL constraints only from
the table dept. It never copies PK, FK, Check constraints.
Thus, when in the interview somebody asks you I have a table which has about
1million records. How do I duplicate it into another table without using Insert
keyword and without inserting it individually all the records into the duplicated
table ?
Answer is - Use the above query of creating a table from another table and
explain it.
Thus, from the above query we can see that all the records of the table dept has been
copied into the table temp.
TRUNCATE
It removes all the data permanently, but the structure of the table remains as it is.
Ex SQL > TRUNCATE TABLE test ;
DROP
It removes both data and the structure of the table permanently from the database.
Ex SQL > DROP TABLE test ;
Let us understand the difference between drop & truncate using the below shown
example,
30 | P a g e
31 | P a g e
The above 3 queries show that 1st query has the table test1 truncated.
2nd query it shows no rows selected thus only the records from the table has been
removed. 3rd query it shows that the structure of the table is still present. Only the records
will be removed.
Thus, this explains the truncate query.
Thus from the above queries we can explain how drop works. 1st query it drops the table.
Thus the entire structure and records of the table are dropped.
2nd and 3rd query since, there is no table select & desc query for test2 will throw an
error.
Thus, this explains the drop query.
Hence, we have seen the difference between drop & truncate query.
10g Recycle Bin
TABLE
DROP
RECYC
LE
BIN
What
to do?
FLASHBACK
RESTORE IT
PURGE
PERMANENTLY REMOVE
32 | P a g e
The functionality of Recycle Bin was introduced in Oracle 10G version only. Thus even
though the table has been dropped, we can still restore it using flashback command or
we can permanently remove it using the purge command.
This concept of Recycle bin was not there in the earlier versions of Oracle.
RENAME
It renames a table.
For ex, let us see the query of how we do this renaming a table.
In the above 3queries we have created a table temp which copies table dept we see
the records of the table temp and also check if the table has really been created.
Now let us rename temp to temp23 as shown below,
33 | P a g e
Thus the table has been renamed and its contents are verified.
ALTER
- this query alters / changes the structure of the table (i.e, - adding columns, removing
columns, renaming columns etc ).
Now let us alter the table products (which we have created earlier).
1) Let us add a new column model_no to the table.
Thus, a new column has been added. Lets verify it with the query shown below,
Thus, we can see from the description of the table the column model_no has been
dropped.
3) Let us rename the column qty to qty_available.
NOTE : SELECT is neither DML nor DDL. It does not belong to any group because
it does not alter anything, it just displays the data as required by the user.
DML
35 | P a g e
INSERT
It inserts a record to a table.
Let us observe how it is done,
This is how we insert values into a table. All characters and alpha-numeric characters(ex
10023sdf78) must be enclosed in single quotes ( ) and each value must be separated by
comma. Also we must be careful in entering the data without violating the primary key,
foreign key , unique constraints.
Now let us see the table in which the data in has been inserted,
Now, let us insert data into the table orders in which a foreign key is referencing primary
key,
Here, we see that 1001 is the same prodid as of the earlier table. Sysdate it displays the
current date set in the system .
DELETE
38 | P a g e
TCL
Let us delete the employee table. When we perform select operation on emp, we can see
that all the rows have been deleted.
We now perform the rollback operation,
Thus performing the rollback operation, we can retrieve all the records which had been
deleted.
COMMIT
It saves the DML changes permanently to the database.
40 | P a g e
Committing after rollback & vice versa will not have any effect
Let us explain the above statement with an example,
Thus, from above we can see that rollback has no effect after commit operation.
During an abnormal exit i.e, shutdown or if the SQL window is closed by mouse click
then all the DMLs will be rolled back automatically.
41 | P a g e
During a normal exit exit ; - all the DMLs will be auto-committed and there will be no
rollback.
Ex 1)
INSERT
UPDATE
ALTER
DELETE
ROLLBACK
When we perform the following operations in the same order for a table then INSERT,
UPDATE will be committed because ALTER is a DDL and thus all the DMLs above it will
also be committed because DDL operations cannot be undone.
Here only DELETE will be rolled back because its a DML.
2) INSERT
UPDATE
DELETE
ROLLBACK
Here, all are rolled back.
SAVEPOINT :
It is like a pointer (break-point) till where a DML will be rolled back.
Ex :Insert
Save point x ;
Update
Delete ..
Rollback to x ;
Assignments
1) Create the following tables
a) Table name :- STUDENTS
regno (PK)
name (NN)
42 | P a g e
semester
DOB
Phone
b) Table name :- BOOKS
bookno (PK)
bname
author
c) Table name :- LIBRARY
regno (FK from students)
bookno (FK from books)
DOI date of issue
DOR date of return
2) Insert 5 records to each of these tables
3) Differentiate between,
a) Delete and Truncate
b) Truncate and Drop
c) Char and Varchar
d) Drop and Delete
Delete and Truncate
a)
Delete deletes whichever records we want to delete from the table
Truncate deletes all the records whether we want it or not
b)
NOTE The Primary Key created using more than 1 column is called as composite
primary key.
Ex alter table lib
Add primary key (regno, bookno, DOI) ;
CHAPTER 6
SUB - QUERIES
Syntax of a sub-query
Select
From
Where
OUTER QUERY
( select
From
Where
)
INNER QUERY
44 | P a g e
Assignment
1) List the department names which are having salesmen in it.
3) List the department names that are having atleast 1 employee in it.
45 | P a g e
This method is not efficient to find the maximum and minimum salary. The limit is 32. This
is not efficient if you want to find the 100th maximum salary.
We can have upto 32 levels of sub-queries only.
9) List the department names that are having no employees at all
CHAPTER 7
JOIN
47 | P a g e
Joins are used when we need to fetch the data from multiple tables
Types of JOIN(s)
Cartesian Join (product)
Inner (Equi) Join
Outer Join - Left Outer Join, Right Outer Join, Full Outer Join
Self Join
CARTESIAN JOIN
- It is based on Cartesian product theory.
Cartesian Product Theory in Mathematics states that :Let there be two sets A {1, 2, 3}
&
B {4, 5}
Thus the Cartesian product (A*B) will be,
A * B = { (1,4), (1,5), (2,4), (2,5), (3,4), (3,5) }
Thus there are 6 sets order of A is 3 & order of B is 2. Therefore, 2*3 = 6 is the
Cartesian product.
Here, each and every record of the 1 st table will combine with each and every record of the
2nd table.
If a table A is having 10 records & B is having 4 records the Cartesian join will return 10*4
= 40 records.
For ex, let us consider the following query
Display employee name along with the department name
48 | P a g e
From above we can see that the above query returns 56 records but we are expecting 14
records. This is because each and every record of employee table will be combined with
each & every record of department table.
Thus, Cartesian join should not be used in real time scenarios.
The Cartesian join contains both correct and incorrect sets of data. We have to retain the
correct ones & eliminate the incorrect ones by using the inner join.
INNER JOIN
Inner join are also called as equijoins.
They return the matching records between the tables.
In the real time scenarios, this is the most frequently used Join.
For ex, consider the query shown below,
Select A.ename, A.sal, B.dname
From emp A, dept B
Where A.deptno = B.deptno
And A.sal > 2000
Order by A.sal ;
- JOIN condition
- FILTER condition
49 | P a g e
A
Q
B
S
C
X
We want
Q
S
of
JOINS
Number
of
Scenario 2
A
50 | P a g e
B
P
C
X
We want
R
OUTER JOIN
It returns both matching and non-matching records
Outer join = inner join + non-matching records
Non-matching records means data present in one table, but absent in another table w.r.to
common columns.
For ex, 40 is there in deptno of dept table, but not there in deptno of emp table.
Display all the department names irrespective of any employee working in it or
not. If an employee is working display his name.
52 | P a g e
10
7
3
A CJ B = 60records
A IJ B = 3records(3 matching)
A LJ B = 10records (3matching + 7non matching of A)
A RJ B = 6records (3matching + 3non matching of B)
A FJ B = 13records (3matching of A & B + 7nonmatching of A + 3nonmatching of
B)
Assignment
1) Display employee name and his department name for the employees whose
name starts with S
53 | P a g e
2) Display employee name and his department name who is earning 1 st maximum
salary
SELF JOIN
Joining a table to itself is called self join
The FROM clause looks like this,
FROM emp A, emp B
Or
FROM emp A join emp B - ANSI style
For ex, - Display employee name along with their manager name
Now, let us see how this i.e the logic (the above query) works,
54 | P a g e
EmpNo
101
102
103
104
105
Emp (A)
Ename
Scott
Blake
King
Smith
Jones
Mgr
102
103
103
104
Emp (B)
EmpNo
Ename
101
Scott
102
Blake
103
King
104
Smith
105
Jones
Mgr
102
103
103
104
Now, when we give the above query in Oracle it starts matching the mgr column of
emp A with the empno of emp b we get two tables because in self join a duplicate of
the table required is created.
Now let us consider the first employee Scott it starts the mgrid of Scott with the
empno of all the records in emp B when two ids match, then the empno in emp B
becomes the mgr of the empno in emp A. Thus, we can see that mgr id 102 is matching
with empno 102 Blake in emp B. Therefore, Blake is the manager of Scott.
Similarly we do the same for all the other records of emp A and thus find the employees
and their respective managers.
Display the employees who are getting the same salary
Co related Queries :
For ex, Display the employee who is earning the highest salary
55 | P a g e
Thus, if an outer query column is being accessed inside the inner query, then that query is
said to be co-related.
Let us see the logic i.e, how we get the 1 st max salary :Emp (A)
EmpNo
Ename
101
Scott
102
Blake
103
King
104
Smith
105
Jones
Sal
300
0
400
0
500
0
200
0
100
0
Emp (B)
EmpNo
Ename
101
Scott
102
Blake
103
King
104
Smith
Sal
300
0
400
0
500
0
200
0
100
0
Assignment
1) Display the least salary from the employee table.
57 | P a g e
58 | P a g e
CHAPTER 8
FUNCTIONS
defined
GROUP functions
CHARACTER functions
NUMERIC functions
DATE functions
SPECIAL functions
These are used both in SQL and PL/SQL. PL Procedural Language (its a extension to SQL,
can contain IF statements, loops, exceptions, OOPs, etc .. )
User defined
Used only in PL/SQL and we will not study it here.
We have already learnt about GROUP functions.
59 | P a g e
60 | P a g e
2)
3)
61 | P a g e
We use dual when the data is not present in any of the existing tables. Then we use dual.
Length it returns the length of a given string.
For ex,
1)
2)
3) Display all the employees whose name & job is having exactly 5 characters
REPLACE
It replaces the old value with a new value in the given string.
For ex,
62 | P a g e
Here, a is the old value to be replaced with p which is the new value.
63 | P a g e
SUBSTR
This is called substring.
It extracts n characters from x(th) position of a given string.
For ex,
64 | P a g e
Here , (job, 1 , 3) means from job extract from 1st position , 3 characters.
1) Display the employees whose job starts with man
65 | P a g e
INSTR
This is also called as instring.
It returns position of a given character in a given string.
For ex,
Select instr (oracle , a , 1 , 1) from dual ;
Given string
Character to be searched
Position from where the search should begin
Number of occurences
CONCAT
It concatenates any two values or columns.
It is represented by - ||
For ex,
NUMERIC FUNCTIONS
1) Mod :- it returns the remainder when 1 number is divided by the other.
Round
It rounds off a given number to the nearest decimal place.
Trunc
It truncates the given number to the given decimal place. Truncate does not do any
rounding.
For ex,
2) Systimestamp
Introduced from Oracle 9i
Returns date, time and timezone.
Here, .914000 gives the fraction of millisecond which keeps changing as shown below,
68 | P a g e
69 | P a g e
We can see that 5 hrs has been added to the current time.
NVL
70 | P a g e
The above query means if the employee has commission, then add sal + comm. To get
total salary else add 0 to the sal and display total salary.
DECODE
It works like if then else statement.
For ex,
The above query states that in job, if clerk is there, replace with C else if salesman is
there, replace it with S else replace with O.
Display employee name, job, salary and commission. If the commission is NULL,
then display -100
71 | P a g e
CHAPTER 9
NORMALIZATION
72 | P a g e
Normalization is the process of splitting the bigger table into many small tables without
changing its functionality.
It is generally carried out during the design phase of SDLC.
Advantages
1) it reduces the redundancy (unnecessary repeatation of data)
2) avoids problem due to delete anamoly (inconsistency)
Normalization is a step-by-step process and in each step, we have to perform some
activities.
STEPS IN NORMALIZATION
1) 1NF 1st Normal form
2) 2NF 2nd Normal form
3) 3NF 3rd Normal form
1NF
- We should collect all the required attributes into 1 or more bigger entities.
- We have to assume no 2 records are same (i.e, records should not be duplicated)
- Identify the probable primary key
At the end of 1NF, our data looks like this,
COLLEGE
RegNo - PK
Sname
Semester
DOB
MailID
Phone
BookNo - PK
Bname
Author
DOI
DOR
Fine
2NF
To perform 2NF,
- The tables have to be in 1NF
- Here, we identify all the complete dependencies and move them separately into different
tables.
At the end of 2NF, our data looks like this,
STUDENTS
BOOKS
RegNo - PK
BookNo - PK
73 | P a g e
Sname
Semester
DOB
MailID
Phone
RegNo - FK
Bname
Author
DOI
DOR
Fine
3NF
The table will have to be in 2NF
Here, we identify all the partial dependencies and move such columns to a separate table.
STUDENTS
BOOKS
LIBRARY
RegNo - PK
BookNo - PK
Bname
Author
BookNo - FK
RegNo - FK
DOI
DOR
Fine
Sname
Semester
DOB
MailID
Phone
Disadvantage of Normalization
The only minor disadvantage is we may have to write complex queries as we have more
number of tables to be accessed.
Denormalization is the process of combining more than 1 smaller table to form 1 bigger
table is called as denormalization.
CODD rules ( Differentiates between DBMS & RDBMS )
1) should support NULL values
2) should support creation of relationship between tables
3) should support DDL, DML, TCL
4) should support constraints like PK, Unique, CHK
5) should support query techniques like sub queries, joins, grouping etc.
Oracle 9i Features (i means internet)
- TIMESTAMP datatype
- SYSTIMESTAMP function
- ANSI style joins
- Renaming a column
Oracle 10g features (g means grid)
- Recycle Bin
ERD - Entity Relationship Diagram
It is the pictorial representation of all the entities and their relationships (tables).
STUDENTS
RegNo - PK
Sname
Semester
DOB
MailID
Phone
74 | P a g e
STUDENTS _
INTERNALS
RegNo - FK
Sid
Marks
BOOKS
BookNo - PK
BName
Author
LIBRARY
BookNo
- FK
RegNo - FK
DOI
DOR
Fine
VERY IMPORTANT
Phone No. of Chethan Sir 9741120618
Email id of chethan sir chethanfig @ yahoo.com
***** THE END *****
to recompile view
B.
C.
to recompile a table
D.
to create a trigger
E.
Answer: B
2. A ____ contains the smallest unit of meaningful data, so you might call it the basic building block for a
data file.
A.
File structure
B.
Records
C.
Fields
D.
Database
E.
Answer: C
storage function
B.
processing functions
C.
access control
D.
E.
Answer: B
B.
MK USER
76 | P a g e
C.
CREATE USER
D.
E.
Answer: C
B.
you look at each form sequentially until you see the one you want
C.
you type the key in an entry line, and the correct form is displayed
D.
E.
Answer: A
6. A _____ means that one record in a particular record type is related to only one record of another record
type.
A.
One-to-one relationship
B.
One-to-many relationship
C.
Many-to-one relationship
D.
Many-to-many relationship
E.
Answer: A
7. A _____ database does not use pointers or physical links, but instead finds related records by examining
the contents of fields.
A.
Network
77 | P a g e
B.
Hierarchical
C.
Relational
D.
Object-Oriented
E.
Answer: C
8. In SQL, which command(s) is(are) used to redefine an index's future storage allocation
A.
ALTER INDEX
B.
REDEFINE INDEX
C.
MODIFY INDEX
D.
DO INDEX
E.
Answer: A
difficult to update
B.
C.
data redundancy
D.
program dependence
E.
Answer: E
10. With respect to data input, the most accurate description of batch control is
A.
B.
C.
comparing to a pre-calculated figure the total of a data item summed across a batch records put
into the system
D.
E.
Answer: C
11. The model for a _____ resembles the hierarchical model in many respects.
A.
Network database
B.
Relational database
C.
Distributed database
D.
Hierarchical database
E.
Answer: A
12. A set of programs that handle a firm's data base responsibilities is called a
A.
B.
C.
D.
E.
Answer: D
13. In any hierarchy of data organization, the smallest entity to be processed as a single unit is called
A.
data field
79 | P a g e
B.
data record
C.
data file
D.
database
E.
Answer: A
14. Long-range planning report produced in an MIS are primarily designed for
A.
top management
B.
middle management
C.
lower management
D.
E.
Answer: A
handwritten list
B.
C.
a business form
D.
E.
Answer: D
filed designators
80 | P a g e
B.
prompts
C.
data
D.
E.
Answer: D
17. Which of the following contains a complete record of all activity that affected the contents of a
database during a certain period of time?
A.
report writer
B.
query language
C.
D.
transaction log
E.
Answer: D
B.
C.
they have no records with the same value in the common field
D.
E.
Answer: B
B.
a multiprocessing environment
C.
D.
E.
Answer: D
20. The data-base environment has all of the following components except:
A.
users
B.
separate files
C.
data base
D.
data-base administrator
E.
Answer: B
21. The way a particular application views the data from the data base that the application uses is a :
A.
module
B.
relational model
C.
schema
D.
subschema
E.
Answer: D
B.
C.
D.
E.
Answer: C
83 | P a g e