Minggu, 09 Mei 2010

Setting path JDK di Ubuntu

Penyetingan path JDK di linux Sebenarnya ini mungkin repost maksud saya menulis ini adalah supaya tidak capek-capek lagi cari filenya di komputer saya  :P . Karena User yang senang dengan Install ulang dan selalu ingin mencoba Sesuatu yg baru. Ini sudah dicoba dan jalan dengan baik, tinggal sesuaikan saja dengan kondisi di komputer kita.

  • Yang Pertama-tama *Instal JDK*-nya terlebih dulu. JDK bisa didownload di situs resmi Java Sun. Jangan lupa untuk memilih jenis platform untuk Linux.

  • Setelah di download,Copykan JDK dari folder di mana JDK di download ke /opt.

  • Misalnya  hasil downloadtan di home maka :



sudo cp /home/sa3o/jdk-6u20-linux-i586.bin /opt/


  • Masuk ke folder /opt. Kemudia Instal JDK tersebut dengan perintah  ./[nama file jdk-nya]

  • Kemudian setting PATH-nya. Masuk ke Terminal



sudo gedit /etc/profile

Paste-kan ini di akhir file (di sesuaikan dengan kondisi penginstalan di opt tadi):
JAVA_HOME=/opt/jdk1.6.0_20

export JAVA_HOME

PATH=$JAVA_HOME/bin:$PATH

export PATH


  • Save dan Keluar.



  • Masih di Terminal  ketikan


sudo gedit /etc/bash.bashrc

Paste-kan script tadi di akhir file ini juga. Setelah selesai kemudian restart komputer dan masuk ke terminal untuk memastikan apakah penyettingan  sudah benar dan untuk memastikan apakah JDK sudah berjalan benar maka ketikan javac di terminal.



Sumber

http://thom-sharing.blogspot.com/

Selasa, 04 Mei 2010

Operasi - Operasi Dalam sistem Basis Data yg ekuivalen dengan perintah SQL

Kembali ingin mendokumentasikan tugas kuliah. :D

Saat mempelajari kuliah Sistem basis data saya mendapatkan tugas, cari perintah yg ekuivalen dengan perintah in,some,all,exists dan beberapa operasi himpunan seperti union, set intersection,set difference. ini memang bukan perintah yg umum seperti membuat tabel (create table nama_table), menghapus tabel (drop table nama_table).

berkat bantuan dari teman akhirnya tugas ini selesai,saya belum tahu apakah tulisan di bawah ini benar atau salah karena saya dan teman-teman belum sempat membahas tugas kuliah ini. dan jika ada kesalahan mohon di koreksi donk :D.

Perintah In

Fungsi lain yang mengikuti where adalah in dan not in. Fungsi in adalah untuk memberikan beberapa batasan data. Penggunaan in atau not in yaitu untuk melakukan filtering terhadap record yang dipilih. Jika data pada suatu kolom sesuai dengan daftar in atau not in maka record yang mengandung data tersebut ditampilkan.

Misalkan :


Tabel detail_transaksi (Idtransaksi,tgltransaksi, idbarang,qty,hargasatuan,totalbayar)


Tabel transaksi (idpelanggan,namacabang,idtransaksi,tanggaltransaksi,totalbayar)


Perintah sql :

Select idtransaksi

From detail_transaksi

Where totalbayar in (15000, 20000)

Query di atas akan menampilkan idtransaksi dari tabel detail_transaksi yang

mempunyai totalbayar 15000 atau 20000

Select idpelanggan

From transaksi

Where namacabang in (“Gading”, “Merak”, “Sinar Mas”)

Query di atas akan menampilkan idpelanggan dari tabel transaksi yang


Melakukan transaksi di cabang Gading, Merak, atau Sinar Mas



Perintah Some dan All

Perintah Some dan All digunakan untuk membandingkan isi field dengan isi field table lain sebagai table pembanding. Bedanya Some membandingkan salah satu record pada table lookup sedangkan All membandingkan semua record pada table lookup.

Misalkan :

Tabel detail_transaksi (Idtransaksi,tgltransaksi, idbarang,qty,hargasatuan,totalbayar)

Perintah Sql :

select idtransaksi

from detail_transaksi

where totalbayar > some(select totalbayar

from detail_transaksi

where totalbayar >= 20000)

Penjelasan :

Perintah select totalbayar

from detail_transaksi

where totalbayar >= 20000

menghasilkan record totalbayar dari detail transaksi yang bernilai lebih dari sama dengan 20000. Kemudian perintah > some di dalam parent query berfungsi

membandingkan nilai totalbayar dari detail transaksi. Jika nilai tersebut lebih besar sama dengan minimal satu record hasil dari subquery, maka nilai tersebut terpilih.

Perintah Sql :

select idtransaksi

from detail_transaksi

where totalbayar < all (select totalbayar

from detail_transaksi

where totalbayar >= 20000)

Penjelasan :

Perbedaan antara some dan all dapat dilihat dengan membandingkan query

sebelumnya dengan query di atas. Jika some, nilai akan bernilai benar jika memenuhi syarat (dalam hal ini >) minimal satu record hasil subquery. Namun untuk all, akan bernilai benar jika syarat (dalam hal ini < ) terpenuhi pada semua record hasil subquery.

Perintah EXISTS Dan NOT EXISTS

Digunakan untuk melakukan pengecekan apakah hasil dari suatu ‘correlated nested query’ berisi tuple atau tidak.

EXISTS (Q) : Memberikan nilai return True, jika dalam hasil query Q minimal terdiri dari satu tuple

NOT EXISTS (Q) : Memberikan nilaai return TRUE, jika tak satupun tuple yang dihasilkan dalam hasil query Q

Misalkan :

Tabel Employee (Fname, Minit, Lname, SSN, BDate, Address, Sex, Salary, SuperSSN, DNo)

Tabel Dependent (ESSN, name, relation)

Tabel Departement(DeptNumber,DeptName,Noofemply,Totalsalary,MgrSSN)

Retrieve nama-nama employee yang tidak mempunyai dependent

SELECT Fname, Lname

FROM Employee

WHERE Not Exists ( Select *

From Dependent

Where SSN = ESSN

)

Dapatkan list nama-nama manager yang paling tidak mempunyai satu dependent



SELECT Fname, Lname

FROM Employee

WHERE Exists ( SELECT *

FROM Dependent

WHERE SSN = ESSN

)

And

Exists ( SELECT *

FROM Department

Where SSN = MgrSSN

)

OPERASI-OPERASI SET DALAM SQL :





  • UNION (Operasi Union)

  • INTERSECT (Operasi Intersection)

  • MINUS (Operasi Set Difference)


Relasi yang dihasilkan oleh ketiga operasi ini berupa set of tuple

Oleh karena ketiga operasi set diatas hanya boleh dikenakan terhadap relasi-relasi yang union_compatible, maka kedua relasi yang dikenakan operasi harus :

  • Mempunyai attribute yang sama

  • Mempunyai urutan attribute yang sama


Contoh operasi tersebut dalam Sql :


Misal ada tabel :


Deposit(branch-name,account-number,customer-name,balance)

Borrow(branch-name,loan-number,customer-name,amount)

UNION (Operasi Union)

(select distinct customer-name

from deposit

where branch-name = “Perryridge”)

union

(select distinct customer-name

from borrow

where branch-name = “Perryridge”)

Query diatas menampilkan semua nama customer-name yang mempunyai pinjaman, simpanan,atau keduanya yang ada di cabang Perryridge.

INTERSECT (Operasi Set Intersection)

(select distinct customer-name

from deposit

where branch-name = “Perryridge”)

intersect

(select distinct customer-name

from borrow

where branch-name = “Perryridge”)

Query diatas menampilkan nama-nama customer-name yang mempunyai pinjaman dan simpanan yang ada di cabang Perryridge.

MINUS (Operasi Set Difference)

(select distinct customer-name

from deposit

where branch-name = “Perryridge”)

minus

(select distinct customer-name

from borrow

where branch-name = “Perryridge”)

Query diatas menampilkan nama-nama customer-name dari cabang Perryridge yang hanya mempunyai simpanan saja.