Logic of Love Tidak Sekarang – SoundCloud

Listen to Tidak Sekarang by suaracerita #np on #SoundCloud

Oracle Proses ke Lock atau ke kunci

Saya mau share tentang oracle, kadang ketika kita menjalankan sebuah store procedure yang berisi banyak logic yang rumit sehingga kadang membuat proses di oracle nya menjadi deadlock atau berhenti, sehingga berpengaruh pada table table yang ada di dalam logic store procedure tidak bisa di alter ataupun di select. untuk itu solusinya kita harus kill sesionnya supaya bisa normal kembali. dibawah ini adalah query untuk mendapatkan sid dan serial proses yang deadlock tadi.

   select s.sid, s.serial#, p.spid 
from 
   v$session s, 
   v$process p 
where 
   s.paddr = p.addr 
and 
   s.sid in (select SESSION_ID from v$locked_object);

setelah ada hasilnya, silah column sid dan serial#

jalankan query dibawah ini :

ALTER SYSTEM KILL SESSION 'sid,serial#';

*sid dan serial# diisi dengan sid dan serial# hasil query sebelumnya.

Aplikasi Java Kartu ID (JasperReport,Barcode)

Saya pernah membuat aplikasi yang berguna mencetak kartu id. memanfaatkan teknologinya jasperreport.
dibawah ini link untuk mendownloadnya. untuk tutorialnya masih dalam rencana. hehehe

Java Jasperreport barcode

klik tombol download.

Selamat mencoba.

Startup and Shutdown Instance Oracle

$ set ORACLE_SID=EXAMPLEORACLE
$ sqlplus /nolog
SQL> conn / as sysdba
Connected.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area 1610612736 bytes
Fixed Size                  2040952 bytes
Variable Size            1040194440 bytes
Database Buffers          553648128 bytes
Redo Buffers               14729216 bytes
Database mounted.
Database opened.
SQL> exit

Code SQL untuk Mengcopy Satu Table Berserta Records nya Oracle

Untuk mengkopi sebuah table gak perlu susah2 membuat query create table yang panjang serta query khusus untuk insert table lama ke table baru yang rumit banget, coba pakai query dibawah ini :
create table table_baru
as select * from table_lama;

Selamat mencoba😀

@bahrie_bhe

JDBC Java memanggil Store Procedure Oracle Update Delete PL/SQL

Di artikel sebelumnya sudah saya tulis bagaimana java memanggil sp yang isinya insert dan select, dan yang sekarang adalah untuk operasi update dan delete. seperti biasa sebelumnya kita buat dulu Store Procedurenya untuk Update dan Delete :

Store Procedure Update

create or replace
PROCEDURE SP_BHE_MHS_U 
(
nim_in         IN bhe_mhs.nim%type,
name_in        IN bhe_mhs.name%type,
address_in     IN bhe_mhs.address%type,
result_cursor  OUT SYS_REFCURSOR
)
AS 
BEGIN
  update bhe_mhs 
  set
  name      =name_in,
  address   =address_in
      where 
      nim=nim_in;
        
         OPEN result_cursor FOR
  select 'success' as status from dual;
END;

Store Procedure untuk Delete

create or replace
PROCEDURE SP_BHE_MHS_D 
(
nim_in         IN bhe_mhs.nim%type,
result_cursor  OUT SYS_REFCURSOR
)
AS 
BEGIN
  
  delete from bhe_mhs 
      where 
      nim=nim_in;
  
END;

Code java yang memanggilnya :

code Update

public void update(Mahasiswa o) throws SQLException {
        String updateMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_u(?,?,?,?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(updateMahasiswa);
        callableStatement.setString(1, o.getNim());
        callableStatement.setString(2, o.getNama());
        callableStatement.setString(3, o.getAlamat());
        callableStatement.registerOutParameter(4, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
    }

Code java untuk delete

public void delete(String nim) throws SQLException {
        String deleteMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_d(?,?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(deleteMahasiswa);
        callableStatement.setString(1, nim);
        callableStatement.registerOutParameter(2, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
    }

insert select update delete sudah saya kasih contoh, silahkan teman2 kembangkan sendiri dalam belajar.
Selamat mencoba😀

@bahrie_bhe

JDBC Java memanggil Store Procedure Oracle Select PL/SQL

Di artikel yang sebelumnya sudah saya bahas bagaimana memanggil SP insert, nah yang sekarang adalah contoh untuk operasi select. jadi pertama kita bkin Store Procedure di oracle setelah itu kita panggil dengan java. codenya dapat dilihat dibawah ini, oh ya keuntungan memakai Store Procedure dibandingkan kita query insert ada di program java yaitu dengan data transaction di tangani oleh Oracle maka proses yang ada di aplikasi kita akan menjadi lebih ringan karena proses transaksinya berada di database. dan biasanya mesin database dan mesin aplikasi itu di pisah, sehingga hit yang tinggi ke aplikasi tidak membuatnya hang karena proses transaksi di limpahkan ke oracle, java hanya sebagai penghubung atau jalan. bila penjelasannya masih belum bisa dipahami mungkin bisa tanya ke google atau bisa diskusi dengan saya😀

Store Procedure Select

create or replace
PROCEDURE SP_BHE_MHS_S 
(
result_cursor OUT SYS_REFCURSOR
)
AS 
BEGIN
open result_cursor for
  SELECT  
    nim nim,
    name nama,
    address alamat
    from bhe_mhs;
END;

code java seperti dibawah ini :

public List<Mahasiswa> getAll() throws SQLException {
        String getMahasiswa = "{call bahrie_bhe.sp_bhe_mhs_s(?)}";
        CallableStatement callableStatement = DatabaseUtilities.getConnection().prepareCall(getMahasiswa);
        callableStatement.registerOutParameter(1, OracleTypes.CURSOR);
        callableStatement.executeUpdate();
        ResultSet rs = (ResultSet) callableStatement.getObject(1);
        List<Mahasiswa> list = new ArrayList<Mahasiswa>();
        while (rs.next()) {
            Mahasiswa mhs = new Mahasiswa();
            mhs.setNim(rs.getString("nim"));
            mhs.setNama(rs.getString("nama"));
            mhs.setAlamat(rs.getString("alamat"));
            list.add(mhs);
        }
        return list;
    }

Selamat mencoba😀

@bahrie_bhe

Previous Older Entries