Sql*Plus
-
Upload
upton-suarez -
Category
Documents
-
view
28 -
download
5
description
Transcript of Sql*Plus
Sql*Plus
Oracle Server
ResultQuery,
Procedure Call
Demo_Test : Measured Temperature Values
a0 a1 a2 a3 a4
45 48 55 65 60
43 52 57 63 61
47 51 58 60 59
40 42 57 55 56
35 36 47 46 41
36 37 49 50 48
Demo_Test : Measured Temperature Values
a0 a1 a2 a3 a4
45 48 55 65 60
43 52 57 63 61
47 51 58 60 59
40 42 57 55 56
35 36 47 46 41
36 37 49 50 48
Results
a0 a1 a2 a3 a4
0 0 2 4 0
Client
Server
Call isk_demo.PosCount() ;
Package isk_demo { MaxPos() ; PosCount() ;}
Table : Demo_Test
...
...
Results
Executing sp…
Call isk_demo.PosCount() ;
Package isk_demo { MaxPos() ; PosCount() ;}
Create Or Replace Package isk_demo As
Function MaxPos(t1 Float, t2 Float, t3 Float, t4 Float, t5 Float) Return Integer ;
Pragma Restrict_References(MaxPos, WNDS) ;
Procedure PosCount ;
End isk_demo ;
Create Or Replace Package Body isk_demo As
<-- Body of package goes here -->
End isk_demo ;
Create Or Replace Package Body isk_demo As
Function MaxPos(…) Return Integer<-- Body of function goes here -->
Procedure PosCount As Cursor rSet Is Select a0, a1, a2, a3, a4 From demo_test ;
Type PosCountArrayType Is Varray(5) Of Integer ; PosCountArray PosCountArrayType := PosCountArrayType() ; I Integer ; Begin For rSetRow In rSet Loop I := MaxPos(rSetRow.a0, rSetRow.a1, rSetRow.a2,
rSetRow.a3, rSetRow.a4) ; PosCountArray(I) := PosCountArray(I) + 1 ; End Loop ; <-- Return the result -->
End PosCount ;End isk_demo ;