Archivio

Posts Tagged ‘10g’

Creare processi batch in Java

17 settembre 2009 5 commenti

In questo post vedremo come creare un processo batch in java che eseguirà una semplice query nel database Oracle 10g attraveso il driver JDBC:ODBC.

import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
 
/**
 *
 * @author Alessandro Musacchio
 */
public class Main {
 
    public static void main(String[] args) {
        Connection con = null;
        Statement st = null;
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
 
            con = DriverManager.getConnection("jdbc:oracle:thin:user/password@localhost:1521:XE");
            String query = "update UTILITA set AVVIOTRIGGER=1";
            st = con.createStatement();
            st.addBatch(query);
            st.executeBatch();
 
 
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }finally {
            if( st != null)
                st.close();
            if( con != null)
                con.close();
       }
    }
}
Categorie:Database, Java, PL/SQL Tag: , , ,

Schedulare un azione su Database Oracle 10g

Vi mostrerò un esempio su come pianificare un azione, sia essa l’ esecuzione di una procedura, sia essa l’ avvio di un trigger ecc..
Oracle 10g, offre uno scheduler interno che permette di pianificare una particolare azione SQL alla data e allora stabilita, eventualmente anche ogni giorno.
Nell’ esempio sottostante vedremo come si crea e che cosa può fare:

BEGIN
  DBMS_SCHEDULER.create_job (
    job_name        => 'avviotrigger',
    job_type        => 'PLSQL_BLOCK',
    job_action      => 'BEGIN update UTILITA set AVVIOTRIGGER=1; END;',
    start_date      => SYSTIMESTAMP,
    repeat_interval => 'freq=daily; byhour=0;byminute=0;bysecond=0',
    end_date        => NULL,
    enabled         => TRUE,
    comments        => 'Inseriamo un commento');
END;

Come potete vedere niente di più semplice da implementare, abbiamo achedulato un azione (update UTILITA set AVVIOTRIGGER=1) che a partire dall’ istante in cui inseriamo il comando, ogni giorno e per sempre a mezzanotte eseguirà la query di update.

Installare Oracle 10g xe su Ubuntu Linux

ATTENZIONE: requisiti minimi di sistema sono: 256mb di ram, 1gb di swap, librerie glibc e libaio1!

Per prima cosa scarichiamo dal sito di Oracle la versione XE di famoso 10g in formato .deb

Fatto ciò procediamo con l’ installazione…

Spostiamoci con la shell nella directory in cui abbiamo scaricato oracle e diamo il comando:

sudo dpkg -i [nome del file oracle]

Dopo unpo di tempo dovrebbe aver finito l’ installazione..

Ora dobbiamo controllare se la porta 8080 è impegnata, per farlo diamo il comando:

netstat -na | grep 8080

Se non appare niente allora è libera :-)

Diamo il comando:

sudo /etc/init.d/oracle-xe configure

E lasciamo tutto di default.. Attenzione a dove dice di inserire la password dell’ utente SYS!

Finita questa procedura apriamo firefox e puntiamolo su http://localhost:8080/apex

e utilizzando l’ accont sys facciamo login :D

Categorie:Database Tag: , , , ,

Create your own free site