Est.
2012
NILGIRI COLLEGE
OF ARTS AND SCIENCE
(Affiliated to Bharathiar University)
DEPARTMENT OF COMPUTER APPLICATIONS
VISUAL BASIC & ORACLE LAB
PRACTICAL RECORD
2022 – 2023
NAME ..…………………………………………………………………
REGISTER No. …………………………………………………………………..
CLASS ……………………………………………………………………
SEMESTER ……………………………………………………………………
Est. 2012
NILGIRI COLLEGE
OF ARTS AND SCIENCE
(Affiliated to Bharathiar University)
DEPARTMENT OF COMPUTER APPLICATIONS
VISUAL BASIC & ORACLE LAB
PRACTICAL RECORD
NAME ……………………………………………………………….. CLASS …………………………
REGISTER No. ……………………………………………..
CERTIFIED THAT THIS IS THE BONAFIED RECORD OF WORK DONE BY THE
ABOVE STUDENT OF BACHELOR OF COMPUTER APPLICATIONS IN THE VISUAL
BASIC AND ORACLE LABORATORY DURING THE YEAR
2022 - 2023
Staff in-charge Head of the Department Principal
Submitted for the Practical Examination held on ……………….…….
Internal Examiner External Examiner
INDEX
VISUAL BASIC AND ORACLE LAB
SI. No DATE PROGRAM PAGE No. REMARK
VISUAL BASIC
1. 25/07/2022 NUMBER CONVERSION 2
2. 27/07/2022 CALCULATOR 6
3. 29/07/2022 FORM USING COMMON DIALOG BOX 10
4. 01/08/2022 MENU DRIVEN 13
5. 08/08/2022 FIBONACCI SERIES 17
6. 15/08/2022 SUM OF N NUMBERS 20
7. 01/09/2022 ANIMATION USING TIMERS 23
PROJECT
8. 12/09/2022 STUDENT MANAGEMENT SYSTEM 27
ORACLE
TABLE CREATION, VALUES INSERTION AND
9. 23/09/2022 32
PERFORMING OPERATIONS
10. 06/10/2022 PL/SQL UPDATION AND ALTERING TABLES 34
11. 17/10/2022 CREATING A DATABASE TRIGGER 37
12. 10/11/2022 PROCEDURES 40
VISUAL BASIC
1
EX.NO: 1
DATE: 25/07/22 NUMBER CONVERSION
Aim:
Procedure:
2
Form Design:
3
Coding:
Private Sub Command1_Click()
Label3.Caption = "Binary Value:"
Number = Val(Text1.Text)
Do While Number > 0
reminder = Fix(Number) Mod 2
Number = Fix(Number) / 2
result = reminder & result
Loop
Text2.Text = Str(result)
End Sub
Private Sub Command2_Click()
Label3.Caption = "Octal Value:"
Text2.Text = Oct(Text1.Text)
End Sub
Private Sub Command3_Click()
Label3.Caption = "Hexa Decimal Value:"
Text2.Text = Hex(Text1.Text)
End Sub
Private Sub Command4_Click()
Text1.Text = ""
Text2.Text = ""
End Sub
Private Sub Command5_Click()
4
Dim i As Integer
i = MsgBox("Are to sure to exit", 4, "Exit")
If i = 6 Then End
End Sub
5
Output:
Result:
6
EX.NO: 2
DATE: 27/07/22 CALCULATOR
Aim:
Procedure:
7
Form Design:
8
Coding:
Dim num1, num2, symbol As String
Dim result, sign As Double
Private Sub Command1_Click(Index As Integer)
Text1.Text = Text1.Text + Command1(Index).Caption
End Sub
Private Sub Command2_Click()
Text1.Text = ""
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub Command4_Click()
symbol = "+"
num1 = Text1.Text
Text1.Text = ""
End Sub
Private Sub Command5_Click()
symbol = "-"
num1 = Text1.Text
9
Text1.Text = ""
End Sub
Private Sub Command6_Click()
symbol = "*"
num1 = Text1.Text
Text1.Text = ""
End Sub
10
Output:
Result:
11
EX.NO: 3
DATE: 29/07/22 FORM USING COMMON DIALOG BOX
Aim:
Procedure:
12
Form Design:
13
Coding:
Private Sub Command1_Click()
CommonDialog1.ShowFont
End Sub
Private Sub Command2_Click()
CommonDialog1.ShowColor
End Sub
Private Sub Command3_Click()
CommonDialog1.ShowOpen
End Sub
Private Sub Command4_Click()
CommonDialog1.ShowSave
End Sub
Private Sub Command5_Click()
CommonDialog1.ShowHelp
End Sub
14
Output:
Result:
15
EX.NO: 4
DATE: 01/08/22 MENU DRIVEN
Aim:
Procedure:
16
Form Design:
17
Coding:
Private Sub addForm_Click()
Dim f As New Form1
Form1.Show
End Sub
Private Sub cascade_Click()
MDIForm1.arrange vbCascade
End Sub
Private Sub green_Click()
Form1.BackColor = vbGreen
End Sub
Private Sub horizontal_Click()
MDIForm1.arrange vbHorizontal
End Sub
Private Sub MDIForm_Load()
Form1.Show
Form2.Show
Form3.Show
End Sub
Private Sub red_Click()
Form1.BackColor = vbRed
End Sub
18
Private Sub vertical_Click()
MDIForm1.arrange vbVertical
End Sub
19
Output:
Result:
20
EX.NO: 5
DATE: 08/08/22 FIBONACCI SERIES
Aim:
Procedure:
21
Form Design:
22
Coding:
Private Sub Command1_Click()
Dim a, b, c, n As Integer
n = Val(Text1.Text)
a=0
b=1
c=a
Text2.Text = a & ", " & b & ", "
For i = 2 To n - 1
c=a+b
Text2.Text = Text2.Text & c & ", "
a=b
b=c
Next i
End Sub
Private Sub Command2_Click()
Text1.Text = ""
Text2.Text = ""
End Sub
Private Sub Command3_Click()
End
End Sub
23
Output:
Result:
24
EX.NO: 6
DATE: 15/08/22 SUM OF N NUMBERS
Aim:
Procedure:
25
Form Design:
26
Coding:
Dim sum, k, n As Integer
Private Sub Command1_Click()
n = InputBox("Enter the limit")
End Sub
Private Sub Command2_Click()
sum = 0
For k = 1 To n
sum = sum + k
Next k
MsgBox ("The Result is " & sum)
End Sub
27
Output:
Result:
28
EX.NO: 7
DATE: 01/09/22 ANIMATION USING TIMERS
Aim:
Procedure:
29
Form Design:
30
Coding:
Private Sub Timer1_Timer()
If Image1.Visible = True Then
Image2.Visible = True
Image3.Visible = False
Image1.Visible = False
ElseIf Image2.Visible = True Then Image3.Visible = True
Image1.Visible = False
Image2.Visible = False
ElseIf Image3.Visible = True Then Image1.Visible = True
Image2.Visible = False
Image3.Visible = False
End If
End Sub
31
Output:
Result:
32
PROJECT
33
EX.NO: 8
DATE: 12/09/22 STUDENT MANAGEMENT SYSTEM
Form Design:
34
Coding:
Private Sub Command1_Click()
Data1.Recordset.MoveFirst
End Sub
Private Sub Command2_Click()
Data1.Recordset.MovePrevious
If Data1.Recordset.BOF Then
Data1.Recordset.MoveFirst
MsgBox ("No more records before this.")
End If
End Sub
Private Sub Command3_Click()
Data1.Recordset.MoveNext
If Data1.Recordset.EOF Then
Data1.Recordset.MoveLast
MsgBox ("No more records after this.")
End If
End Sub
Private Sub Command4_Click()
Data1.Recordset.MoveLast
End Sub
35
Private Sub Command5_Click()
Data1.Refresh
Data1.Recordset.MoveLast
Data1.Recordset.AddNew
End Sub
Private Sub Command6_Click()
Data1.UpdateRecord
MsgBox ("Record Saved.")
End Sub
Private Sub Command7_Click()
Data1.Recordset.Delete
Data1.Recordset.MoveNext
If Data1.Recordset.EOF Then
Data1.Recordset.MoveLast
MsgBox ("Item Deleted.")
End Sub
Private Sub Command8_Click()
End
End Sub
36
Output:
Result:
37
ORACLE
38
EX.NO: 9 TABLE CREATION, VALUES INSERTION AND
DATE: 23/09/22 PERFORMING OPERATIONS
SQL> CREATE TABLE Employee_Details (ID NUMBER(10) PRIMARY KEY, Name
VARCHAR(20) NOT NULL, Salary NUMBER(7) NOT NULL, Age NUMBER(7) NOT
NULL, Joining_Date VARCHAR(30), Designation VARCHAR(30));
Table created.
SQL> DESC Employee_Details;
Name Null? Type
----------------------------- -------- ----------------------------
ID NOT NULL NUMBER(10)
NAME NOT NULL VARCHAR2(20)
SALARY NOT NULL NUMBER(7)
AGE NOT NULL NUMBER(7)
JOINING_DATE VARCHAR2(30)
DESIGNATION VARCHAR2(30)
SQL> INSERT INTO Employee_Details (ID, Name, Salary, Age, Joining_Date,
Designation) VALUES(200, 'Sani', 3000, 20, '10-10-2021', 'Program Designer');
1 row created.
SQL> INSERT INTO Employee_Details (ID, Name, Salary, Age, Joining_Date,
Designation) VALUES(201, 'Blessy', 4000, 21, '10-10-2020', 'Program Designer');
1 row created.
SQL> INSERT INTO Employee_Details (ID, Name, Salary, Age, Joining_Date,
Designation) VALUES(202, 'Sruthi', 6000, 25, '10-10-2015', 'Supervisor');
1 row created.
SQL> SELECT * FROM Employee_Details;
39
ID NAME SALARY AGE JOINING_DATE DESIGNATION
----- ----------- ---------- ------- ----------------------- -------------
200 Sani 3000 20 10-10-2021 Program Designer
201 Blessy 4000 21 10-10-2020 Program Designer
202 Sruthi 6000 25 10-10-2015 Supervisor
SQL> SELECT * FROM Employee_Details WHERE Age >= 21;
ID NAME SALARY AGE JOINING_DATE DESIGNATION
----- ----------- ---------- ------- ----------------------- -------------
201 Blessy 4000 21 10-10-2020 Program Designer
202 Sruthi 6000 25 10-10-2015 Supervisor
SQL> SELECT * FROM Employee_Details WHERE Age >= 21 OR Salary <= 4000;
ID NAME SALARY AGE JOINING_DATE DESIGNATION
----- ----------- ---------- ------- ----------------------- -------------
200 Sani 3000 20 10-10-2021 Program Designer
201 Blessy 4000 21 10-10-2020 Program Designer
202 Sruthi 6000 25 10-10-2015 Supervisor
SQL> COMMIT;
Commit complete.
SQL>
40
EX.NO: 10 PL/SQL UPDATION AND ALTERING TABLES
DATE: 06/10/22
SQL> CREATE TABLE Inventory (pro_no NUMBER(10) PRIMARY KEY, pro_name
VARCHAR(20) NOT NULL, Rate NUMBER(10) NOT NULL);
Table created.
SQL> DESC Inventory;
Name Null? Type
------------------ -------- ---------------------
PRO_NO NOT NULL NUMBER(10)
PRO_NAME NOT NULL VARCHAR2(20)
RATE NOT NULL NUMBER(10)
SQL> INSERT INTO Inventory (pro_no, pro_name, Rate) VALUES(10001, 'Design', 199);
1 row created.
SQL> INSERT INTO Inventory (pro_no, pro_name, Rate) VALUES(10002, 'World', 299);
1 row created.
SQL> INSERT INTO Inventory (pro_no, pro_name, Rate) VALUES(10003, 'Nature', 149);
1 row created.
SQL> INSERT INTO Inventory (pro_no, pro_name, Rate) VALUES(10004, 'Computer
Parts', 499);
1 row created.
SQL> INSERT INTO Inventory (pro_no, pro_name, Rate) VALUES(10005, 'Software
Update', 1499);
1 row created.
SQL> DECLARE
41
2 BEGIN
3 UPDATE Inventory
4 SET Rate = Rate + (Rate * 0.2);
5 END;
6 /
PL/SQL procedure successfully completed.
SQL> SELECT * FROM Inventory;
PRO_NO PRO_NAME RATE
---------- -------------------- ----------
10001 Design 239
10002 World 359
10003 Nature 179
10004 Computer Parts 599
10005 Software Update 1799
SQL> ALTER TABLE Inventory ADD no_of_item NUMBER(15);
Table altered.
SQL> DESC Inventory;
Name Null? Type
---------------------- --------- ----------------
PRO_NO NOT NULL NUMBER(10)
PRO_NAME NOT NULL VARCHAR2(20)
RATE NOT NULL NUMBER(10)
NO_OF_ITEM NUMBER(15)
42
SQL> UPDATE Inventory SET no_of_item = 15 WHERE pro_no = 10001;
1 row updated.
SQL> UPDATE Inventory SET no_of_item = 10 WHERE pro_no = 10002;
1 row updated.
SQL> SELECT * FROM Inventory;
PRO_NO PRO_NAME RATE NO_OF_ITEM
---------- -------------------- -------- ----------
10001 Design 239 15
10002 World 359 10
10003 Nature 179
10004 Computer Parts 599
10005 Software Update 1799
SQL> COMMIT;
Commit complete.
SQL>
43
EX.NO: 11 CREATING A DATABASE TRIGGER
DATE: 17/10/22
SQL> CREATE TABLE Inv_Master (pro_no NUMBER(10) NOT NULL, pro_name
VARCHAR(20), Rate NUMBER(5), Stock_Status NUMBER(10), CONSTRAINT
prono_pk PRIMARY KEY(pro_no));
Table created.
SQL> DESC Inv_Master;
Name Null? Type
-------------------------- -------- ----------------------------
PRO_NO NOT NULL NUMBER(10)
PRO_NAME VARCHAR2(20)
RATE NUMBER(5)
STOCK_STATUS NUMBER(10)
SQL> INSERT INTO Inv_Master VALUES(111, 'Memory Card', 400, 30);
1 row created.
SQL> INSERT INTO Inv_Master VALUES(123, 'Pendrive', 350, 20);
1 row created.
SQL> INSERT INTO Inv_Master VALUES(124, 'Card Reader', 100, 10);
1 row created.
44
SQL> COMMIT;
Commit complete.
SQL> CREATE TABLE Inv_Trans (inv_id NUMBER(5), pro_no NUMBER(5) NOT
NULL, Quantity NUMBER(10), Amount NUMBER(10), CONSTRAINT prono_fk
FOREIGN KEY(pro_no) REFERENCES Inv_Master);
Table created.
SQL> DESC Inv_Trans;
Name Null? Type
---------------------------- -------------- -------------
INV_ID NUMBER(5)
PRO_NO NOT NULL NUMBER(5)
QUANTITY NUMBER(10)
AMOUNT NUMBER(10)
SQL> INSERT INTO Inv_Trans VALUES(30, 111, 1, 100);
1 row created.
SQL> INSERT INTO Inv_Trans VALUES(20, 123, 2, 150);
1 row created.
SQL> INSERT INTO Inv_Trans VALUES(10, 124, 3, 600);
1 row created.
SQL> SELECT * FROM Inv_Trans;
45
INV_ID PRO_NO QUANTITY AMOUNT
---------- ---------- ---------------- ----------
30 111 1 100
20 123 2 150
10 124 3 600
SQL> CREATE OR REPLACE TRIGGER bca
2 BEFORE DELETE OR INSERT OR UPDATE ON Inv_Trans
3 FOR EACH ROW
4 WHEN(NEW.inv_id > 0)
5 DECLARE
6 Discount NUMBER;
7 BEGIN
8 Discount:=OLD.Amount-:NEW.Amount;
9 DBMS_OUTPUT.PUT_LINE('Old Amount: '||:OLD.Amount);
10 DBMS_OUTPUT.PUT_LINE('New Amount: '||:new.Amount);
11 DBMS_OUTPUT.PUT_LINE('Discount: '||Discount);
12 END;
13 /
Trigger created.
46
EX.NO: 12 PROCEDURES
DATE: 10/11/22
DECLARE
a number;
b number;
c number;
PROCEDURE findMin(x IN NUMBER, y IN NUMBER, z OUT NUMBER) IS
BEGIN
IF x < y THEN
z:= x;
ELSE
z:= y;
END IF;
END;
BEGIN
a:= 23;
b:= 45;
findMin(a, b, c);
DBMS_OUTPUT.PUT_LINE('Minimum of (23, 45) : ' || c);
END;
Minimum of (23, 45) : 23
PL/SQL procedure successfully completed.
47