Kamis, 31 Januari 2013

Struktur Kontrol Alur Program



A.    Struktur kontrol
Struktur control Digunakan untuk mengatur susunan proses eksekusi statement-  statement di dalam program.
Ketika membuat program komputer, untuk kasus tertentu pembuat program (programmer) tidak jarang dihadapkan dengan pilihan tentang operasi (atau bagian program) yang harus diulang sampai beberapa kali. Untuk situasi seperti ini Java menyediakan fasilitas (reserved word) yang bisa dimanfaatkan untuk operasi berulang (looping) tersebut.

B.    Perulangan Pada Java
·         for
·         while
·         do-while

1.      For

Perulangan for menyediakan sarana mengulang kode dalam jumlah tertentu, bersifat terstruktur untuk mengulangi kode sampai tercapai batas tertentu.
Struktur perulangan for akan menjalankan statement atau sekumpulan statements dan mengulanginya selama persyaratan terpenuhi. Perbedaan dengan struktur while dan do-while adalah bahwa di dalam struktur for, batas awal dan akhir sudah harus ditentukan di awal. Sehingga banyaknya perulangan di dalam struktur for bisa diketahui sebelum perulangan dijalankan. Sedangkan pada struktur while dan do-while batas-batas  perulangannya bisa ditentukan bisa juga tidak, khususnya ketika kondisinya berhubungan dengan bilangan yang random atau dengan variable yang nilainya bisa berubah selama perulangan.
for (InitializationExpression;LoopCondition;StepExpression)

Statement
§ InitializationExpression :

Digunakan untuk inisialisasi variabel kendali pengulangan
§ LoopCondition :

Membandingkan variabel kendali pengulangan dengan suatu nilai batas
§ StepExpression :

Menspesifikasikan cara variabel kendali dimodifikasi sebelum iterasi berikutnya dari perulangan.
Nested for
public class NestedFor {
public static void main(String args[]){
for(int i=1;i<=10;i++){
for(int j=i;j<=10;j++){
System.out.print(j);}
System.out.println();
}
}
}



Hasil :
12345678910
2345678910
345678910
45678910
5678910
678910
78910
8910
910 
10

2.      While
Struktur while akan menguji suatu kondisi, kemudian menjalankan statement atau kumpulan statements jika kondisi tersebut terpenuhi (atau bernilai true). Proses ini akan dijalankan terus menerus selama kondisi bernilai true. Dengan kata lain statement atau statements tidak akan dijalankan jika kondisi bernilai false.
while (LoopCondition)
Statement
§  Jika LoopCondition dievaluasi true, maka Statement dieksekusi dan proses berlanjut diulangi.
§  Jika LoopCondition sejak semula dievaluasi false, maka statement tak pernah dieksekusi.

Contoh :
public class WhileLoop {
public static void main(String args[]){
int i=1;
while(i<=10){
int j=1;
System.out.println("i = "+i);
i++;
}
}
}
Hasil :
i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
i = 10

3.      Do While
      Perulangan do-while serupa dengan perulangan while, hanya pemeriksaan kondisi yang dilakukan adalah setelah statement. Perulangan do-while serupa dengan perulangan while, hanya saja pemeriksaan kondisi dilakukan setelah pernyataan.
do
Statement
while (LoopCondition)

Contoh :
public class DoWhileLoop {
public static void main(String args[]){
int i=1;
do{
System.out.println("i= "+i);
i++;
}while(i<11);
}
}

Hasil :
i= 1
i= 2
i= 3
i= 4
i= 5
i= 6
i= 7
i= 8
i= 9
i= 10


C.     Percabangan pada java
Di dalam program yang cukup kompleks biasanya mengandung suatu kasus dimana suatu tindakan (action) tertentu dikejakan apabila kondisi yang disyaratkan dipenuhi. Dalam pemgoraman kasus seperti ini disebut kasus bersyarat (atau kondisional). Java sebagai bahasa pemograman mempunyai beberapa jenis pencabangan yaitu :
·         If
·         if else
·         switch

1.      If
Percabangan IF di Java menyatakan bahwa suatu statement (pernyataan) akan dieksekusi bila memenuhi syarat/kondisi tertentu.
          
If (Ekspresi)
Statement

Contoh :
public class Logika_if {
public static void main (String args[]){
int targetnilai=60;
boolean lulus=false;
int nilaianda=70;
if (nilaianda > targetnilai){
lulus = true;
}
System.out.println(“Status kelulusan :”+lulus);
}
}
2.      If-Else
Pernyataan  if-else  digunakan  apabila  kita  ingin  mengeksekusi  beberapa  pernyataan dengan kondisi true dan pernyataan yang lain dengan kondisi false.
if (Condition)
Statement1
Else
Statement2

Contoh :
public class Statement_If_Else {
public static void main (String args[]) {
int targetnilai=60;
String hadiah=”";
int nilaianda=50;
if (nilaianda > targetnilai){
hadiah = “ponsel”;
} else{
hadiah = “radio”;
System.out.println(“Jenis hadiah :”+hadiah);
}
}
}

3.      Switch
Cara  lain  untuk  membuat  cabang  adalah  dengan  menggunakan  kata  kunci  switch. Switch  mengkonstruksikan cabang untuk beberapa kondisi dari nilai. Struktur switch-case mempunya fungsi yang sama dengan struktur if-else. Hanya saja kalau di dalam struktur if-else hanya disediakan dua pilihan (berdasarkan kondisi ligika true/false), sedangkan dalam struktru switch-case dimungkinkan memilih salah satu di antara banyak pilihan. Bentuk umum (atau tata cara penulisan sintaks) struktur switch case adalah sebagai berikut:
switch (variable){
case kondisi_1 :
statement_1 ;
break ;

case kondisi_2 :
statement_2 ;
break ;

case kondisi_3 :
statement_3 ;
break ;

default;
statement_default;
}

Contoh :
public class Switch01 {
public static void main (String args[]) {
int a;
a=5;
switch(a) {
case 0 : System.out.println("Nol");break;
case 1 : System.out.println("Satu");break;
case 2 : System.out.println("Dua");break;
case 3 : System.out.println("Tiga");break;
case 4 : System.out.println("Empat");break;
case 5 : System.out.println("Lima");break;
case 6 : System.out.println("Enam");break;
case 7 : System.out.println("Tujuh");break;
case 8 : System.out.println("Delapan");break;
case 9 : System.out.println("Sembilan");break;
default: System.out.println("Bukan Karakter Digit");
}
}
}
Pencabangan switch mengevaluasi dan membandingkan Expression untuk semua konstanta case dan mengendalikan eksekusi program ke pernyataan case yang cocok. Jika tidak ada konstanta case yang cocok dengan ekspresi maka program akan menuju ke DefaultStatementList.


Mafia


Mafia, juga dirujuk sebagai La Cosa Nostra (bahasa Italia: Hal Kami), adalah panggilan kolektif untuk beberapa organisasi rahasia di Sisilia dan Amerika Serikat. Mafia awalnya merupakan nama sebuah konfederasi yang orang-orang di Sisilia masuki pada Abad Pertengahan untuk tujuan perlindungan dan penegakan hukum sendiri (main hakim). Konfederasi ini kemudian mulai melakukan kejahatan terorganisir.
Anggota Mafia disebut "mafioso", yang berarti "pria terhormat".
Mafia melebarkan sayap ke Amerika Serikat melalui imigrasi pada abad ke-20.
Kekuatan Mafia mencapai puncaknya di AS pada pertengahan abad ke-20, hingga rentetan penyelidikan FBI pada tahun 1970-an dan 1980-an agak mengurangi pengaruh mereka. Meski kejatuhannya tersebut, Mafia dan reputasinya telah tertanam di budaya populer Amerika, difilmkan di televisi dan bahkan iklan-iklan.
Istilah "mafia" kini telah melebar hingga dapat merujuk kepada kelompok besar apapun yang melakukan kejahatan terorganisir (bandingkan dengan Mafia Rusia, Yakuza di Jepang), dan Triad diChina.
La Cosa Nostra adalah nama yang digunakan anggota Mafia di Amerika Serikat untuk merujuk kepada organisasi tersebut.
Istilah ini pertama kali digunakan oleh Salvatore Maranzano pada tahun 1931 ketika dia menamakan dirinya Capo di tutti capi, atau "bos segala bos" dari kejahatan terorganisir yang dilakukan orang Italia-Amerika, setelah kemenangannya ats kelompok geng yang tunduk kepada Joe Masseria dalam Perang Castellammarese.
Terjemahan tepat kata tersebut masih belum dapat dipastikan, namun kira-kira berarti Hal Kami atau Urusan Kami.
Singkatan taho kini digunakan pihak FBI untuk menggantikan kata "Mafia" dalam dokumen-dokumen resmi setelah diprotes kelompok Hak Sipil Italia-Amerika.

sumber: http://id.wikipedia.org/wiki/Bahasa_Italia 

FUNGSI KOMUNIKASI MASSA ATAU MEDIA MASSA



Ø Fungsi Pengawasan
Ø Fungsi Social Learning
Ø Fungsi Penyampaian Informasi
Ø Fungsi Transformasi Budaya
Ø Fungsi hiburan

1. Fungsi Pengawasan
Salah satu fungsi komunikasi massa adalah sebagai pengawasan, Karena dengan pengawasan ini akan lebih mempermudah pengontrolan kegiatan-kegiatan sosial yang terjadi didalam masyarakat.

2. Fungsi Social Learning
Melalui media massa ini, diharapkan dapat membantu masyarakat dalam berbagai hal yang bersifat positif, meski tidak bisa dipungkiri ada juga beberapa hal yang bernilai negative dalam media massa. Namun pada dasarnya dengan media massa, masyarakat dapat mendapat pencerahan dari media tersebut.

3. Fungsi Pencerahan Informasi
Dengan adanya media massa, masyarakat akan lebih mudah mencari dan mendapat informasi. Karena fungsi utama dari media massa adalah untuk menyampaikan informasi kepada masyarakat yang menyangkut berbagai hal, baik dalam ekonomi, politik, agama, hukum dan budaya.

4. Fungsi Transformasi Budaya
Dalam keterkaitannya dengan budaya, media massa memiliki pengaruh yang sangat besar bagi masyarakat. Karena dari media massa, masyarakat dapat belajar berbagai macam hal. Misal dalam hal kebudayaan, dari siaran atau tayangan televisi, masyarakat dapat belajar tentang budaya yang bersifat tradisional dan modern,
yang secara tidak langsung akan mempengaruhi perilaku masyarakat tersebut.

5. Fungsi Hiburan
Fungsi lain dari media massa adalah sebagai hiburan, karena dalam media massa masyarakat akan mendapat hal-hal yang bersifat untuk menghibur, baik dari surat kabar, radio, tayangan televise dan lain-lain. Misalnya dalam tayangan televisi, masyarakat dapat menikmati hiburan musik, film, sinetron, dan olahraga. Sehingga dengan adanya tayangan-tayangan tersebut masyarakat akan terhibur.

Soal Java


   1.      Jelaskan apa yang dimaksud Java Desktop dan Java Mobile !
Jawab:
Java Desktop : Aplikasi yang membuat dan menjalankan perangkat lunak pada komputer                        atau pada lingkup jaringan.
Java Mobile   : Aplikasi yang digunakan untuk memberikan pelayanan akses informasi                             dengan menggunakan sarana handphone sebagai mobile device.
   2.      Apa yang dimaksud dengan class dan object dan berikan contoh dalam bentuk program sederhana?
Jawab:
Class : Sebuah blue print, atau prototipe, yang mendefiniskan variabel-variabel dan                     metode-metode yang umum untuk semua objek dari njenis tertentu.
Object: Merupakan sekumpulan software yang terdiri dari variabel dan method-method              terkait.
Contoh program Class dan Objek:
class buku
{
String pengarang;
String judul;
void isi (String isi1,String isi2)
{
judul = isi1;
pengarang = isi2;
}
void cetak()
{
if (judul==null&&pengarang==null)return;
System.out.println("judul=" +judul +"pengarang=" +pengarang);
}
}
class karangan
{
public static void main(String[]args)
{
buku a,b,c,d;
a=b=c=d=new buku();
a.isi ("pengarang pascal", "yogiyanto");
a.cetak();
b.isi ("pengarang java", "asep hermanto");
b.cetak();
c.isi ("pengarang web", "johan prasutyo");
c.cetak();
d.isi ("pengarang c++", "adbul kadil");
}
}
Output:
judul=pengarang pascalpengarang=yogiyanto
judul=pengarang javapengarang=asep hermanto
judul=pengarang webpengarang=johan prasutyo

   3.      Dalam perintah java memeliki 2 Decision – making statement yaitu if-else dan switch, jelaskan fungsi dari kedua statement tersebut dan berikan contoh program sederhananya !
Jawab:
Fungsi if-else: Digunakan ketika kita akan mengeksekusi sebuah statement jika kondisinya true maka akan mencetak nilai benar, dan statement yang lain jika berkondisi false maka akan mencetak nilai salah.
Contoh program if-else:
import java.util.Scanner; // Import java untuk fungsi meminta inputan user
class Main
{
   public static void main(String[] args)
  {
    Scanner in = new Scanner (System.in); // kita masukan fungsi abstract Scanner kedalam sebuah object yang bernama in
    int point;
    System.out.print("Masukan Jumlah Point =");
    point = in.nextInt(); // untuk meminta inputan berupa angka bisa menggunakan in.nextInt();
    System.out.println("-----------------------");
    System.out.println("Nama : Driyanto Saputro");
    System.out.println("point : " + point);
    if (point==3)
       System.out.println("Medali Emas");
    else if (point==2)
       System.out.println("Medali Perak");
    else if (point==1)
       System.out.println("Medali Perunggu");
    else
       System.out.println("Tidak mendapat Medali");
       System.out.println("-----------------------");
  }
}
Output:
 Masukan Jumlah Point =2
-----------------------
Nama : Driyanto Saputro
point : 2
Medali Perak
-----------------------

Fungsi switch: Digunakan jika memiliki lebih dari 2 pernyataan artinya jika terdapat 3 pernyataan atau lebih atau Mengkonstruksi cabang untuk beberapa kondisi dari nilai.
Contoh program switch:
import java.util.Scanner;
class Main
{
  public static void main(String[] args)
 {
   Scanner masuk = new Scanner (System.in);
   int point;
   System.out.print("Masukan Jumlah Point =");
   point = masuk.nextInt();
   System.out.println("-----------------------");
   System.out.println("Nama : Driyanto Saputro");
   System.out.println("point : " + point);
   switch (point)
   {
     case 3  :
         System.out.println("Medali Emas");
         break;
     case 2  :
         System.out.println("Medali Perak");
         break;
     case 1:
         System.out.println("Medali Perunggu");
         break;
         default:
         System.out.println("Tidak mendapat Medali");
   }
         System.out.println("-----------------------");
  }
}
Output:
 Masukan Jumlah Point =1
-----------------------
Nama : Driyanto Saputro
point : 1
Medali Perunggu
-----------------------
   4.      Analisalah program dibawah ini dan berikan penjelasan arti pada setiap tanda “ ? “ kemudian tuliskan hasil output dari program ini :

class ArrayCopyDemo { // ? <<< berikan penjelasannya

public static void main(String[] args) { // ?

char[] copyFrom = { 'd', 'e', 'i', 'n', 't', 'e', 'r', 'm', 'i', 'l', 'a', 'n', 'o' }; // ?

char[] copyTo = new char[7]; // ?

System.arraycopy(copyFrom, 2, copyTo, 0, 5); // ?

System.out.println(new String(copyTo)); // ?

}
}

Output program ini adalah ......
Jawab:
1.      Class ArrayCopyDemo { //  Sebuah nama class ArrayCoyDemo
2.      Public static void main(String[] args) { // Awal program dijalankan
3.      Char[] copyFrom = { 'd', 'e', 'i', 'n', 't', 'e', 'r', 'm', 'i', 'l', 'a', 'n', 'o' }; // Sebuah Array bertipe Char yang bernama copyFrom
4.      Char[] copyTo = new char[7]; // Membuat sebuah wadah array yang bertipe char yang char itu 7 index
5.      System.arraycopy(copyFrom, 2, copyTo, 0, 5); // Mengcopykan berasal dari arrayCopyDemo, dimulai dari index kedua(2), dan ditempatkan diwadah copyTo dari index 0 sampai index 5.
6.      System.out.println(new String(copyTo)); // Menampilkan wadah array yang bernama copyTo.

Output: interm

   5.      Berikan Penjelasan kesimpulan tentang objek materi presentasi perkelompok anda !

Jawab:

Saya dari kelompok 1 yang menjelaskan tentang struktur control alur program yang didalamnya menjelaskan mengenai perulangan, percabangan, conditioinal, seleksi, lompatan dan didalam lompatan itu terdiri dari break dan continue.

Struktur control digunakan untuk mengatur susunan proses eksekusi statement-statement didalam program.  Perulangan dalam java ada for, while dan do-while. Lalu distruktur control jg ada percabangan dalam java. Java sebagai bahasa pemrograman mempunyai beberapa jenis percabangan yaitu:
-          if
-          if-else
-          switch
Java mendukung pernyataan jump terkendali (controller jump) yaitu:
-          Break
-          Continue 

Kecerdasan buatan (Artificial Intelligence)


                Kecerdasan Buatan (bahasa Inggris: Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika.
                Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka, bermain sepak bola.
Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin.
                Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game.
                'Kecerdasan buatan' ini bukan hanya ingin mengerti apa itu sistem kecerdasan, tapi juga mengkonstruksinya. Tidak ada definisi yang memuaskan untuk 'kecerdasan':
1. kecerdasan: kemampuan untuk memperoleh pengetahuan dan menggunakannya, atau
2. kecerdasan yaitu apa yang diukur oleh sebuah 'Test Kecerdasan'

Rabu, 30 Januari 2013

SEJARAH ORACLE


Setelah membahas secara ringkas konsep basis data relational, saya akan menjelaskan tentang sejarah Oracle tersebut yaitu sistem basis data Oracle. Oracle Corporation merupakan salah satu perusahaan perangkat lunak terbesar didunia dan merupakan penyedia utama dari sistem basis data (DBMS – Database Management System). Program basis data Oracle 10g memungkinkan perusahaan-perusahaan besar dan pemerintah untuk mengelola, mengakses, dan menyimpan sejumlah informasi pada berbagai sistem komputer dari laporan penjualan perusahaan, penggajian, hingga daftar pelanggan pada sistem pemesanan layanan penerbangan. Saat ini Oracle Corp. Juga membuat atau mengembangkan kakas (tool) lain untuk para pengembang perangkat lunak (software developer) disamping juga mengembangkan berbagai perangkat lunak untuk mengelola informasi di komputer server. Perusahaan Oracle Corperation ini berbasis di Redwood Shores, California, Amerika Serikat.
           
Lawrence J. Ellison, Robert N. Miner, dan Edward Oates mendirikan system development laboratories pada tahun 1977 untuk mengembangkan perangkat lunak basis data untuk komputer “mainframe”. Ellison bekerja pada perusahaan ini untuk mengembangkan komputer mainframe pertama yang kompatibel dengan komputer “International Business Machines Corparation (IBM)”. Diperusahaan baru ini Ellison sudah lama memperhatikan bahwa IBM telah telah mengembangkan program basis data bertipe relational yang bernama DB2. System Development Laboratories menantang pasar program basis data relasional IBM pada tahun 1979 dengan mengembangkan sistem basis data relasional yang mereka namakan Oracle RDBMS (Relational Database Management System) Produk sistem basis data relasional komersial pertama yang menggunakan SQL. Saat ini SQL telah telah menjadi standar untuk semua produk basis data bertipe relasional.
             
Pada tahun 1982, System Development Laboratories mengubah namanya menjadi Oracle Corporation, setelah sukses dengan produk basis data yang juga bernama Oracle. Oracle Corporation kemudian menjadi pemimpin industri dalam hal produk perangkat lunak basis data, dan memenangkan berbagai kontrak pengembangan aplikasi basis data diberbagai perusahaan besar diAmerika Serikat dan diseluruh dunia. Selama tahun 1980-an, penjualan oracle berlipat dua setiap tahun  bertumbuh dari $2,5 juta pada tahun 1982 menjadi $916 pada tahun 1990. Pada tahun 1991, perusahaan ini mengalami kerugian untuk yang pertama kali dan kemudian melakukan reorganisasi sistem basis datanya. Pada tahun 1992, perusahaan ini kembali meraup untung.
            
Oracle Corporation selanjutnya mulai bergerak untuk mengembangkan perangkat keras dan perangkat lunak untuk menangani basis data video, audio, dan teks berukuran besar, untuk aplikasi-aplikasi yang berjalan lewat jaringan internet.

Sejarah RDBMS


Edgar F. Codd memperkenalkan istilah ini pada makalah seminarnya yang berjudul “A Relational Model of Data for Large Shared Data Banks”. Salah satu definisi yang cukup dikenal secara luas atas sebuah sistem basisdata relasional adalah 12 hukum Codd. Namun demikian, pada awal-awal implementasinya banyak model relasional yang tidak mengikuti seluruh elemen-elemen yang terdapat dalam hukum-hukum Codd tersebut yang menjadikan terminologinya berkembang untuk mendeskripsikan sebuah tipikal sistem basisdata yang lebih luas. Dalam cakupan yang minimum sistem tersebut memenuhi kriteria berikut:
-          menyajikan data pada pengguna dalam bentuk relasional (ditampilkan dalam bentuk tabular, sebagai koleksi dari tabel dimana setiap tabel beriisi sekumpulan baris dan kolom)
-          menyediakan operator relasioanl untuk memanipulasi data dalam bentuk tabular Sistem yang pertama kalinya yang secara relatif memenuhi implementasi atas sebuah model relasional adalah Pusat Studi Ilmiah IB, Inggris, di Peterlee; IS1 (1970-1972) dan implementasi lain yang mengikutinya PRTV (1973-1979).
Sistem yang pertama kalinya dijual secara komersil sebagai RDBMS adalah Multics Relational Data Srore pada tahun 1978. Yang lainnya adalah Berkeley Ingres QUEL dan IBM BS12.

Arsitektur RDBMS
                        Arsitektur RDBMS memiliki banyak karakteristik yang membedakan dari model penyimpanan data lainnya. Perbedaan yang paling penting adalah pemisahan segi fisik dari segi logika suatu data. Dalam RDBMS, seluruh data secara logika tersimpan di dalam tabel-tabel, yang merupakan kumpulan dari baris dan kolom. Sistem pencarian data di dalam RDBMS menggunakan index yang merupakan struktur data yang terpisah dari tabel dan menyimpan hanya nilai terstruktur dari kolom-kolom dan alamat fisiknya. Disamping itu dengan didukung oleh penggunaan index dapat mempercepat proses pencarian data di dalam database.
Faktor penting lainnya dari arsitektur RDBMS adalah integrity constraints. Dengan Integrity Constraints tabel-tabel dihubungkan dengan key. Key adalah beberapa kolom atau kombinasi kolom kolom yang secara unique mengidentifikasi setiap tabel. Sebuah key yang secara unique bagi suatu tabel dapat berdiri sebagai kolom yang tidak unique bagi tabel lainnya. Integrity Constraints adalah aturan "build in" yang secara otomatis berpengaruh dalam mempertahankan integritas database.
Aturan-aturan integritas ini biasa dibuat atau dirancang oleh seorang perancang database. Karakteristik penting lainnya dari arsitektur RDBMS adalah adanya "Optimizer". Optimizer adalah sebuah sistem pakar yang bertugas untuk menentukan cara pemrosesan yang paling efesien bagi suatu database.
Secara umum komponen DBMS Oracle terdiri atas memory, proses, dan file-file. Lebih jauh lagi, komponen-komponen tersebut dikelompokkan sebagai berikut:

1.      Instance
·         Memory yang disebut sebagai System Global Area (SGA), terdiri atas: Shared Pool(Libary Cache and Data Dictionary Cache), Database Buffer Cache, Redolog Buffer Cache, Java Pool, Large Pool.
·         Back ground process: PMON, SMON, DBWR, LGWR, CKPT, dan lain-lain
2.      Database
·         Datafile
·         Control file
·         Redo log file
3.      Komponen lain
·         Process   : Server Process, user process
·         Memory  : Program Global Area (PGA)
·         File          : Archived log, parameter, dan password file

Elemen-elemen RDBMS
Database:
Sekelompok tabel data berisi informasi yang berhubungan. Perhatikan bahwa suatu database dapat terdiri dari satu tabel saja.

Table:
Sekelompok record data, masing-masing informasi yang sejenis. Dalam contoh catalog perpustakaan, catalog itu sendiri merupakan tabel data.

Record :
Entri tunggal dalam tabel; entri tersebut terdiri dari sejumlah field data. Dalam catalog perpustakaan, record adalah salah satu baris entri tunggal.

Field :
Item (kolom) tertentu dari data dalam record. Dalam satu buku telepon, sekurang-kurangnya dapat dikenali empat field : nama keluarga, nama depan, alamat, dan nomor telepon.

Index :
Tipe tabel tertentu yang berisi nilai-nilai field kunci atau field (yang ditetapkan oleh pemakai) dan pinter ke lokasi record yang sebenarnya. Nilai-nilai dan pointer ini disimpan dalam urutan tertentu (sekali lagi ditetapkan oleh pemakai) dan mungkin digunakan untuk menyajikan data dalam urutan database.

Query :
Perintah SQL yang dirancang untuk memanggil kelompok record tertentu dari satu tabel atau lebih untuk melakukan operasi pada tabel. Meskipun perintah SQL dapat dijalankan langsung dari program, query sebagai enjin perintah dan menyimpannya dalam database itu sendiri - ini berguna, jika perintah-perintah SQL sering kita gunakan, sebagaimana perintah yang memanggil record untuk laporan bulanan tertentu. Bila query disimpan dalam database, biasanya kompilasi. Kompilasi query memperbaiki kinerja program kita kerana mesin database tidak harus menerjemahkan (atau menguraikan) perintah SQL.

Filter (Pembatas Kondisi) :
Filter sebenarnya bukan merupakan bagian dari database, namun ia digunakan bersama urutan indeks dan sort untuk menentukan data mana yang diproses atau ditampilkan. Filter adalah pembatas kondisi yang dikenakan pada data.
View :
View data terdiri atas jumlah record yang tampak (atau diproses) dan urutan penampilannya (atau pemrosesannya). View khususnya dikendalikan oleh filter dan indeks.