Competancy Based Questions Xii
Competancy Based Questions Xii
TOPIC PAGE
05 CSV files 57
07 Computer Network 74
08 Database Management 94
System
4 MARK QUESTIONS
Q1.Differentiate between break and continue statement used in python.
Q2What is comment in python ? Explain its significance.
Q3.Explain the types of errors occurring in python programming language.
5 MARK QUESTIONS
Q1.Differentiate between type conversion and type casting in python with examples.
Q2.Explain mutable and immutable objects in python with examples.
Q3. What is the use of else statement in for loop and in while loop ? Explain.
ANSWERS
ANSWER OF 1 MARK QUESTIONS
1) (iv)
2) (iv)
3) (ii)
3
Page
4) (iii)
5) (iii)
6) (iii)
7) (iii)
8) (iv)
9) (iii)
10) (ii)
2) Comments in Python are identified with a hash symbol, #, and extend to the end of the line.
Hash characters in a string are not considered comments, however. There are three ways to
write a comment - as a separate line, beside the corresponding statement of code, or as a
multi- line comment block.
here are multiple uses of writing comments in Python. Some significant uses include:
• Increasing readability
• Explaining the code to others
• Understanding the code easily after a long-term
• Including resources
• Re-using the existing code
3. There are three types of Python errors.
1. Syntax errors
Syntax errors are the most basic type of error. They arise when the Python parser is unable to
understand a line of code. Syntax errors are almost always fatal, i.e. there is almost never a
way to successfully execute a piece of code containing syntax errors.
2.Logical errors
These are the most difficult type of error to find, because they will give unpredictable results
and may crash your program. A lot of different things can happen if you have a logic error.
3. Run time errors
Run time errors arise when the python knows what to do with a piece of code but is unable to
perform the action.Since Python is an interpreted language, these errors will not occur until
the flow of control in your program reaches the line with the problem. Common example of
runtime errors are using an undefined variable or mistyped the variable name.
2. Mutable in Python can be defined as the object that can change or be regarded as something
changeable in nature. Mutable means the ability to modify or edit a value.
Mutable objects in Python enable the programmers to have objects that can change their
values. They generally are utilized to store a collection of data. It can be regarded as
something that has mutated, and the internal state applicable within an object has changed.
Immutable objects in Python can be defined as objects that do not change their values and
attributes over time.
These objects become permanent once created and initialized, and they form a critical part of
data structures used in Python.
Python is used in numbers, tuples, strings, frozen sets, and user-defined classes with some
exceptions. They cannot change, and their values and it remains permanent once they are
initialized and hence called immutable.
3. Else with loop is used with both while and for loop. The else block is executed at the end
of loop means when the given loop condition is false then the else block is executed.
i= 0
while i<5:
i+=1
print("i =",i)
else:
print("else block is executed")
Explanation
• declare i=0
• we know then while loop is active until the given condition is true. and we check i<5 it’s
true till the value of i is 4.
• i+=1 increment of i because we don’t want to execute the while loop infinite times.
• print the value of i
• else block execute when the value of i is 5.
l = [1, 2, 3, 4, 5]
for a in l:
print(a)
else:
print("else block is executed")
Explanation
• declare a list l=[1,2,3,4,5]
• for loop print a.
• else block is execute when the for loop is read last element of list.
6
Page
STRINGS, LISTS AND
DICTIONARIES
MIND MAP
2 MARKS QUESTIONS
Q1. Rewrite the following code in python after removing all syntax error(s). Underline each
correction done in the code.
STRING=""WELCOME
NOTE""
for S in range[0,8]:
print (STRING(S))
Q2. Find output generated by the following code:
Str=”Computer”
Str=Str[-4:]
print(Str*2)
Q3. What will be the output of the following question
L = [10,19,45,77,10,22,2]
i) L.sort() ii) max(L)
print(L)
Q4. Find the output
L = [10,19,45,77,10,22,2]
i) L[3:5] ii) L[: : -2]
Q5. Distinguish between list and tuple.
Q6. Read the code given below and show the keys and values separately.
D = {‘one’ : 1, ‘two’ : 2, ‘three’ : 3}
Q7. Observe the given list and answer the question that follows.
List1 = [23,45,63, ‘hello’, 20, ‘world’,15,18]
i) list1[-3] ii) list1[3]
Q8. Assertion (A) :
s = [11, 12, 13, 14]
s[1] = 15
Reasoning (R) : List is immutable.
(A) Both A and R are true and R is the correct explanation of assertion.
(B) A and R both are true but R is not the correct explanation of A .
(C) A is true, R is false.
(D) A is false, R is true.
9
Page
Q9. a=(1,2,3)
a[0]=4
Assertion: The above code will result in error
Reason: Tuples are immutable. So we can’t change them.
(A) Both Assertion and reason are true and reason is correct explanation of assertion.
(B) Assertion and reason both are true but reason is not the correct explanation of assertion.
(C) Assertion is true, reason is false.
(D) Assertion is false, reason is true.
ANSWERS
Q1. CORRECTED CODE:-
STRING= "WELCOME"
NOTE=" "
for S in range (0, 7) :
print (STRING [S])
Also range(0,8) will give a runtime error as the index is out of range. It shouldbe range(0,7)
Q2. Q3. Q4.
uter [2, 10, 10, 19, 22, 45, 77] [77, 10]
‘ComputerComputer’ [2, 10, 45, 10]
Q5.
List Tuple
Elements of a list are mutable Elements of tuple are immutable
List is declared in square brackets [] Tuple is declared in parenthesis ()
Iterating over elements in list is slower as Iterating over elements of tuples is faster as
compared to tuple compared to list
e.g L1 = [1,2,3] e.g T1 = (1,2,3)
Q6. Q7. Q8. (C) Q9. (A)
Keys: ‘one’, ‘two’, ‘three’ ‘world’
Values: 1,2,3 ‘hello’
3 MARKS QUESTIONS
Q1. Which of the string built in methods are used in following conditions?
ii) Returns the length of a string
iii) Removes all leading whitespaces in string
iv) Returns the minimum alphabetic character from a string
Q2. Write a program to remove all the characters of odd index value in a string
Q3. Write a python program to count the frequencies of each elements of a list using
dictionary
Q4. what will be the output of the following python code
L = [10,20]
L1 = [30,40]
L2 = [50,60]
L.append(L1)
print(L)
L.extend(L2)
print(L)
print(len(L)
Q5. Find the output of the given question
t = (4,0,’hello’,90,’two’,(‘one’,45),34,2)
i) t[5]
ii) t[3:7]
10
4 MARKS QUESTIONS
Q1. Find the output
i) 'python'.capitalize()
ii) max('12321')
iii) 'python'.index('ho')
iv) 'python'.endswith('thon')
Q2. Consider the following code and answer the question that follows.
book = {1:'Thriller',2:'Mystery',3:'Crime',4:'Children Stories'}
library = {5:'Madras Diaries',6:'Malgudi Days'}
v) Ramesh wants to change the book ‘Crime’ to ‘Crime Thriller’. He has written the
following code:
book['Crime'] = 'Crime Thriller'
but he is not getting the answer. Help him to write the correct command.
vi) Ramesh wants to merge the dictionary book with the dictionary library. Help him to write
the command.
Q3. Write the suitable method names for the conditions given below:
i) Add an element at the end of the list
ii) Return the index of first occurrence of an element
iii) Add the content of list2 at the end of list1
iv) Arrange the elements of a list1 in descending order
ANSWERS
Q1.
i) 'Python' ii) '3' iii) 3 iv) True
11
Page
Q2. i) book[3] = 'Crime Thriller'
ii) library.update(book)
Q3. i) append() ii) index() iii) list1.extend(list2)
iv) list1.sort(reverse = True)
5 MARKS QUESTIONS
Q1. Find the output of the following code:
a = (5,(7,5,(1,2)),5,4)
print(a.count(5))
print(a[1][2])
print(a * 3)
print(len(a))
b = (7,8,(4,5))
print(a + b)
Q2. Following is a program to check a list is same if it is read from front or from back.
Observe the program and answer the following questions:
a = [1,2,3,3,2,1]
i= # statement 1
mid = (len(a)) / 2
same = True
while : # statement 2
if a[i] != : # statement 3
print(“NO”)
same = False
break
# statement 4
if same == : # statement 5
print(“YES”)
ANSWERS
Q1. 2
(1, 2)
(5, (7, 5, (1, 2)), 5, 4, 5, (7, 5, (1, 2)), 5, 4, 5, (7, 5, (1, 2)), 5, 4)
4
(5, (7, 5, (1, 2)), 5, 4, 7, 8, (4, 5))
Q2. i) 0
ii) i < mid
iii) a[i] != a[len(a) – i – 1]
iv) i = i + 1
v) True
Q3. i) title()
Returns the string with first letter of every word in the string in uppercase and rest in
lowercase.
12
Page
>>> str1 = 'hello WORLD!'
>>> str1.title()
'Hello World!'
ii) count( )
Returns number of times substring str occurs in the given string. If we do not give start index
and end index then searching starts from index 0 and ends at length of the string.
>>> str1 = 'Hello World! Hello Hello'
>>> str1.count('Hello',12,25)
2
>>> str1.count('Hello')
3
iii) find()
Returns the first occurrence of index of substring stroccurring in the given string. If we do not
give start and end then searching starts from index 0 and ends at length of the string. If the
substring is not present in the given string, then the function returns -1
>>>str1= 'Hello World! Hello Hello'
>>> str1.find('Hello',10,20)
13
>>> str1.find('Hello',15,25)
19
>>> str1.find('Hello')
0
>>> str1.find('Hee')
-1
iv) index( )
Same as find() but raises an exception if the substring is not present in the given string
>>> str1 = 'Hello World! Hello Hello'
>>> str1.index('Hello')
0
>>> str1.index('Hee')
ValueError: substring not found
v) join()
Returns a string in which the characters in the string have been joined by a separator
>>> str1 = ('HelloWorld!')
>>> str2 = '-' #separator
>>> str2.join(str1)
'H-e-l-l-o-W-o-r-l-d-!'
13
Page
FUNCTION IN PYTHON
MIND MAP ON FUNCTION
Function: A function is a group of statements that exists within a
program for the purpose of performing a specific task.
Types of Arguments/Parameters
1. (a) None
2. (c) Both function name and parameter list
3. (c) def
4. (d) return number
5. (c) def f(a=1, b=1, c=2):
6. (a) You can pass positional arguments in any order.
7. (b) A global variable
8. (b) LEGB
9. (c) A is True but R is False
10. (b) Flow of execution
11. (c) Both Statements are Correct
12. c) scope
On the basis of the above code, choose the right statement which will be executed when
different inputs for pay and location are given
(i) Input: location = “Chennai”, pay = 50000
a. Statement 1 b. Statement 2 c. Statement 3 d. Statement 4
(ii) Input: location = “Surat” ,pay = 50000
a. Statement 2 b. Statement 4 c. Statement 5 d. Statement 6
(iii) Input- location = “Any Other City”, pay = 1
a Statement 1 b. Statement 2 c. Statement 4 d. Statement 6
20
Page
(iv) Input location = “Delhi”, pay = 500000
a. Statement 6 b. Statement 5 c. Statement 4 d. Statement 3
Q2. Kids Elementary is a Playway school that focuses on “Play and learn” strategy that helps
toddlers understand concepts in a fun way. Being a senior programmer, you have taken
responsibility to develop a program using user-defined functions to help children differentiate
between upper case and lower case letters/ English alphabet in a given sequence. Make sure
that you perform a careful analysis of the type of alphabets and sentences that can be included
as per age and curriculum. Write a python program that accepts a string and calculates the
number of upper case letters and lower case letters.
Answer:
def string_test(s):
d={"UPPER_CASE":0,"LOWER_CASE":0}
for c in s:
if c.isupper():
d["UPPER_CASE"]+=1
elif c.islower():
d["LOWER_CASE"]+=1
else:
pass
print("Original String:",s)
print("No. of Upper Case Characters:",d["UPPER_CASE"])
print("No. of Lower Case Characters:",d["LOWER_CASE"])
string_test("Play Learn and Grow")
Q2. Observe the following code and select appropriate answers for the given questions:
total=1
def multiply(l): # line1
for x in l:
total # line2
total*=x
return # line3
l=[2,3,4]
print(multiply( ), end=” “) # line4
print(“ , Thank You”)
(i) Identify the part of function in # line1
(a) Function header (b) Function calling (c) Return statement (d)Default argument
(ii) Which of the keyword is used to fill in the blank for # line2 to run the program
without error.
(a) eval (b) def (c) global (d) return
(iii) Which variable is going to be returned in # line3
(a) total (b) x (c) l (d) None
(iv) Which variable is required in the # line4
(a) total (b) x (c) l (d) None
(v) In the # line4 the multiple(l) is called
(a) Caller (b) Called (c) Parameters (d) Arguments
Answer: (i) (a) Function header
(ii) (c) global
(iii) (a) total
(iv) (c) l
(v) (a) Caller
22
Page
Exception Handling
Exception: Contradictory or Unexpected situation or unexpected error, during program
execution, is known as Exception.
Exception Handling: Way of handling anomalous situations in a program-run, is known as
Exception Handling.
➢ Divide by zero errors Some common examples of Exceptions are: ➢ Hard disk crash
➢ Accessing the elements of an array beyond its range ➢ Opening a non-existent file
➢ Invalid input ➢ Heap memory exhausted
Example:
try :
print ("result of 10/5 = ", (10/5))
print ("result of 10/0 = ", (10/0))
except :
print ("Divide by Zero Error! Denominator must not be zero!")
The output produced by above code is as shown below :
result of 10 / 5 = 2
result of 10 / 0 = Divide by Zero Error! Denominator must not be zero!
1 Marks Question:
1. Errors resulting out of violation of programming language’s grammar rules are known as:
(a) Compile time error (b) Logical error (c) Runtime error (d) Exception
2. An unexpected event that occurs during runtime and causes program disruption, is called:
(a) Compile time error (b) Logical error (c) Runtime error (d) Exception
3. Which of the following keywords are not specific to exception handling ?
(a) try (b) except (c) finally (d) else
4. Which of the following blocks is a ‘must-execute’ block ?
(a) try (b) except (c) finally (d) else
5. Which keyword is used to force an exception ?
(a) try (b) except (c) raise (d) finally
Answers:
1. (a) 2. (d) 3. (d) 4. (c) 5. (c)
Predict the output of the following code for these function calls:
(a) divide(2, 1) (b) divide(2, 0) (c) divide(“2”, “1”)
def divide(x, y):
try:
result = x/y
except ZeroDivisionError:
print ("division by zero!")
else:
print ("result is", result)
finally:
print ("executing finally clause")
Solution.
(a) divide(2, 1) result is 2
executing finally clause
(b) divide(2, 0) division by zero!
executing finally clause
(c) divide(“2”, “1”)
executing finally clause
Traceback (most recent call last):
TypeError: unsupported operand type(s) for /: 'str' and 'str'
23
Page
FILE HANDLING – TEXT FILES
1- MARK QUESTIONS
1. To read three characters from a file object f, we use ……… .
(a) f.read(3) (b) f.read() (c) f.readline() (d) f.readlines()
2. The files that consists of human readable characters
(a) binary file (b) text file (c) Both (a) and (b) (d) None of these
3. Which function is used to write a list of string in a file?
(a) writeline() (b) writelines() (c) writestatement() (d) writefullline()
1. (a) ) 2. (b) 3. (a) 4. (a)5. (d) 6. (b) 7. (b) 8. (a)9. (b) 10.
2 MARK QUESTIONS
Q1. Write a single loop to display all the contens of a text file file1.txt after removing leading
and trailing WHITESPACES
out=open('output.txt','w')
out.write('hello,world!\n')
out.write('how are you')
out.close( )
open('output.txt').read( )
25
Page
Q3. Read the code given below and answer the questions
f1=open('main.txt','w')
f1.write('bye')
f1.close()
If the file contains 'GOOD' before execution, what will be the content of the file after
execution of the code
Q4. Observe the following code and answer the follow
f1=open("mydata","a")
#blank1
f1.close()
(i) what type of file is mydata
(ii) Fill in the blank1 with statement to write "abc" in the file "mydata"
Q5. A given text file data.txt contains :
Line1\n
\n
line3
Line 4
\n
line6
What would be the output of following code?
f1=open('data.txt')
L=f1.readlines()
print(L[0])
print(L[2])
print(L[5])
print(L[1])
print(L[4])
print(L[3])
Q6. In which of the following file modes the existing data of the file will not be lost?
i) rb
ii) w
iii) a+b
iv) wb+
v) r+
vi) ab
vii) w+b
viii)wb
ix) w+
Q7. What would be the data types of variables data in following statements?
i) Data=f.read( )
ii) Data=f.read(10)
iii) Data=f.readline()
iv)Data=f.readlines()
Q8 Suppose a file name test1.txt store alphabets in it then what is the output of the following
code
f1=open("test1.txt")
size=len(f1.read())
print(f1.read(5))
Q9. What is standard input, output and error steams?
26
Q1. Write a python code to find the size of the file in bytes, number of lines and number
of words.
# reading data from a file and find size, lines, words
f=open(‘Lines.txt’,’r’)
str=f.read( )
size=len(str)
print(‘size of file n bytes’,size)
f.seek(0)
L=f.readlines( )
word=L.split( )
print(‘Number of lines ’,len(L))
print(‘Number of words ’,len(word))
f.close( )
Q2. Write code to print just the last line of a text file “data.txt”.
Ans: fin=open(“data.txt”,”r”)
lineList=fin.readlines()
print(“Last line = “, lineList[-1])
Q.3 Write a program to count the words “to” and “the” present in a text file
“python.txt”.
Ans.
fname = "python.txt"
num_words = 0
f= open(fname, 'r')
words = f.read().split()
for a in words:
if (a.tolower() == “to” or a.tolower() == “the” ):
num_words = num_words + 1
print("Number of words:", num_words)
f.close()
Q.4. Write a program to display all the lines in a file “python.txt” along with line/record
number.
Ans.
fh=open("python.txt","r")
count=0
lines=fh.readlines()
for a in lines:
count=count+1
print(count,a)
fh.close()
Q. 5 Write a program to display all the lines in a file “python.txt” which have the word
“to” in it.
Ans.
fh=open("python.txt","r")
count=0
lines=fh.readlines()
for a in lines:
if (a.tolower().count(“to”) > 0) :
print(a)
fh.close()
28
Page
3- MARK QUESTIONS
1. Write a python program to create and read the city.txt file in one go and print
the contents on the output screen.
Answer:
# Creating file with open() function
f=open("city.txt","w")
f.write("My city is very clean city.")
f.close()
# Reading contents from city.txt file
f=open("city.txt","r")
dt = f.read()
print(dt)
f.close()
2. Consider following lines for the file friends.txt and predict the output:
Friends are crazy, Friends are naughty !
Friends are honest, Friends are best !
Friends are like keygen, friends are like license key !
We are nothing without friends, Life is not possible without friends !
f = open("friends.txt")
l = f.readline()
l2 = f.readline(18)
ch3=f.read(10)
print(l2)
print(ch3)
print(f.readline())
f.close()
Output:
Friends are honest
, Friends
are best !
Explanation:
In line no. 2, f.readline() function reads first line and stores the output string in l but not printed
in the code, then it moves the pointer to next line in the file. In next statement we have
f.readline(18) which reads next 18 characters and place the cursor at the next position i.e.
comma (,) , in next statement f.read(10) reads next 10 characters and stores in ch3 variable and
then cursor moves to the next position and at last f.readline() function print() the entire line.
3. Write a function count_lines() to count and display the total number of lines from the
file. Consider above file – friends.txt.
def count_lines():
f = open("friends.txt")
cnt =0
for lines in f:
cnt+=1
lines = f.readline()
print("no. of lines:",cnt)
f.close()
4. Write a function display_oddLines() to display odd number lines from the text file.
Consider above file – friends.txt.
def display_oddLines():
f = open("friends.txt")
cnt =0
29
for lines in f:
Page
cnt+=1
lines = f.readline()
if cnt%2!=0:
print(lines)
f.close()
5. Write a function cust_data() to ask user to enter their names and age to store data in
customer.txt file.
def cust_data():
name = input("Enter customer name:")
age=int(input("Enter customer age:"))
data = str([name,age])
f = open("customer.txt","w")
f.write(data)
f.close()
4 MARK QUESTIONS
Q1. This question consists of 6 sub-questions . Attempt any 5 questions.
Below is a program to delete the line having word (passed as argument). Answer the
questions that follow to execute the program successfully.
def filedel(word) :
file1 = open(“Python.txt ”,“ ”) # Statement 1
nfile = open(“algo.txt”, “w”)
while True :
line = file1. # Statement 2
if not line :
break
else :
if word in line :
# Statement 3
else :
print(line)
nfile. (line) # Statement 4
file1.close()
. close() # Statement 5
filedel(‘write’)
(i) In which mode, program should open the file to delete the line in statement 2?
(a) w (b) r (c) r+ (d) a+
(ii) Choose the correct option to fill up the blank in line marked as Statement 3.
(a) read() (b) read(n) (c) readlines() (d) readline()
(iii) Identify the missing code for blank space in line marked as Statement 4.
(a) True (b) Flag (c) pass (d) False
(iv) Choose the correct option to fill up the blank in line marked as Statement 5.
(a) read (b) write (c) writelines (d) writeline
(v) Choose the correct option to fill up the blank in line marked as Statement 6.
(a) file 1 (b) file (c) nfile (d) None
Answer – 1
(i) (b) (ii). (d) (iii) (c) (iv). (b) (v). (c)
(i). Choose the correct option to fill up the blank marked as Line 1.
(a) status (b) “status.txt” (c) status.txt (d) file.txt
(ii) Choose the correct option to fill up the blank marked as Line 2.
(a) 0 (b) 1 (c) False (d) True
(iii) Which function will be used to read the content of file marked as Line 3?
(a) readline() (b) readlines() (c) read() (d) read(n)
(iv) Choose the correct option to fill up the blank marked as Line 4.
(a) continue (b) break (c) goto (d) label
(v) Which value will be assign to variable count in Line 5?
(a) count −1 (b) count*i (c) count +1 (d) count + i
(vi). Identify the missing code in Line 6.
(a) f.close (b) myfile.close (c) file.close() (d) f.close()
Answer – 2
(i). (b) (ii). (d) (iii). (a) (iv). (b) (v). (c) (vi). (d)
MIND MAP
Binary Files
FILE HANDLING
Text Files
Binary Files-A binary file stores the data in the same way as as stored in the memory. The
.exe files,mp3 file, image files, word documents are some of the examples of binary files.we
can’t read a binary file using a text editor.e.g. .bmp,.cdr etc.
Text File Binary File
Its Bits represent character. Its Bits represent a custom data.
Less prone to get corrupt as change reflects as Can easily get corrupted, corrupt on even single
soon as made and can be undone. bit change
Canstore different types of data (audio,
Store only plain text in a file.
text,image) in a single file.
Widely used file format and can be opened in any Developed for an application and can be opened
text editor. in that application only.
Mostly .txt,.rtf are used as extensions totext files. Can have any application defined extension.
Opening and closing of binary file is same as text file opening and closing. While opening
any binary file we have to specify ‘b’ in file opening mode.
Python has a module which does this work for us and is extremely easy to use. This module
is called pickle; it provides us with the ability to serialize and deserialize objects, i.e., to
convert objects into bitstreams which can be stored into files and later be used to
reconstruct the original objects.
pickle.dump() function is used to store the object data to the file. It takes 3 arguments.First
argument is the object that we want to store. The second argument is the file object we get
by opening the desired file in write-binary (wb) mode. And the third argument is the key-
value argument.
Pickle.load() function is used to retrieve pickled data.The steps are quite simple. We have to
use pickle.load() function to do that.
A Binary file is a file that contains information in the same format in which the information
is held in memory, ie the file content that is returned to us is raw ( with no translation or
specific encoding )
2 Marks Questions
Q(ii)
Assertion ( A ) : Access mode ‘a’ opens a file for appending.
Reason ( R ) : The file pointer is at the end of the file if the file exists.
6. Write in short : 2
i) What is the use of open( ) method ?
ii) What is the use of tell( ) method ?
7. What is the use of load( ) and dump( ) methods? 2
8. Answer in brief : 2
i) Purpose of close( ) function.
ii) Purpose of flush( ) function.
9. Explain seek( ) method. 2
3 Marks Questions
3. Write a program that reads a binary file “emp.dat” and displays all records of 3
employees one by one.
4. Write a program that reads a binary file “emp.dat” and display the records of all 3
those employees who are getting salary greater than 20000.
5. a) Which method is used to write list, tuple and sequence data types in a binary file ? 3
b) Which function forces Python to write the contents of buffer to file?
c) Which area is automatically associated with the file when we open it?
4 Marks Questions
i) Search operation
ii) Append operation
iii) Update operation
36
Page
iv) tell(0 function
3. Create the file phonebook.dat that stores the details in following format : 4
Name Phone
Alex 7865443
Neha 8855342
Obtain the details from the user.
5 Marks Questions
1. Write a function to write numbers into a binary file and read the same. 5
Ramesh, was assigned anincomplete task search( ) function whose purpose was to
search in a pickled file student.dat The following information about student.dat is
known :
Ramesh has been assigned the task tocomplete the code and print details of roll
number 1 .
def search( ) :
f=open("student.dat", ) # statement-1
: # statement-2
while True :
rec=pickle. # statement-3
if( ) : # statement-4
print(rec)
except : pass
# statement-5
iv) What will be the suitable code for blank space in statement-4?
a) rec[0]==2 b) rec[1]==2 c) rec[2]=2 d) rec[0]==1
5 Write a function in python to search and display details, whose destination is “Cochin”
from binary file “Bus.Dat”. Assuming the binary file is containing the following elements in
the list:
1. Bus Number
2. Bus Starting Point
3. Bus Destination
4.
6. Write a function addrec() in Python to add more new records at the bottom of a binary
file “STUDENT.dat”, assuming the binary file is containing the following structure :
[Roll Number, Student Name]
7. Write a function searchprod( pc) in python to display the record of a particular product
from a file product.dat whose code is passedas an argument. Structure of product contains
the following elements [product code , product price]
9. Write a function countrec(sport name) in Python which accepts the name of sport as
parameter and count and display the coach name of a sport which is passed as argument
from the binary file “sport.dat”. Structure of record in a file is given below ——————– –
[sport name, coach name]
10. A binary file “salary.DAT” has structure [employee id, employee name, salary]. Write a
function countrec() in Python that would read contents of the file “salary.DAT” and display
the details of those employee whose salary is above 20000.
38
Page
11. Amit is a monitor of class XII-A andhe stored the record of all the students of his class in
a file named “class.dat”. Structure of record is [roll number, name, percentage]. His
computer teacher has assigned the following duty to Amit
Write a function remcount( ) to count the number of students who need remedial class
(student who scored less than 40 percent)
Marking Scheme
1 Mark Questions
1. b) .DAT 1
2. load() 1
3. False 1
4. c) pickle 1
5. a) wb+ 1
6. True 1
7. (c) dump( ) and load( ) 1
8. with 1
9. load() 1
10. b) dump() 1
2 Marks Questions
1. a) True 2
b) False
2. i) It can handle large files. 2
ii) It consists of data with a specific pattern without any delimiter,
3. a) f1=open(“BOOK.DAT”,”r”) 2
b) f2=open(“BOOK.DAT”,”w+”)
4. a) Textfile. 2
b) File.write(“ABC”)
5. i) Option B is correct. 2
ii) Option A is correct.
6. i) It opens a file on disk and associates it witha file handle. 2
ii) It tells us the current position of the file pointer within the file.
7. load( ) function is used for reading data fromn a binary file. 2
dump( ) function is to write the object in a binary file.
8. i) It breaks the link of the file object and the file on disk. After file is closed, no file 2
operations can be don on the file.
ii) It forces the writing of data on the disk still pending in output buffers.
9. Syntax is seek( offset, from_what) 2
It changes the current file pointer position. The offset argument indicates the
number of bytes to be moved. The from_what argument specifiesthe reference
[position from where the bytes are to be moved.
3 Marks Questions
39
Page
1. a) wb+ mode is used to open a binary file in write and read modes both. 3
b) ab+ mode is used to open a binary file in append and read mode both.
Previous content is preserved.
c) rb mode is used to open a binary file in read only mode. No other operation can
be performed.
2. a) Serialization is to convert objects into bitstreams which can be stored into 3
files, whereas de-serialization is used toreconstruct the original objects. It is
also known as pickling.
b) The dump( ) function is used to perform pickling ie write data into a binary file.
Whereas the load( ) function is used to perform unpickling ie read data from a
binary file.
c) close( ) function delinks the file_object with the file on the disk. The flush( )
function forces the write operation on the disk file which remains in the pending
status.
3. import pickle 3
f1=open("emp.dat","rb")
e=pickle.load(f1)
for x in e :
print(x)
f1.close( )
4. import pickle 3
f1=open("emp.dat","rb")
e=pickle.load(f1)
for x in e :
if(e[x]>20000) :
print(x)
f1.close()
5. a) writelines( ) 3
b) flush( )
c) buffer
4 Marks Questions
1. def Readfile( ) : 4
i=open(“EMP.DAT”,”rb+”)
x=i.readline()
while(x) :
I=x.slpit(‘:’)
If ((float(I[2])>=20000) and ( float(I[2])<40000)) :
print(x)
x=i.readline()
i.close()
2. 4
i) Search operation :
There is no pre-defined function available in python for searching records. It
involves reading of the binary file and then comparing each record with our
given value. ( This is the linear search process )
iv) tell( ) function : It returns the current position of the file pointer in the
file.
pickle.dump(x.file)
Page
ans=raw_input(More data y / n : ")
if ans.upper( ) =='N ' :
break
file.close( )
2. i) Correct option is c) rb 5
ii) Correct option is c) try
iii) Correct option is c) load(f)
iv) Correct option is d) rec[0]==1
v) Correct option is c) f.close( )
3 import pickle 5
def createfile():
fobj=open("Book.dat","ab")
BookNo=int(input("Enter Book Number : "))
Book_name=input("Enter book Name :")
Author = input("Enter Author name: ")
Price = int(input("Price of book : "))
rec=[BookNo, Book_name ,Author, Price]
pickle.dump(rec, fobj)
fobj.close()
createfile() # This function is called just to verify result and not required in exam
def countrec(Author):
fobj=open("Book.dat", "rb")
num = 0
try:
while True:
rec=pickle.load(fobj)
if Author==rec[2]:
num = num + 1
print(rec[0],rec[1],rec[2],rec[3])
except:
fobj.close()
return num
n=countrec("amit") # This function is called just to verify result and not required in
exam
print("Total records", n) # This statement is just to verify result and not required in
exam
4 import pickle 5
def countrec():
fobj=open("student.dat","rb")
num = 0
try:
while True:
rec=pickle.load(fobj)
if rec[2]>75:
42
Page
num = num + 1
print(rec[0],rec[1],rec[2])
except:
fobj.close()
return num
5 import pickle 5
def countrec():
fobj=open("bus.dat","rb")
num = 0
try:
while True:
rec=pickle.load(fobj)
if rec[2]=="Cochin" or rec[2]=="cochin":
num = num + 1
print(rec[0],rec[1],rec[2])
except:
fobj.close()
return num
n=countrec() # This function is called just to verify result
print(n)
6 import pickle 3
def addrec():
fobj=open("student.dat","ab")
rollno=int(input("Roll Number : "))
sname=input("Student Name :")
rec=[rollno,sname]
pickle.dump(rec,fobj)
fobj.close()
addrec()
7 import pickle 5
def searchprod(pc):
fobj=open("product.dat","rb")
num = 0
try:
while True:
rec=pickle.load(fobj)
if rec[0]==pc:
print(rec)
except:
fobj.close()
print(rec[0],"\t\t",rec[1])
num=num+1
return num
except:
fobj.close()
10 def countrec(): 5
num=0
fobj=open("data.dat","rb")
try:
print("Emp id\tEmp Name\tEmp Sal")
while True:
rec=pickle.load(fobj)
if rec[2]>20000:
print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
except:
fobj.close()
countrec()# This function is called to verify the result
11 def countrec(): 5
fobj=open("data.dat","rb")
try:
print("Emp id\tEmp Name\tEmp Sal")
while True:
rec=pickle.load(fobj)
if rec[2]>20000:
print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
except:
fobj.close()
countrec()# This function is called to verify the result
44
Page
File Handling (CSV File)
CSV (Comma Separated Values) is a file format for data storage which looks like a text
file. The information is organized with one record on each line and each field is separated by
comma.
CSV File
• CSV (Comma-separated values) is a common data exchange format used by the
applications to produce and consume data.
• A CSV file is a simple text file where each line contains a list of values (or fields)
delimited by commas (mostly), but you will encounter CSV files where data is
delimited using tab (\t) or pipe (|) or any other character.
• The first line of the CSV file represents the header containing a list of column names
in the file.
• CSV file is commonly used to represent tabular data
45
Marking Scheme
1 Marks
Q1. (C) csv
Q2. (B) Finding data uniquly
Q3. (D) 1
Q4. (B) Binary file
Q5. (A) source=”c:\\myfile.csv” data = pd.read_csv(source)
2 Marks
Q4. (C) Assertion is true, reason is false.
Q7. (B) Assertion and reason both are true but reason is not the correct explanation of
assertion.
48
Page
Q10. (C) Assertion is true, reason is false.
Q11. (D) Assertion is false, reason is true.
5 Marks
Q1
i. Correct Answer : c) csv
ii. Correct Answer : b) "Student.csv","w"
iii. Correct Answer: c) writer(fh)
iv. Correct Answer : d) roll_no,name,Class,section
v. Correct Answer : c) writerows()
POP:
• UNDERFLOW
PUSH:
• POP(Stk):
• OVERFLOW
o if len(Stk) == 0:
• PUSH(Stk,ele): ▪ print(“Underflow”)
o Stk.append(ele) o else:
▪ Stk.pop()
APPLICATIONS OF STACK :
1. Reverse a word / line : In a Stack, the elements can be read from TOP end, ie the last
element. Hence it is used to reverse a word or line.
2. The Compiler uses Stack to store the previous state of a program, when a function is
called(activated) . ( During Recursion / Recursive funcrion calls)
3. Undo Mechanism in Text Editors.
First of all , let us solve some basic questions :
A) Fill in the blanks : ( These are 1 marks questions )
i) means organization of data. (Ans: Data structure)
ii) Stack is also known as ...............list. (Ans: LIFO)
iii) Insertion of an element in a Stack is known as ......... (Ans: push )
iv) Deletion of an element from top of Stack is known as ...... (Ans: pop)
50
Page
v) LIFO stands for ........... (Ans: Last-In-First-Out)
B) State whether the statements are True or False : ( These are 1 marks questions )
i) Insertion and Deletion from a Stack, takes place only from TOP. (Ans: True)
ii) If a Stack is Empty, it is termed as STACK OVERFLOW. (Ans: False)
iii) Removal of an element from top of stack is termed as POP. (Ans:True)
iv) Undo mechanism of text editors is an application of Stack. (Ans: True)
v) Insertion of an element to the top of stack is termed as PUSH. (Ans: True)
Questions:
S.No. Question
Q 01 Stack is also known as: 1
a) First-in First-out b) Last-in-First-out c) Both a and b d) None of these
Ans b) Last-in-First-out
Q 02 In a stack, if a user tries to remove an element from empty stack, it is known as: 1
a) Underflow b) Empty c) Overflow d) None
Ans a) Underflow
Q 03 What type of data structure a stack is? 1
a) Linear b) Non-Linear c) Both A and B d) None
Ans a) Linear
Q 04 Which one of the following is an application of Stack Data Structure? 1
a) Managing Function Call b) Arithmetic Expression Evaluation
c) Undo Redo d) All of the above
Ans d) All of the above
Q 05 Which data structure we can use for reversing a string? 1
a) Queue b) List c) Stack d) Dictionary
Ans c) Stack
Q 06 Stack can be implemented in Python using: 1
a) Tuple b) Dictionary c) Set d) List
Ans d) List
Q 07 What are the two operations of stack? 1
Ans The two operations of stack are Push and Pop
Q 08 How do we test for empty stack? 1
Ans if len(stk) == 0:
print(“Stack is Empty.”)
Q 09 Why do we use append() method of list in push operation? 1
Ans To push data at the top of the stack.
Q 10 ASSERTION AND REASONING based questions. Mark the correct choice as 1
(a) Both A and R are true and R is the correct explanation for A
(b) Both A and R are true and R is not the correct explanation for A
(c) A is True but R is False
(d) A is false but R is True
Assertion (A): - In stack during pop operation it is necessary to check for
underflow.
Reasoning (R): - Underflow is the when the memory allocated to the stack gets
full.
Ans c) A is True but R is False
Q 11 Define any two characteristics of stacks. 2
51
Page
Ans Stack is a data structure in which insertion and deletion is done from one end
only, usually referred to as TOP.
Stack follows LIFO principle using which an element inserted in the last will be
the first one to be out.
Q 12 Define any two application of stacks. 2
Ans Reversing a string.
In text/image editor for redo/undo the editing.
Q 13 Write down the status of Stack after each operation: 2
Stack = [10,20,30,40] where TOP item is 40
Push 70
Push 100
Pop an item from Stack
Ans |100|
| 70 | | 70 | | 70 |
| 40 | | 40 | | 40 |
| 30 | | 30 | | 30 |
| 20 | | 20 | | 20 |
| 10 |, | 10 | and | 10 |
Q 14 What will be the output of the following code: 2
def PUSH(L):
Stk = []
for i in L:
if i % 5 == 0:
Stk.append(i)
for i in range(len(L)-1, -1, -1):
print(L[i])
else:
print(“Stack is Empty”)
PUSH([12,23,34,54,56,67,87,89])
Ans Stack is Empty
Q 15 What will be the output of the following code: 2
def POP(Stk):
if len(Stk) == 0
print(“Stack is Empty”)
else:
while len(Stk) != 0:
x = Stk.pop()
if x[0] not in “AEIOUaeiou”:
print(x)
Stk = [“Hello”, “How are you”, “I am fine”, “Thank you”]
POP(Stk)
Ans Thank you
How are you
Hello
Q 16 What will be the output of the following code: 2
def G75(D):
Stk = []
for k in D:
if D[k] > 75:
Stk.append(k)
52
Page
if len(Stk) == 0:
print(“Stack is Empty”)
else:
while len(Stk) != 0:
print(Stk.pop())
D = {“Ajay”:76, “Vijay”:99, “Sanjay”: 75}
G75(D)
Ans Vijay
Ajay
Q 17 Find the error in the following code and write the correct code and underline the 2
corrected ones:
Def POP(Stk):
If len(Stk) == 0
print(“Stack is Empty”)
else
F=1
while len(Stk) != 0:
F = F * Stk.pop()
return F
Ans def POP(Stk):
if len(Stk) == 0
print(“Stack is Empty”)
else:
F=1
while len(Stk) != 0:
F = F * Stk.pop()
return F
Q 18 Find the error in the following code and write the correct code and underline the 2
corrected ones:
def PUSH(Stk, L):
for w IN L:
if w[0] IN “AEIOUaeiou”:
Stk.extend(w)
Ans def PUSH(Stk, L):
for w in L:
if w[0] in “AEIOUaeiou”:
Stk.append(w)
Q 19 Find the error in the following code and write the correct code and underline the 2
corrected ones:
def Display(L)
l = len L
if l == 0:
print(Stack is Empty!!!)
else:
print("Elements in stack are:")
For i in range(l - 1, -1, -1):
print(L[i])
Ans def Display(L):
l = len(L)
53
Page
if l == 0:
print("Stack is Empty!!!")
else:
print("Elements in stack are:")
for i in range(l - 1, -1, -1):
print(L[i])
Q 20 Write a function in Python PUSHD3(L), where L is a list of numbers. from this 3
list push all numbers divisible by 3 into a stack implemented using a list. Display
the stack if it has at least one element, otherwise display appropriate error
message.
Ans def PUSHD3(L):
Div3 = []
for i in L:
if i % 3 == 0:
Div3.append(i)
if len(Div3) == 0
print(“Stack is Empty”)
else:
while len(Div3) != 0:
print(Div3.pop())
Q 21 Sakshi has created a dictionary D, containing names and salary as key value pairs 3
of 5 employees. Write two separate functions to perform the following
operations:
● PUSH(HS, D), where HS is the stack and D is the dictionary which containing
names and salaries. Push the keys (name of the employee) of the dictionary into
a stack, where the corresponding value (salary) is greater than ₹75,000.
● POP(HS), where HS is the stack. Pop and display the content of the stack.
Ans def PUSH(HS, D):
for k in D:
if D[k] > 75000:
HS.append(k)
def POP(HS):
if len(HS) == 0
print(“Stack is Empty”)
else:
while len(HS) != 0:
x = HS.pop()
print(x)
Q 22 Write the functions in python, PUSH(Stk, L) and POP(Stk), where Stk is the 3
stack and L is a list of strings. In PUSH function read the list and push those
string into the stack which start with a vowel. And in POP function display the
stack.
Ans def PUSH(Stk, L):
for w in L:
if w[0] in “AEIOUaeiou”:
Stk.append(w)
def POP(Stk):
if len(Stk) == 0
print(“Stack is Empty”)
else:
54
Page
while len(Stk) != 0:
x = Stk.pop()
print(x)
Q 23 What will be the output of following code: 3
def PUSH(Stk, N)
for i in range(N,0,-1):
Stk.append(i)
def POP(Stk):
if len(Stk) == 0
print(“Stack is Empty”)
else:
F=1
while len(Stk) != 0:
F = F * Stk.pop()
return F
Stk = []
PUSH(Stk, 5)
print(POP(Stk))
Ans 120
Q 24 Write a function DoubleStack(Stk), where Stk is a stack containing integers. In 3
the function pop all the element of the stack and double the elements then push
back to the stack in its original place.
For example:
Stk = [10,20,30,40,50]
After the execution of the function the stack should be:
Stk = [20,40,60,80,100]
Ans Def DoubleStack(Stk):
tempStk = []
while len(Stk) != 0:
x = Stk.pop()
tempStk.append(x*2)
while len(tempStk) != 0:
x = tempStk.pop()
Stk.append(x)
Q 25 Write the functions in python, PUSH(L, data), POP(L), DISPLAY(L) to add a 4
new integer, delete an integer from a List of numbers L and display the element
of the stack, considering them to act as push and pop operations of the Stack data
structure.
Ans def PUSH(L, data):
L.append(data)
def POP(L):
if len(L) == 0:
print("Stack is empty!")
else:
return L.pop()
def Display(L):
l = len(L)
if l == 0:
print("Stack is Empty!!!")
55
Page
else:
print("Elements in stack are:")
for i in range(l - 1, -1, -1):
print(L[i])
Q 26 Write a program to reverse a string using stack. 4
Ans def revStr(S):
stk = []
rS = ‘’
for i in S:
stk.append(i)
while len(S) != 0:
rS = rS + S.pop()
return rS
S = input(“Enter a String:”)
rS = revStr(S)
print(“Reverse String is:”, rS)
Q 27 Write a function PUSH(L) and POP(Stk), where L is List of integers and Stk is 4
a stack. In PUSH function create two stack StkO and StkE, then read the list L
and push all the even element in StkE and push all the odd element in StkO. At
last return both the stacks. In POP function pop the number from the stack and
display.
Ans def PUSH(L):
StkO = []
StkE = []
for i in L:
if i%2 == 0:
StkE.append(i)
else:
StkO.append(i)
return StkO, StkE
def POP(Stk):
if len(Stk) == 0
print(“Stack is Empty”)
else:
while len(Stk) != 0:
print(Stk.pop())
Q 28 def PUSH(Stack,N): 5
Stack. ( N) #Statement 1
def POP(Stack):
if : #Statement 2
return "Underflow"
else:
return Stack. #Statement 3
Stack=[]
Books=[‘Python’, ‘C’, ‘Java’, ‘C++’, 'PHP', ‘C#]
for i in range(0,len(Books), ): #Statement 4
PUSH(Stack,Books[i])
while len(Stack) != 0:
print( ) #Statement 5
56
Page
Required Output:
C
C++
C#
Fill the above statement based on given questions:
i Identify the suitable code for the blank of statement 1.
a) .append b) .insert c) .extend d) .add
Ans a) append
ii Fill the statement 2, to check the stack is empty.
a) Stack = [] b) Stack.isEmpty()
c) len(Stack) == 0 d) No of the above
Ans c) len(Stak) == 0
iii Fill the statement 3, to delete an element from the stack.
a) pop(1) b) pop() c) del Stack[1] d) delete(1)
Ans b) pop()
iv Fill the statement 4, to insert the alternate element from Books list.
a) 3 b) 0 c) -1 d) 2
Ans d) 2
v Fill the statement 5, to call the pop function.
a) pop(Books) b) pop(Stack)
c) call pop(Stack) d) def pop(Stack)
Ans b) pop(Stack)
Q 29 PUSH(S,N): #Statement 1 5
S.append(N)
def POP(S):
if S != []:
S.pop() #Statement 2
else:
return None
R={"OM":76, "JAI":45, "BOB":89, "ALI":65, "ANU":90, "TOM":82}
ST=[]
for k in R:
if R[k] >= 75:
PUSH( ) #Statement 3
True: #Statement 4
if ST != []:
print(POP(ST))
else:
#Statement 5
Required Output:
TOM
ANU
BOB
OM
Fill the above statement based on given questions:
i Fill the Statement 1, to define a function.
a) DEF b) Def c) def d) define
Ans c) def
ii Fill the Statement 2, to return the popped data.
57
Page
a) send b) pass c) assign d) return
Ans d) return
iii Fill the Statement 3, to pass the proper arguments.
a) ST, k b) k, ST c) ST d) k
Ans a) ST, k
iv Fill the Statement 4, to complete the looping structure.
a) for b) do while c) if d) while
Ans d) while
v Fill the Statement 5, to stop the infinite loop.
a) stop b) Stop c) break d) Exit
Ans c) break
Q 30 status = #Statement 1 5
def PUSH(cust):
if cust[2] == "Goa":
L = [cust[0],cust[1]]
.append(L) #Statement 2
def POP():
if (status) == 0: #Statement 3
print( ) #Statement 4
while != 0: #Statement 5
x = status.pop()
print(x)
PUSH([“Gurdas”, “99999999999”,”Goa”])
PUSH([“Julee”, “8888888888”,”Mumbai”])
PUSH([“Murugan”,”77777777777”,”Cochin”])
PUSH([“Ashmit”, “1010101010”,”Goa”])
POP()
Required Output: [“Ashmit”,”1010101010”]
[“Gurdas”,”9999999999”]
Fill the above statement based on given questions:
i Fill the Statement 1, to create a empty stack using list.
a) () b) {} c) [] d) “”
Ans c) []
ii Fill the Statement 2, to complete push operation.
a) cust b) status c) cust[top] d) status[top]
Ans b) status
iii Fill the Statement 3, to find the size of stack.
a) size b) length c) count d) len
Ans d) len
iv Fill the Statement 4, to display proper message where underflow occurs.
a) “Stack is Empty” b) Stack is Empty
c) [Stack is Empty] d) {Stack is Empty
Ans a) “Stack is Empty
v Fill the Statement 5, to iterate the loop properly.
a) size(status) b) len(status) c) count(status) d) length(status)
Ans len(status)
58
Page
NETWORKING
Mind Map
59
Page
Number of computers in each of the buildings is as follows:
Law block 15
Technology block 40
HR Centre 115
Business block 25
(a) Suggest a cable layout of connection between the blocks.
(b) Suggest the most suitable place to house the server of the organization with suitable
reason.
(c) Which device should be placed/installed in each of these blocks to efficiently connect all
the computers within these blocks?
(d) The university is planning to link its sales counters situated in various parts of the other
cities. Which type of network out of LAN, MAN or WAN will be formed?
(e) Which network topology may be preferred in each of these blocks?
Most Important Notes Applicable to All Questions based on the above patterns, which may
be kept in mind –
i) In a Wing / Block / Lab connect all computers using a HUB or SWITCH. This
is known as LAN connectivity. But now a day we use SWITCH only as it
transmits data to the required destination only and thus faster in transmission.
ii) Computers in a Block are connected to the SWITCH/HUB using Cat 5 Cable.
In place of Cat 5 Cable we can also use Fibre Optics cable if we require more
speed and can afford cost.
iii) Server is placed where there is maximum number of computers as maximum
traffic will be in this block only.
iv) An additional switch may also be used to connect the block’s switches for faster
transmission of data and this is also placed in the block where we have put the
server. These switches can be connected to the additional switch using fibre
optics since it will increase speed but cost has to be born.
v) If the company desires to have connectivity to the Internet, Internet connection
is taken and connected to switch. From here all other buildings and further
computers can access the Internet connection. If the Company wants to connect
these blocks to their office in some other distant place then we can connect these
blocks with that office using an Internet Connection, Radio Wave Connection
(if office is in hilly area), WAN connection if company can afford cost and
requires security of data also. When WAN connectivity is established, switch
is further connected to a ROUTER. Router is costly and filters the network
traffic. It routers the data to the destinations using most optimal path.
vi) Connectivity between the block’s switches is done using Cat 5 cables. If there
is a distance of more than 100 m between any two blocks then a suitable
REPEATER has to be placed to join Cat 5 cables as in a LAN we can use Cat 5
cable up to a maximum length of 100 m as the signal power attenuates with
more distances. So REPEATER is used to regenerate the signal.
So keeping in mind the above presumptions we answer
(a)
60
Page
(b) HR centre because it consists of the maximum number of computers to house
the server.
(c) Switch should be placed in each of these blocks.
(d) MAN
(e) star
Question andAnswer
Objective Type Question (1 Mark Each)
1. What is the Use of Bridge?
(a) To Connect two LAN (b) To Connect two LAN Segment
(a) To Connect Internet (d) Amplify Signal
2. With the use of computer network, we can share
(a) Data (b) Resources
(c) Both of the above (d) None of the above
3. Which of the following is used in computer network
(a) Router (b) Switch (c) Bridge (d) All of the Above
4. When we connect our mobile with Laptop then we call it
(a) MAN (b) WAN (c) PAN (d) LAN
5. Mbps stands for
(a) Mega Byte Per Second (b) Million Byte Per Second
(c) Megabits Per Second (d) Maximum Bit Per Second
6. Full form of NIC
(a) New Interface Card (b) Network Interface Card
(c) New Internet Card (d) Network Internet card
7. Which device Convert Analog to Digital and vice-versa
(a) Hub (b) Bridge (c) Modem (d) Switch
8. Arun wants to create his own website, which language he can use to create new website.
(a) XML (b) HTML (c) Python (d) C++
9. Amit’s computer is running slow due to virus. Then what he has to do.
(a) Format Computer (b) Install Firewall
(c) Install Antivirus (d) Do Nothing
10. Hari is copying Mohan’s software without taking permission with Mohan.So which
type of crime is Hari doing
(a) Cyber Bulling (b) Cyber Stalking
(c) Cyber Theft (d) Copyright Infringement
Answers:
1. To Connect two LAN Segment 6. Network Interface Card
2. Both of the above 7. Modem
3. All of the Above 8. HTML
4. PAN 9. Install Antivirus
5. Megabits Per Second 10. Copyright Infringement
Very Short Answer Type Question (2 Marks each)
1. What is the difference between Packet switching and circuit switching techniques?
Circuit Switching Packet Switching
Circuit switching requires a dedicated path before Packet switching does not require any dedicated path
sending data from source to destination. to send data from source to destination.
61
Page
Circuit Switching Packet Switching
It reserves the entire bandwidth in advance. It does not reserve bandwidth in advance
Each packet follows the same route A packet can follow any route
The full form of LAN is Local Area The full form of WAN is Wide Area Network.
Network.
The speed of LAN is higher. The speed of WAN is slower.
LAN covers smaller areas like school, WAN covers a large area like a country.
hospital, etc.
Answer: -
62
Page
(a) Bandwidth: - Bandwidth of a channel is the range of frequencies available for
transmission of data through that channel. Higher the bandwidth, higher the data
transfer rate. Normally, bandwidth is the difference of maximum and minimum
frequency contained in the composite signals. Bandwidth is measured in Hertz (Hz).
(b) DNS: - Away to translate a URL (domain name) into IP address and vice-versa.
7. Write the name of the most suitable wireless communication channels for each of the
following situations.
a. Communication between two offices in two different countries.
b. To transfer the data from one mobile phone to another.
Answer:
a. Satellite Communication
b. Bluetooth or infrared whichever is supported by the phone.
1. You as a network expert have to suggest the best network related solutions for their
problems raised in (i) to (v), keeping in mind the distances between the buildings and
other given parameters.
1. Suggest the most appropriate location of the server inside the MUMBAI campus (out
of the four buildings) to get the best connectivity for maximum number of computers.
Justify your answer.
2. Suggest and draw cable layout to efficiently connect various buildings within the
MUMBAI campus for a wired connectivity.
3. Which networking device will you suggest to be procured by the company to
interconnect all the computers of various buildings of MUMBAI campus?
4. Company is planning to get its website designed which will allow students to see their
results after registering themselves on its server. Out of the static or dynamic, whic h
type of website will you suggest?
5. Which of the following will you suggest to establish the online face to face
communication between the people in the ADMIN office of Mumbai campus and Delhi
head office?
a) Cable TV
b) Email
c) Video conferencing
d) Text chat
Ans:
64
Page
i. Server should be installed in Admin department as it has maximum number of
computers.
ii.
Star topology 5 Admin examination accounts Result
iii. Hub/Switch
iv. Dynamic
v. Video conferencing
Additional Exercise:
1. Which protocol is used to exchange files on Internet
2. What is the purpose of using a MODEM?
3. What type of address is the following?
20:B9:F1:63:2F:FB
4. Identify the topologies from the followings:
(i) In it the nodes form a circular path for data to travel and each node is connected to
two other nodes.
(ii) In it devices are connected through hub/switch, hub/switch is responsible for
receiving and transmitting data from each node to destination.
1. A School would like to go in for network of all the computers. Which topology would
you recommend and why?
2. What is communication channel? What choices do you have while choosing a
communication channel for a network?
3. What do you mean by network topology? Name most popular topologies.
4. Akhil is transferring songs from his mobile to his friend’s mobile via Bluetooth
connection. Name the network used by Akhil.
Case Based
9. In Hyderabad, 5 ABC Bank branches are available. One is at RR Pet, other at Market, other at
Ashok Nagar, other at Fire Station and the last one at Bus Stand. Higher official wants to keep
a network between these 5 branches. The branch names (A to E) and the number of
computers in each branch (given inside the rectangle) is givenbelow.
65
Page
Distance between various buildings
A to B 50 Mts
B to C 30 Mts
C to D 30 Mts
D to E 35 Mts
E to C 40 Mts
D to A 120 Mts
D to B 45 Mts
E to B 65 Mts
(i) Suggest a possible cable layout for connecting the buildings.
(ii) Suggest the most suitable place to install the server of this organization with a suitable
reason
(iii) Suggest the placementof the following devices withjustification.
(a) Hub/Switch (b) Modem
(iv) The Bank wants to link its head Office in ‘A’ building to its main office at Mumbai.
ADMIN to SCIENCE 65 m
ADMIN to BUSINESS 100 m
ADMIN to ARTS 60 m
SCIENCE to BUSINESS 75 m
SCIENCE to ARTS 60 m
BUSINESS to ARTS 50 m
DELHI Head Office to HYDERABAD Campus 1600 Km
(i) Suggest the most appropriate location of the server inside the HYDERABAD campus
(out of the 4 buildings), to get the best connectivity for maximum number of
computers. Justify your answer.
(ii) Suggest and draw the cable layout to efficiently connect various buildings within the
HYDERABAD campus for connecting the computers.
(iii) Which hardware device will you suggest to be procured by the company to be
installed to protect and control the internet uses within the campus?
(iv) Which of the following will you suggest to establish the online face-to-face
communication between the people in the Admin Office of HYDERABAD campus and
DELHI Head Office?
a. Email
b. Text Chat
c. Video Conferencing
d. Cable TV
1. Perfect Edu Services Ltd. is an educational organization. It is planning to setup its India campus
at Chennai with its head office at Delhi. The Chennai campus has 4 main buildings – ADMIN,
ENGINEERING, BUSINESS and MEDIA. You as a network expert have to suggest the best
network related solutions for their problems raised in (i) to (iv), keeping in mind the distances
between the buildings and other given parameters.
[CBSE COMP 2015]
ADMIN to ENGINEERING 55 m
ADMIN to BUSINESS 90 m
ADMIN to MEDIA 50 m
ENGINEERING to BUSINESS 55 m
ENGINEERING to MEDIA 50 m
BUSINESS to MEDIA 45 m
67
Page
DELHI Head Office to CHENNAI Campus 2175 km
ENGINEERING 75 75
BUSINESS 40 40
MEDIA 12 12
(i) Suggest the most appropriate location of the server inside the CHENNAI campus (out of
the 4 buildings), to get the best connectivity for maximum no. of computers. Justify your
answer.
(ii) Suggest and draw the cable layout to efficiently connect various buildings within the
CHENNAI campus for connecting the computers.
(iii) Which hardware device will you suggest to be procured by the company to be installed to
protect and control the internet useswithin the campus?
(iv) Which of the following will you suggest to establish the online face-to-face
communication between the people in the Admin Office of CHENNAI campus and DELHI
Head Office?
a. Email b. Text Chat c. Video Conferencing d. Cable TV
10. Expand the following:
a) ARPANET
b) MAC
c) ISP
d) URI
11. What do you understand by the term network?
12. Mention any two main advantages of using a network of computing devices.
13. Differentiate between LAN and WAN.
14. Write down the names of few commonly used networking devices.
15. Two universities in different States want to transfer information. Which type of network
they need to use for this?
16. Define the term topology. What are the popular network topologies?
17. How is tree topology different from bus topology?
18. Identify the type of topology from the following:
a) Each node is connected with the help of a single cable.
b) Each node is connected with central switching through independent cables.
19. What do you mean by a modem? Why is it used?
20. Explain the following devices:
a) Switch b) Repeater c) Router d) Gateway e) NIC
21. Sahil, a class X student, has just started understanding the basics of Internet and web
technologies. He is a bit confused in between the terms “World Wide Web” and
“Internet”. Help him in understanding both the terms with the help of suitable examples
of each.
68
Page
DATA BASE MANAGEMENT
SYSTEM
THROUGH
STRUCTURED QUERY
LANGUAGE
Questions:
1. What is MySQL used for? Abhay wants to start learning MySQL. From where can he obtain the
MySQL software ?
2. In the table “Student”,Priya wanted to increase the Marks(Column Name:
Marks) of those students by 5who have got Marks below 33. She has entered the following
statement:
3. SELECT Marks+5 FROM Student WHERE Marks<33;
Identify errors(if any) in the abovestatement. Rewritethe correct SQL statement.
4. Write SQL statement to add a column ‘‘COUNTRY’’ with data type and size as VARCHAR(70) to
the existing table named ‘‘PLAYER’’.Is it a DDL or DML or TCL command ?
5. Table Student has the columns RNO and SCORE. It has 3 rows in it. Following two SQL
statements were enteredthat produced the output (AVG(SCORE) as 45and COUNT(SCORE) as 2)
:
(i) AVG(SCORE)
(ii) Count(score)
6. ‘Employee’ table has a column named ‘CITY’ that stores city in which each employee resides.
Write SQL query to display details of all rows except those rows that have CITY as ‘DELHI’ or
‘MUMBAI’ or ‘CHANDIGARH’.
7. How is a database related to a table ?
8. Mr. Sen has to create a table named ‘Employee’ withColumns to store EmpID, Name,
Designation, Age and Salary. EmpID is the Primary key and Name cannot be NULL. Some of the
rows that will be inserted are shown below.
Write SQL query to create the above table with appropriate data types and sizes of columns.
9. Ms. Rajshri is the Class Teacher of Class XII. She wants to create a table named ‘Student’ to store
marks in different subjectsof her class. Identify any 4columns for the table along withtheir
suitable data types.
69
Page
10. “XYZ” Company conducts workshops for employees of organizations. The company requires
data of workshops that are organized. Write SQL query to create a table ‘Workshop’ with the
following structure:
11. Ariya wants to add another column ‘Gender’ in the already existing table ‘CUSTOMERS’.
She has written the following statement. However, it errors. Rewrite the correct statement.
MODIFY TABLE CUSTOMERS GENDER char(1);
12. Explain the following statement withthe help ofexample:
13. “In a transaction either all the SQL statements be committed or all rolled back.”
14. How is HAVING clause similar to WHERE clause? How is HAVINGclause different from
WHERE clause? Explainwiththe helpof examples of each.
15. Consider the followingtable ‘Transporter’ that stores the order details about itemsto be
transported. Write SQL commands for the statements (i) to (viii).
Table: T R A N S P OR TE R
ORDERNO DRIVERNAME DRIVERGRADE ITEM TRAVELDATE DESTINATION
10012 RAMYADAV A TELEVISION 2019-04-19 MUMBAI
10014 SOMNATHSINGH FURNITURE 2019-01-12 PUNE
10016 MOHANVERMA B WASHINGMACH 2019-06-06 LUCKNOW
10018 RISHISINGH A REFRIGERATOR 2019-04-07 MUMBAI
10019 RADHEMOHAN TELEVISION 2019-05-30 UDAIPUR
10020 BISHENPRATAP B REFRIGERATOR 2019-05-02 MUMBAI
10021 RAM TELEVISION 2019-05-03 PUNE
(i) To display names of drivers and destination city where TELEVISION is being
transported.
(ii) To display driver names and destinationswhere destinationis not MUMBAI.
(iii) To display the namesof destinationcities where items are being transported. There
should be no duplicate values.
(iv) To display details of rowsthat have some value in DRIVERGRADE column.
(v) To display names of drivers, names of itemsand travel dates for those items that are
being transported on or before 1st April 2019.
(vi) To display the number of drivers who have ‘MOHAN’ anywhere in their names.
(vii) To display the names of drivers, item names and travel dates in alphabetic
(ascending) order of driver names.
(viii) To display names of driverswhose names are three characters long.
17. In CHAR(10) and VARCHAR(10),what does the number 10indicate ?
18. ‘Employee’ table has a column named ‘CITY’ that stores city in whicheach employee resides.
Write SQL query to display details of all rows except those rows that have CITY as ‘DELHI’ or
‘MUMBAI’ or ‘CHANDIGARH’.
19. Consider the table given below. Write SQL queriesfor (i) to (vii).
Table: Gym
R EG I D N AME PR EW EI G H T CU R R W EI G H T D OJ G EN D ER B R AN CH
Columns REGID stores Registration Id, PREWEIGHT stores weight of the person before joining
Gym, CURRWEIGHT stores current weight, DOJ stores Date of Joining, BRANCH stores the
branch of Gym where the person has enrolled.
(i) To display names of members along with their previous and current weights who are in
Model Town branch.
(ii) To display all names of members, previous weight, current weight, Change in weight (i.e.
how much increase from previous weight or decrease from previous weight, Decrease
will be displayed with negative sign)
(iii) To display BRANCH wise count of members in the Gym. (i.e. display the BRANCH and
number of members in each BRANCH)
(iv) To display names and date of joining of all the members who joined in the year 2018.
(v) To display Names and Current weight of all the members in descending order of Current
Weight.
(vi) To display the names and date of joining of male members who have joined after 27th
September 2018.
(vii) To display names and date of joining of members who have their names starting with ‘S’
and ending with ‘a’.
20. Consider the table Flight given below, write command in SQL for (i) to (iv) and output for (v) to (viii)
Table : FLIGHT
Flight_No Origin Destination Seats FlightDate Rate
DEPT Table
deptno dname location
10 Accounting New York
20 Research Dallas
30 Sales Chicago
40 Operations Boston
SALGRADE Table
grade losal hisal
1 700.00 1200.00
2 1201.00 1400.00
4 2001.00 3000.00
5 3001.00 99999.00
3 1401.00 2000.00
➢ Types of Join
❖ Cartesian Product or Cross join
❖ Equi Join
❖ Natural Join
❖ Non-Equi Join
❖ Self Join
❖ Left Outer Join
❖ Right Outer Join
➢ Cartesian Product or Cross join
❖ The cross join makes a Cartesian product of rows from the joined tables.
72
Page
❖ The cross join combines each row from the first table with every row from the
right table to make the result set.
❖ If Table1 has degree d1 and cardinality c1 and table2 has degree d2 and
cardinality c2, their Cartesian Product has degree d=d1+d2 and cardinality
c=c1*c2;
Ven Diagram
Syntax:
SELECT * FROM table1, table2;
Or
SELECT * FROM table1 CROSS JOIN table2;
Or
SELECT * FROM table1 JOIN table2;
e.g. SELECT * FROM emp, dept;
SELECT * FROM emp CROSS JOIN dept;
SELECT * FROM emp JOIN DEPT;
Output:
+ + + + + + + + + + + +
| empno | ename | job | mgr | hiredate | sal | comm | deptno | deptno | dname | loc |
+ + + + + + + + + + + +
| 7369 | SM ITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 | 10 | ACCOUNTING | NEW YORK |
| 7369 | SM ITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7369 | SM ITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 | 30 | SALES | CHICAGO |
| 7369 | SM ITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 | 40 | OPERATIONS | BOSTON |
| 7499 | ALLEN | SALESM AN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 | 10 | ACCOUNTING | NEW YORK |
| 7499 | ALLEN | SALESM AN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 | 20 | RESEARCH | DALLAS |
| 7499 | ALLEN | SALESM AN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 | 30 | SALES | CHICAGO |
| 7499 | ALLEN | SALESM AN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 | 40 | OPERATIONS | BOSTON |
| 7521 | WARD | SALESM AN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 | 10 | ACCOUNTING | NEW YORK |
| 7521 | WARD | SALESM AN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 | 20 | RESEARCH | DALLAS |
| 7521 | WARD | SALESM AN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 | 30 | SALES | CHICAGO |
| 7521 | WARD | SALESM AN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 | 40 | OPERATIONS | BOSTON |
| 7566 | JONES | M ANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | 10 | ACCOUNTING | NEW YORK |
| 7566 | JONES | M ANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7566 | JONES | M ANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | 30 | SALES | CHICAGO |
| 7566 | JONES | M ANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | 40 | OPERATIONS | BOSTON |
| 7654 | M ARTIN | SALESM AN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 | 10 | ACCOUNTING | NEW YORK |
| 7654 | M ARTIN | SALESM AN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 | 20 | RESEARCH | DALLAS |
| 7654 | M ARTIN | SALESM AN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 | 30 | SALES | CHICAGO |
| 7654 | M ARTIN | SALESM AN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 |
40 | OPERATIONS | BOSTON |
| 7698 | BLAKE | M ANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | 10 | ACCOUNTING | NEW YORK |
| 7698 | BLAKE | M ANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | 20 | RESEARCH | DALLAS |
30 |
| 7698 | BLAKE | M ANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | SALES | CHICAGO |
| 7698 | BLAKE | M ANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | 40 | OPERATIONS | BOSTON |
| 7782 | CLARK | M ANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 | 10 | ACCOUNTING | NEW YORK |
10 |
| 7782 | CLARK | M ANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 20 | RESEARCH | DALLAS |
| 7782 | CLARK | M ANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 | 30 | SALES | CHICAGO |
10 |
| 7782 | CLARK | M ANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 40 | OPERATIONS | BOSTON |
20 |
| 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 | 3000.00 | NULL | 10 | ACCOUNTING | NEW YORK |
| 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 | 3000.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 | 3000.00 | NULL | 20 | 30 | SALES | CHICAGO |
| 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 | 3000.00 | NULL | 20 | 40 | OPERATIONS | BOSTON |
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | 10 | ACCOUNTING | NEW YORK |
73
Page
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | 20 | RESEARCH | DALLAS |
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | 30 | SALES | CHICAGO |
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | 40 | OPERATIONS | BOSTON |
| 7844 | TURNER | SALESM AN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 | 10 | ACCOUNTING | NEW YORK |
| 7844 | TURNER | SALESM AN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 | 20 | RESEARCH | DALLAS |
| 7844 | TURNER | SALESM AN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 | 30 | SALES | CHICAGO |
| 7844 | TURNER | SALESM AN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 | 40 | OPERATIONS | BOSTON |
| 7876 | ADAM S | CLERK | 7788 | 1983-01-12 | 1100.00 | NULL | 20 | 10 | ACCOUNTING | NEW YORK |
| 7876 | ADAM S | CLERK | 7788 | 1983-01-12 | 1100.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7876 | ADAM S | CLERK | 7788 | 1983-01-12 | 1100.00 | NULL | 20 | 30 | SALES | CHICAGO |
| 7876 | ADAM S | CLERK | 7788 | 1983-01-12 | 1100.00 | NULL | 20 | 40 | OPERATIONS | BOSTON |
| 7900 | JAM ES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 | 10 | ACCOUNTING | NEW YORK |
| 7900 | JAM ES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 | 20 | RESEARCH | DALLAS |
| 7900 | JAM ES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 | 30 | SALES | CHICAGO |
| 7900 | JAM ES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 | 40 | OPERATIONS | BOSTON |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | 10 | ACCOUNTING | NEW YORK |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | 30 | SALES | CHICAGO |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | 40 | OPERATIONS | BOSTON |
| 7934 | M ILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | 10 | ACCOUNTING | NEW YORK |
| 7934 | M ILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | 20 | RESEARCH | DALLAS |
| 7934 | M ILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | 30 | SALES | CHICAGO |
| 7934 | M ILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | 40 | OPERATIONS | BOSTON |
+ + + + + + + + + + + +
56 rows in set (0.02 sec)
Note: Above output has 56 row (14*4) and 11 columns (8+3)
➢ Equi Join-
❖ It performs a JOIN against equality or matching column(s) values of the
associated tables.
Ven Diagram
Syntax
SELECT * /Column_list
FROM Table1, Table 2
WHERE table1.column=Table2.column;
Or
SELECT * /Column_list
FROM Table1 join Table2 on Table1.Column=Table2.Column;
Example: SELECT * FROM emp JOIN dept ON emp.deptno=dept.deptno;
Or
SELECT * FROM emp,dept WHERE emp.deptno=dept.deptno;
Output:
+ + + + + + + + + + + +
| empno | ename | job | mgr | hiredate | sal | comm | deptno | deptno | dname | loc |
+ + + + + + + + + + + +
| 7369 | SM ITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7499 | ALLEN | SALESM AN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 | 30 | SALES | CHICAGO |
| 7521 | WARD | SALESM AN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 | 30 | SALES | CHICAGO |
| 7566 | JONES | M ANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7654 | M ARTIN | SALESM AN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 | 30 | SALES | CHICAGO |
| 7698 | BLAKE | M ANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 | 30 | SALES
74
| CHICAGO |
Page
| 7782 | CLARK | M ANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 | 10 | ACCOUNTING | NEW
YORK |
| 7788 | SCOTT | ANALYST | 7566 | 1982-12-09 | 3000.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 | 10 | ACCOUNTING | NEW
YORK |
| 7844 | TURNER | SALESM AN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 | 30 | SALES | CHICAGO |
| 7876 | ADAM S | CLERK | 7788 | 1983-01-12 | 1100.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7900 | JAM ES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 | 30 | SALES | CHICAGO |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 | 20 | RESEARCH | DALLAS |
| 7934 | M ILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 | 10 | ACCOUNTING | NEW YORK |
+ + + + + + + + + + + +
Example 1: Display the employee name, sal and name of department name
Ans: In the above query ename and sal belong to emp table whereas dname belongs to
DEPT table. So, to retrieve data in this we will use join
SELECT emp.ename, emp.sal, dept.dname
FROM emp, dept WHERE emp.deptno=dept.deptno;
Output:
+ + + +
| ename | sal | dname |
+ + + +
| SMITH | 800.00 | RESEARCH |
| ALLEN | 1600.00 | SALES |
| WARD | 1250.00 | SALES |
| JONES | 2975.00 | RESEARCH |
| MARTIN | 1250.00 | SALES |
| BLAKE | 2850.00 | SALES |
| CLARK | 2450.00 | ACCOUNTING |
| SCOTT | 3000.00 | RESEARCH |
| KING | 5000.00 | ACCOUNTING |
| TURNER | 1500.00 | SALES |
| ADAMS | 1100.00 | RESEARCH |
| JAMES | 950.00 | SALES |
| FORD | 3000.00 | RESEARCH |
| MILLER | 1300.00 | ACCOUNTING |
+ + + +
Note:
❖ In case of join full qualified (table_name.column_name) name is used to avoid
ambiguity as both table contains common columns as PRIMARY KEY and
FOREIGN KEY.
❖ Table Alias – Like column alias table alias can be used in case of join as given
below.
SELECT e.ename, e.sal FROM emp e, dept d WHERE emp.deptno=dept.deptno;
❖ Here ‘e’ & ‘d’ are table alias for EMP & DEPT table respectively.
Customer Table:
customer_id cust_name city grade salesman_id
3002 Nick Rimando New York 100 5001
3007 Brad Davis New York 200 5001
3005 Graham Zusi California 200 5002
3008 Julian Green London 300 5002
3004 Fabian Johnson Paris 300 5006
3009 Geoff Cameron Berlin 100 5003
3003 Jozy Altidor Moscow 200 5007
Q1. Write a SQL query to display Salesman, cust_name and city from above table where the
salesperson and customer belongs to same city.
Ans:
SELECT s.name AS "Salesman",
c.cust_name, c.city
FROM salesman s,customer c
WHERE s.city=c.city;
Or
SELECT salesman.name AS "Salesman",
customer.cust_name, customer.city
FROM salesman,customer
WHERE salesman.city=customer.city;
77
Page
Q2. write a SQL query to display ord_no, purch_amt, cust_name, city of those orders where
order amount exists between 500 and 2000.
Ans:
SELECT o.ord_no,o.purch_amt,
c.cust_name,c.city
FROM orders o,customer c
WHERE o.customer_id=c.customer_id
AND o.purch_amt BETWEEN 500 AND 2000;
Q3. Write a SQL query to display Customer Name, city, Salesman, commission the all
salesperson(s) and their respective the customer(s).
Ans:
SELECT c.cust_name AS "Customer Name",
c.city, s.name AS "Salesman", s.commissio n
FROM customer c, salesman s
WHERE c.salesman_id=s.salesman_id;
control structure that facilitates the row by row processing of records in the result set. The result
set refers to a logical set of records that are fetched from the database by executing an SQL
Page
Interface of python
with an SQL database
Questions:
1 Marks Questions
1 To establish connection between Python and MySql Which connector is required.
(a) mysql.connection (b) connector (c) mysql.connect (d) mysql.connector
2 If you want to check whether connection between Python and MySql is established or not. Which
function is used?
(a) con.isconnected() (b) con.connected() (c) con.is_connect (d) con.is_connected
3 Fill the connection string with the required parameter name: -
con=mysql.connector.connect(<1>= localhost , user= “scott” <2>= ‘tiger’ , database=’mydb’
(a) <1>= host , <2> =passwd (b) <1>= host , <2> =password
(b) <1>= 127.0.0.1 , <2> =password (d) <1>= 127.0.0.1, <2> =pass
4 Which of the following component act as a container to hold all the data returned from the query and
from there we can fetch data at a time?
(a) Resultset (b) Container (c) Table (d) Cursor
5 Differentiate between fetchone() and fetchall() ?
6 Which properties of cursor is used to get number of records stored in cursor(Assuming cursor name
is dbcursor?
(a) dbcursor.count (b) dbcursor.row.count
(b) dbcursor.records (d) dbcursor.rowcount
7 Out of which of the following symbol is used for passing parameterized query fro execution to cursor?
a) { } b) % c) $ d) Both (a) and (b)
8 Which cursor function is used to fetch n number of records from cursor?
a) fetchone() b) fetch( ) c) fetchmany() d) fetchall()
9 Which cursor function is used to fetch one record at a time from cursor?
a) fetchone() b) Onefetch() c) fetch() d) fetchonce()
10 Which cursor function is used to send query to connection?
(a) query() (b) execute() (c) run() (d) send()
2 Marks Questions
1 Consider the following table EMP containing information about an employee: -
80
Page
EMPNO ENAME DEPT SALARY
1 ALEX MUSIC 60000
2 PETER ART 67000
3 JHONY WE 55000
4 RAMBO P&HE 48000
Following python code is written to access the records of the table. EMP. What will be the output of
the following code:
query = “Select * from emp”
mycursor.execute(query)
result1= mycursor.fetchone()
result1= mycursor.fetchone()
result1= mycursor.fetchone()
d= int(result1[3])
print(d*3)
(a) P&HEP&HEP&HE (b) 144000
(b) WEWEWE (d) 165000
2 Consider the following Python code written to access the record of CODE passes to
function.Complete the missing statements:
def Search(eno):
#Assume that all the basic setup import, connection and cursor is already created
query=”select * from emp where emp where empno = ”.format(eno)
mycursor .execute(query)
result = mycursor.
print(results)
(a) { } and fetchone() (b) fetchone() and {}
(b) %s and fetchone() (d) %eno and fetchone()
3 Consider the following Python code written for updating the records:
def Update(eno):
#Assume basic setup import, connection(con) and cursor(mycursor) is created
query = “update emp set salary = 90000 where empno =”+str(eno)
mycursor.execute(query)
Code is running but the record in actual database is not updating, what could be the possible reason?
(a) save() function is missing (b) con.save() function is missing
(b) con.commit() function is missing (d) commit() is missing
4 Consider the following python code to display all records from table: EMP
def ShowAll()
#Assume basic setup import, connection(con) and cursor(mycursor) is created
query=”select * from emp”
mycursor .execute(query)
result = mycursor. fetchall()
for results in row:
print(results)
But query is giving error, what could be the possible reason?
(a) fetchmany() should be used in place of fetchall()
(b) fetchone() should be used in place of fetchone()
(c) print(row) should be used in place of print(results)
(d) loop and print function is wrong, for row in results: snd print(row) should be used.
5 Differentiate between fetchone() and fetchmany() /
6 What is the role of a cursor? Write syntax to create a cursor?
7 To perform query sting based on some parameter. There are two method. Write the given query in (i)
String Templates with % formatting and (ii) String Template with { } formatting
“select all fields from table student where marks >70”
81
Page
4 Marks Questions
1 What is resultset? Write code to execute the query “Select * from student” and store the retrieved
record in the cursor object after creating cursor.
2 Explain the purpose of the following lines in the given code:-
import mysql.connection as con
mycon = con.connect(host=”localhost”, user=”root”,passwd= “admin” , database=”employee”)
mycursor=mycon.cursor() ------------ 1
mycursor.execute(“select * from emp”) ------------ 2
mydata = mycursor.fetchall() ------------3
nrec = mycursor.rowcount() ------------- 4
print(“Total records fetched till now are:”,nrec)
3 What will be the generated query string of the following code, also write statement to execute Query
and save the changes:-
import mysql.connection as con
mycon = con.connect(host=”localhost”, user=”root”,passwd= “admin” , database=”mybooks”)
mycursor = mycon.cursor()
Query = “INSERT INTO books (title, isbn, author, price) VALUES (%s, %s, %s,
%s)”.%(“Panchatantra’,123456, “John Fedrik”,500.00)
5 Marks Questions
1 Consider the following python and MySql connectivity code and answer the following questions:
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="12345",database= "student")
if mydb.is_connected()==True:
print("connection ok")
else:
print("error connecting to mysql database")
mycursor=mydb.cursor()
r=int(input("enter the rollno"))
n=input("enter name")
m=int(input("enter marks"))
mycursor.execute("INSERT INTO student(rollno,name,marks) VALUES({},'{}',{})".format(r,n,m))
mydb.commit()
print(mycursor.rowcount,"RECRD INSERTED")
(i) Which of the following statement is connecting database server?
(ii) What is the role of the statement ‘mycursor=mydb.cursor()’?
(iii) Which statement will add record to the table?
(iv) What is the purpose of the ‘cursor.rowcount in the following print statement.
print(mycursor.rowcount,"RECRD INSERTED")
(v) What is the purpose of ‘mydb.commit()’ ?
2 What are the various methods for fetching record from the table? Explain the purpsose of different
fetch function available in Mysql and fill in the blanks given 1 and 2.
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="12345",database="student")
if mydb.is_connected()==True:
print("connection ok")
else:
print("error connecting to mysql database")
1
mycursor.execute("SELECT * FROM STUDENT")
2
for row in rs:
82
Page
print(row)
3 Consider the following menu driven program of python and MySql Connectivity and fill the gap with
the correct statement.
import sys
mydb=mysql.connector.connect(host="localhost",user="root",passwd="12345")
mycursor=mydb.cursor()
while True:
print("MENU")
print("1-Creating Database\n 2-Displaying Database List\n 3-Creating Table\n 4- Showing tables
List\n 5-To See the structure of Table\n 6-exit\n")
ch=int(input("enter your choice"))
if ch==1:
(i)
if ch==2:
(ii)
for x in mycursor:
print (x)
if ch==3:
(iii)
if ch==4:
(iv)
for x in mycursor:
print(x)
if ch==5:
(v)
for x in mycursor:
print(x)
sys.exit()
(i) Write command to create database SCHOOL.
(ii) Write command for displaying database list.
(iii) Write statement to create table FEES with FIELD [ROLLNO, NAME, AMOUNT] assume
datatype from your own.
(iv) Write statement to display tables in current user.
(v) mycursor.execute("DESC STUDENT")
Solution:
1 Marks Questions
1 (d)mysql.connector
2 (d) con.is_connected()
3 (a) <1>= host , <2> =passwd
4 (d) Cursor
5 fetchone() is used to fetch one record at a time. Subsequent fetchone() will fetch next records.If no
more records to fetch ,it returns none. fetchall() is used to fetch all the records from cursor in the form
of tuple.
6 (d) dbcursor.rowcount
7 Both (a) and (b)
8 (c) fetchmany()
9 (a) fetchone()
10 (b) execute()
2 Marks Questions
1 (c) 165000
2 (a) { } and fetchone()
3 (a) con.commit() function is missing
83
Page
4 (d) loop and print function is wrong, it should be “for row in results” and print(row) should be used.
5 (i) fetchone() ->This method retrieves the next row of a query resultset and returns a single
sequence or None if no more rows are available. By default it returns tuple.
(ii) fetchmany() -> This method fetches the next set of rows of a query resultset and returns a list
of tuples. If no more rows are available it returns an empty list.
6 A database cursor is a special control structure that facilitates the row by row processing of records in
the resultset, i.e. the set of records retrieved as per query.
<cursor object> = <connection-object>.cursor()
7 (i) st =“Select * from student where marks >%s” %(70)
(ii) st= “Select * from student where marks >{ }”.format(70)
4 Marks Questions
1 The resultset refers to a logical set of records that are fetched from the database by executing an SQL
query and made available to the application program.
cursor = con.cursor()
cursor.execute(“select * from student”)
2 1. Create an instance(object) of a cursor using cursor()
2. Executing sql query to retrieve all the records of the table emp in the mycursor object.
3. Fetch all the record in the resultset.
4. To count the number of rows/records returned by sql query.
3 INSERT INTO books (title, isbn, author, price) VALUES (“Panchatantra’,123456, “John
Fedrik”,500.00)
mycursor.execute(Query)
mycon.commit()
5 Marks Questions
1 (i) mysql.connector.connect
(ii) Creates an instance of a cursor
(iii) mycursor.execute(Sql Query)
(iv) To count and display the number of record effected by the query.
(v) Confirms the changes made by the user to the database.
2 (i) fetchone() ->This method retrieves the next row of a query resultset and returns a single sequence
or None if no more rows are available. By default it returns tuple.
(ii) fetchmany() -> This method fetches the next set of rows of a query resultset and returns a list of
tuples. If no more rows are available it returns an empty list.
(iii) fetchall() -> This method will return all the rows from the resultset in the form of a tuple
containing the records.
(iv) Fill in the blanks 1 ---- mycursor=mydb.cursor()
(v) Fill in the blanks 2 -----rs=mycursor.fetchall()
3 (i) mycursor.execute("CREATE DATABASE SCHOOL")
(ii) mycursor.execute("SHOW DATABASE")
(iii) mycursor.execute("CREATE TABLE FEES (ROLLNO INTEGER(3),NAME VARCHAR(20),
AMOUNT INTEGER(10));")
(iv) mycursor.execute("SHOW TABLES")
(v) Write statement to display the structure of the table.
84
Page