/******************************************************************
 *                        EXAMPLE7.JAVA                           *
 *                                                                *
 * Ukazka JDBC.                                                   *
 * - volani ulozenych procedur a funkci.                          *
 * Max OTTA, 5/2000                                               *
 *                                                                *
 * Prelozeni a spusteni programu :                                *
 *                                                                *
 * javac example7.java                                            *
 * java  example7                                                 *
 ******************************************************************/

import java.lang.*;
import java.sql.*;

public class example7 {

    public static String driver = "oracle.jdbc.driver.OracleDriver";
    public static String dburl  = "jdbc:oracle:thin:@stroj.zcu.cz:1521:databaze";
    public static String user = "uzivatel";
    public static String pwd  = "heslo";

    public static void main(String args[]) {
	Connection db;
	int a, b, c;
	CallableStatement st;

	try {
	    Class.forName(driver);
	} catch (ClassNotFoundException e) {
	    System.out.println("Nemohu najit ovladac.");
	    return;
	}
	try {
	    db = DriverManager.getConnection(dburl, user, pwd);

	    a = 5;
	    b = 6;

	    st = db.prepareCall("{ ? = call iarith.add(?, ?) }");
	    st.registerOutParameter(1, Types.NUMERIC);
	    st.setInt(2, a);
	    st.setInt(3, b);
	    st.execute();
	    c = st.getInt(1);
	    st.close();

	    st = db.prepareCall("{ call iarith.inc(?) }");
	    st.registerOutParameter(1, Types.NUMERIC);
	    st.setInt(1, c);
	    st.execute();
	    c = st.getInt(1);
	    st.close();
	    db.commit();

	    c = c / 2;
	    c++;  /*** Vnorene C++ v Jave  ;-) ***/

	    System.out.println("A = " + a + " B = " + b + " C = " + c);

	    db.close();
	} catch (Exception e) {
	    System.out.println("Chyba :");
	    e.printStackTrace();
	}
    }
}
/*** EOF ***/

