Implisit dan Explisit

Dalam pengerjaan perintah-perintah untuk menampilkan data Implisit & explisit dalam oracle ada beberapa hal yang perlu diperhatikan, diantaranya:
  1. periksa apakah user hr dalam oracle telah ter-unlock atau belum.
  2. usahakan untuk mengetahui cara melihat data-data yang ada di dalam user hr tersebut
  3. usahakan untuk mempelajari syntax perintah Select.
  4. saat menampilkan data explisit dibutuhkan beberapa urutan syntax tambahan dibandingkan saat menampilkan data implisit. syntax tersebut adalah DOFC yaitu DECLARE, OPEN, FETCH, dan CLOSE.
Berikut beberapa contoh perintah/ syntax untuk menampilkan data implisit & explisit baik 1 tabel, 2 tabel, maupun 3 tabel.

  • Perintah untuk menampilkan data implisit 1 tabel:
declare
kota locations.city%type;
kode_pos locations.postal_code%type;
provinsi locations.state_province%type;

begin
kota:='&masukkan_kota';

select city, postal_code, state_province
into kota, kode_pos, provinsi
from locations
where city = kota;

dbms_output.put_line('Kota '|| kota ||' yang memiliki kode pos '|| kode_pos ||' terletak di provinsi '||provinsi);
end;


  • Perintah untuk menampilkan data implisit 2 tabel:
declare
kota locations.city%type;
kode_pos locations.postal_code%type;
negara countries.country_name%type;

begin
kota:='&masukkan_kota';

select city, postal_code, country_name
into kota, kode_pos, negara
from locations l join countries c on(l.country_id=c.country_id)
where city = kota;

dbms_output.put_line('Kota '|| kota ||' yang memiliki kode pos '|| kode_pos ||' terletak di negara '||negara);
end;
/


  • Perintah untuk menampilkan data explisit 1 tabel:
DECLARE
nama_depan employees.first_name%type;
nama_belakang employees.last_name%type;
gaji employees.salary%type;
cursor nama is
select first_name, last_name, salary
from employees
where first_name = nama_depan;

begin
nama_depan:='&masukkan_nama';
OPEN nama;
    Loop
        FETCH nama into nama_depan, nama_belakang, gaji;
        exit when nama%notfound;
        dbms_output.put_line('Pegawai dengan nama '||nama_depan ||' '|| nama_belakang||' memiliki gaji sebesar USD '||gaji);
    end Loop;
CLOSE nama;
end;
/



  • Perintah untuk menampilkan data explisit 3 tabel:
DECLARE
nama_depan employees.first_name%type;
nama_belakang employees.last_name%type;
departemen departments.department_name%type;
provinsi locations.state_province%type;
cursor kerja is
select first_name, last_name, department_name, state_province
    from employees e join departments d on(e.department_id=d.department_id)
    join locations l on(d.location_id=l.location_id)
where first_name = nama_depan;

begin
nama_depan:='&masukkan_nama';
OPEN kerja;
    Loop
        FETCH kerja into nama_depan, nama_belakang, departemen, provinsi;
        exit when kerja%notfound;
        dbms_output.put_line('Pegawai dengan nama '||nama_depan ||' '|| nama_belakang||' bekerja di department '||departemen||' yang terletak di provinsi '||provinsi);
    end Loop;
CLOSE kerja;
end;
/

Komentar

Postingan populer dari blog ini

Review Resep Bunda Catering Bandung

OVERLOAD != 'Kelebihan beban'

Berawal Dari Keahliannya dalam PERTANIAN