calling pl-sql from java

14
Calling Stored Procedure & Functions From Java

description

DBMS SLIDES

Transcript of calling pl-sql from java

Page 1: calling pl-sql from java

Calling Stored Procedure &

FunctionsFrom Java

Page 2: calling pl-sql from java

create or replace procedure test1 is

begin

insert INTO emp(empno,ename) VALUES (13, 'rahat');

end;

/

Page 3: calling pl-sql from java

import java.sql.*;

import java.util.*;

public class Connect1 {

public static void main(String argv[]) {

Connection conn = null;

Statement stmt;

try {

DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

conn = DriverManager.getConnection("jdbc:oracle:oci8:@","scott", "tiger");

stmt=conn.createStatement();}

catch(SQLException e ) {e.printStackTrace(); }

CallableStatement cs;

try

{

cs=conn.prepareCall("{call test1}");

cs.execute();

}

catch(SQLException e ) {

e.printStackTrace(); }

}

}

Page 4: calling pl-sql from java

CallableStatement cs;

try

{

cs=conn.prepareCall("{call test1}");

cs.execute();

}

catch(SQLException e ) {

e.printStackTrace(); }

}

Page 5: calling pl-sql from java

create or replace procedure sumt(a in varchar) is

begin

update test2 set ename=a;

end;

CallableStatement cs;

try

{

cs=conn.prepareCall("{call sumt(?)}");

cs.setString(1,"as");

cs.execute();

}

Page 6: calling pl-sql from java

create or replace procedure sumt(a varchar, b varchar) is

begin

update test2 set ename=a||b;

end;

CallableStatement cs;

try{

cs=conn.prepareCall("{call sumt(?,?)}");

cs.setString(1,"as");

cs.setString(2,"bs");

cs.execute();

}

catch(SQLException e ) {e.printStackTrace(); }}

Page 7: calling pl-sql from java

create or replace procedure sumt(a varchar, b varchar, c out varchar) is

begin

c:=a||b;

end;

CallableStatement cs;

try{

cs=conn.prepareCall("{call sumt(?,?,?)}");

cs.setString(1,"rahat");

cs.setString(2,"bs");

cs.registerOutParameter(3,Types.VARCHAR);

cs.execute();

String s=cs.getString(3);

System.out.println(s);

}

Page 8: calling pl-sql from java

create or replace procedure sumt(a number, b number, c out number) is

begin

c:=a+b;

end;

try

{

cs=conn.prepareCall("{call sumt(?,?,?)}");

cs.setInt(1,21);

cs.setInt(2,34);

cs.registerOutParameter(3,Types.INTEGER);

cs.execute();

int s=cs.getInt(3);

System.out.println(s);

}

Page 9: calling pl-sql from java

create or replace function f1 return varchar is

begin

return 'rahat';

end;

CallableStatement cs;

try{

cs=conn.prepareCall("{?=call f1}");

cs.registerOutParameter(1,Types.VARCHAR);

cs.execute();

String s=cs.getString(1);

System.out.println(s);

}

Page 10: calling pl-sql from java

create or replace function f1(a number,b number) return number is

c number;

begin

c:=a+b;

return(c);

end;

try{

cs=conn.prepareCall("{?=call f1(?,?)}");

cs.registerOutParameter(1,Types.INTEGER);

cs.setInt(2,23);

cs.setInt(3,2);

cs.execute();

int s=cs.getInt(1);

System.out.println(s);}

Page 11: calling pl-sql from java

create or replace function f1(a number,b number,c out number) return number is

begin

c:=a+b;

return(a-b);

end;

Page 12: calling pl-sql from java

try{

cs=conn.prepareCall("{?=call f1(?,?,?)}");

cs.registerOutParameter(1,Types.INTEGER);

cs.setInt(2,23);

cs.setInt(3,2);

cs.registerOutParameter(4,Types.INTEGER);

cs.execute();

int s=cs.getInt(1);

int a=cs.getInt(4);

System.out.println("return"+s);

System.out.println("out"+a);

}

Page 13: calling pl-sql from java

try{

Statement st=conn.createStatement();

String fu ="create or replace function f4(a number,b number,c out number) return number is "

+"begin "

+"c:=a+b;"

+"return(a-b);"

+"end;";

st.executeUpdate(fu);

}catch(SQLException e){ }

CallableStatement cs;

Try{

cs=conn.prepareCall("{?=call f4(?,?,?)}");

cs.registerOutParameter(1,Types.INTEGER);

cs.setInt(2,23);

cs.setInt(3,2);

cs.registerOutParameter(4,Types.INTEGER);

cs.execute();

int s=cs.getInt(1);

int a=cs.getInt(4);

System.out.println("return"+s);

System.out.println("out"+a);}

catch(SQLException e ) {

e.printStackTrace(); }}

Page 14: calling pl-sql from java

try

{

Statement st=conn.createStatement();

String fu =

"create or replace function f4(a number,b number,c out number) return number is "

+"begin "

+"c:=a+b;"

+"return(a-b);"

+"end;";

st.executeUpdate(fu);

}

catch(SQLException e){ }