Senin, 05 Maret 2012

TUGAS INNER JOIN, CROSS JOIN & BETWEEN

Tiga table yang akan kita gunakan dari database tersebut adalah ms_cabang, ms_kota dan ms_propinsi dengan relasi terlihat seperti pada gambar berikut.

INNER JOIN
INNER JOIN adalah tipe join yang akan kita bahas pertama. Tipe join ini akan
mengambil semua row dari table asal dan table tujuan dengan kondisi nilai key
yang terkait saja - jika ada, dan jika tidak maka row tersebut tidak akan muncul.
Kalau tidak terdapat kondisi key terkait antar table, maka semua row dari kedua table dikombinasikan.
Syntax dari INNER JOIN adalah sebagai berikut :
table_reference [INNER] JOIN table_factor [join_condition]
Terlihat bahwa keyword INNER boleh digunakan secara eksplisit atau tidak. Jika tidak
digunakan maka konstruksi JOIN tanpa keyword lain dianggap sebagai INNER JOIN.
INNER JOIN Antar Table dengan Kondisi ("ms_cabang" dan "ms_kota" dengan key "kode_kota")
SELECT * FROM ms_cabang INNER JOIN ms_kota ON ms_cabang.kode_kota = ms_kota.kode_kota
Hasil terlihat seperti gambar berikut ini. Disini table sumber adalah ms_cabang
(left) mencari referensi row lain dari table ms_kota (right) dengan kondisi nilai kode_kota diantara kedua table tersebut sama. Kondisi ini menggunakan keyword ON. Dengan panduan gambar, kita lihat bahwa tiap row dari ms_cabang akan dicari padanan row-nya di ms_kota :
untuk row pertama kita memiliki kode_kota dengan nilai "KOTA-003", ini akan dicari referensinya ke table ms_kota untuk nilai yang sama dan kita dapatkan row dengan nilai nama_kota "Lhokseumawe" adalah padanannya.
untuk row kedua kita memiliki kode_kota dengan nilai "KOTA-083", ini akan dicari referensinya ke table ms_kota untuk nilai yang sama dan kita dapatkan row dengan nilai nama_kota "Bau-bau" adalah padanannya.
demikian seterusnya.

CROSS JOIN
CROSS JOIN identik dengan INNER JOIN pada MySQL 5.0. Pembahasannya sama dengan INNER JOIN sehingga tidak diulangi lagi disini.
Contoh Penggunaan :
SELECT ms_cabang.nama_cabang,
ms_kota.nama_kota,
ms_propinsi.nama_propinsi
FROM
ms_cabang
CROSS JOIN
ms_kota ON ms_cabang.kode_kota = ms_kota.kode_kota
CROSS JOIN
ms_propinsi ON ms_kota.kode_propinsi = ms_propinsi.kode_propinsi
sumber : http://mysql.phi-integration.com/sql/tipe-tipe-join-pada-mysql-5
BETWEEN
Dalam pembuatan aplikasi database pemilihan data tertentu tidak dapat terelakkan.
Misalnya saja bagaimana kita menyediakan data orang-orang yang tinggal di beberapa kota terntentu bisa menggunakan operator IN
Jika akan memberikan laporan harian, mingguan, bulanan atau tahunan bisa menggunakan operator BETWEEN
Anggap saja kita mempunyai data Mahasiswa dengan beberapa record
script sql untuk menampilkan semuanya adalah:
SELECT * FROM Mahasiswa
hasilnya seperti gambar di bawah ini:

Pernyataan SQL untuk memilih beberapa data adalah seperti dibawah ini:
SELECT * FROM Mahasiwa WHERE NIM IN (2010111,2010114)
Artinya kita memilih mahasiswa dengan NIM 2010111 dan 2010114 hasilnya adalah seperti gambar di bawah ini:

Anda juga dapat memilih beberapa data dalam range atau rentang tertentu misal
datanya dengan NIM 2010112 s/d 2010114.
Pernyataan SQL nya adalah sbb:
select * from mahasiswa where nim between 2010112 and 2010114
Lihat gambar di bawah ini untuk melihat hasilnya:|

sumber : http://www.xbasicpro.com/training/mssql/mssql_in_between.aspx

Selasa, 21 Februari 2012

DCL di SQL

Kemarin malam Dapet tugas: Apa itu DCL..? Conton DCL ? dan Script DCL seperti apa? Baru dapet Sedikit...huft ,
Data Control Language (DCL)
Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server databasenya. Perintah DCL, di antaranya:
* GRANT : Perintah ini digunakan untuk memberikan hak/ijin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE), dan hak khusus berkenaan dengan sistem databasenya.
SINTAKS : GRANT privileges ON tbname TO user
CONTOH : grant select, update, insert, delete on perpustakaan.buku to
'jim'@'localhost';
* REVOKE : Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk
menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.
SINTAKS : REVOKE privileges ON tbname FROM user
CONTOH : revoke select, update, insert, delete on perpustakaan.buku from
'jim'@'localhost';
Contoh Script DI SQLnya :
Membuat query dalam SQL
create database coba
create table mhs(
nrp char(10) not null,
nama varchar(25) not null,
kelas int(3) not null,
mata_kuliah char(7) not null,
nilai int(4) not null,
constraint pk_mahasiswa primary key (nrp) )
INSERT INTO `coba`.`mhs` (`nrp`, `nama`, `kelas`, `mata_kuliah`, `nilai`) VALUES (”, ”, ”, ”, ”);
SELECT * FROM `mhs` WHERE `nama`=’ ‘
DELETE FROM `mhs` WHERE CONVERT(`mhs`.`nrp` USING utf8) = ”
ALTER TABLE `mhs`
DROP `nrp`,
DROP `nama`,
DROP `kelas`,
DROP `mata_kuliah`,
DROP `nilai`;
Okeh...Semoga berbanfaat...

Selasa, 27 Desember 2011

BELAJAR MENGHITUNG IP DENGAN CEPAT

Jika anda ingin menjadi seorang Network Administrator salah tiga syarat utamanya adalah memahami TCP/IP tidak hanya secara Konsep tetapi juga Desain dan Implementasinya.
Dalam tutorial ini saya ingin membagi pengertian yang saya pahami dalam menghitung IP Adress secara cepat.

Kita mulai ... lebih cepat lebih baik...

Mungkin anda sudah sering men-setting jaringan dengan protokol TCP/IP dan menggunakan IP Address 192.168.0.1, 192.168.0.2, 192.168.0.3, ...dst dengan netmask (subnet) 255.255.255.0 . Namun pernahkah terpikir untuk menggunakan IP selain IP tersebut ? misalnya :

192.168.100.1 netmask 255.255.255.248 atau
192.168.50.16 netmask 255.255.255.240 ...???

Teori Singkat & Umum
Untuk mempelajari IP diperlukan pengetahuan tentang Logika dan Sitem Bilangan Biner. Tentang bagaimana cara mengkonversi bilangan Biner ke dalam bilangan Decimal atau menjadi BIlangan HexaDecimal, silahkan baca tutorial Sistem Bilangan Logika [Not Finished Yet] yang juga saya tulis dalam bentuk ringkasan. IP Address yang akan kita pelajari ini adalah IPv.4 yang berisi angka 32 bit binner yang terbagi dalam 4x8 bit.
Conto :

8 bit 8 bit 8 bit 8 bit
192.168.0.1 -> 1 1 0 0 0 0 0 0 . 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1
192 . 168 . 0 . 1

Hal yang perlu dipahami dalam penggunaan IP Address secara umum adalah sebagai berikut :
Kelas IP

IP Address di bagi menjadi 5 kelas yakni A, B, C, D dan E. Dasar pertimbangan pembagian kelas ini adalah untuk memudahkan pendistribusian pendaftaran IP Address.
# Kelas A

Kelas A ini diberikan untuk jaringan dengan jumlah host yang besar

Bit Pertama : 0
Net-ID : 8 bit
Host-ID : 24 bit
Range IP : 1.xxx.xxx.xxx - 126.xxx.xxx.xxx
Jumlah IP : 16.777.214

Note : 0 dan 127 dicadangkan, 0.0.0.0 dan 127.0.0.0 biasanya dipakai untuk localhost.
# Kelas B
Kelas A ini diberikan untuk jaringan dengan jumlah host yang besar

2 Bit Pertama : 10
Net-ID : 16 bit
Host-ID : 16 bit
Range IP : 128.xxx.xxx.xxx - 191.255.xxx.xxx
Jumlah IP : 65.532

# Kelas C

3 Bit Pertama : 110
Net-ID : 24 bit
Host-ID : 16 bit
Range IP : 192.xxx.xxx.xxx - 223.255.255.255
Jumlah IP : 254

# Kelas D

4 Bit Pertama : 1110
Byte Inisial : 224 - 247

Note : Kelas D ini digunakan untuk keperluan multicasting dan tidak mengenal adanya Net-ID dan Host-ID
# Kelas E

4 Bit Pertama : 1111
Byte Inisial : 248 - 255

Note : Kelas E ini digunakan untuk keperluan Eksperimental
-> Network ID (Net-ID)
Adalah IP address yang menunjukkan Nomor Jaringan (identitas segmen)
Conto :

1. Sebuah segmen dengan IP range 192.168.0.0 - 192.168.0.255 netmask 255.255.255.0 maka Net-ID nya adalah 192.168.0.0.
2. Sebuah jaringan dengan IP range 192.168.5.16 - 192.168.5.31/28 maka Net-ID nya adalah 192.168.5.16

Note : Net-ID adalah IP pertama dari sebuah segmen. Dalam implementasinya IP ini tidak dapat digunakan pada sebuah host.
-> IP Broadcast
Adalah IP address yang digunakan untuk broadcast. Dari conto di atas maka IP Broadcast nya adalah 192.168.0.255 .

Note : IP Broadcast adalah IP terakhir dari sebuah segmen (kebalikan dari Net-ID). Dalam implementasinya IP ini juga tidak dapat digunakan pada sebuah host.
-> Subnet Mask (Netmask)
# Adalah angka binner 32 bit yang digunakan untuk : membedakan Net-ID dan Host-ID
# menunjukkan letak suatu host, apakah berada di jaringan lokal atau jaringan luar

Kelas A : 11111111.00000000.00000000.00000000 = 255.0.0.0
Kelas B : 11111111.11111111.00000000.00000000 = 255.255.0.0
Kelas C : 11111111.11111111.11111111.00000000 = 255.255.255.0

Conto :
sebuah segmen dengan IP range 192.168.0.0 - 192.168.0.255 maka Netmask nya adalah : 255.255.255.0 .
-> Prefix
Adalah penulisan singkat dari sebuah Netmask. Dari conto juga maka prefix nya adalah 24 maka menuliskan prefix-nya 192.168.0.0/24
-> Jumlah IP yang tersedia
Adalah jumlah IP address yang tersedia dalam sebuah segmen (blok). Dari conto di atas maka Jumlah IP yang tersedia sebanyak 256 (192.168.0.0 - 192.168.0.255)

Note : Dalam implementasinya tidak semua IP yang tersedia dapat digunakan karena ada 2 IP yang akan digunakan sebagai Net-ID dan Broadcast..
-> Jumlah Host
Adalah jumlah dari IP address yang dapat dipakai dalam sebuah segmen. Dari conto di atas maka jumlah host-nya adalah 254 (192.168.0.1 - 192.168.0.254). IP 192.168.0.0 sebagai Net-ID dan 192.168.0.255 sebagai Broadcast-nya.

Note : Jumlah Host = Jumlah IP yg tersedia - 2
-> IP Public
Adalah IP address yang dapat dikenali di jaringan internet.
Conto :
202.95.144.4, 64.3.2.45, 4.2.2.1 dst

Note : IP Public akan kita dapatkan jika kita berlangganan Leased Line.
-> IP Private
Adalah IP address yang hanya dapat dikenali di jaringan local (LAN).
Conto :
192.168.1.1, 192.168.0.5, 192.168.10.200 dst

Note : IP Private dapat kita gunakan semau kita untuk membangun LAN tanpa harus berlangganan Internet seperti Leased Line.

Memulai Perhitungan
Perhatikan kombinasi angka dibawah ini :

Cara membaca :
Kombinasi angka tersebut adalah untuk netmask 255.255.255.0 yang apabila di konversi ke Bilangan Biner adalah 11111111.11111111.11111111.00000000. Kita ambil 8 bit terakhir yaitu .00000000.
Apabila pada kolom pertama di beri nilai '1' dan yg lainnya bernilai '0' ( .10000000 ) maka

1. Jumlah IP yang kita miliki (tersedia) sebanyak 128 nomor
2. Netmask yang harus dipakai adalah 255.255.255.128
3. Kita dapat menuliskan IP tersebut 192.168.0.0/25 dengan 25 sebagai nilai prefix-nya.
4. Jumlah segmen yang terbentuk sebanyak 2 yaitu

192.168.0.0 - 192.168.0.127 -> sesuai dgn point 1. IP yang tersedia sebanyak 128 buah tiap segmen
192.168.0.128 - 192.168.0.255

5. Jumlah IP yang dapat dipakai untuk host sebanyak 126 setelah dikurangi dengan Net-ID dan Broadcast .

Sekarang dapatkah Anda mencari seperti 5 point sebelumnya apabila 3 bit pertama di beri nilai '1' ?

Latihan

* Saya memiliki IP sebagai berikut :

A. 192.168.0.10/28
B. 192.168.0.15/netmask 255.255.255.240
C. 192.168.0.16/28
D. 192.168.0.20 netmask 255.255.255.240
E. 192.168.0.20/28
F. 192.168.0.9/30
G. 192.168.0.11/255.255.255.250

Pertanyaan :

1. Manakah IP yang dapat saling berhubungan (berada dalam segmen yang sama) ?
2. Berapakah netmask untuk IP A,C,E,F ?
3. Berapakah nilai prefix untuk IP B,D,G ?
4. Manakah IP yang tidak dapat digunakan dalam jaringan, dan apa sebabnya ?
5. Berapa range untuk masing-masing IP ?
6. Bagaimana cara menguji konektivitas masing-masing IP ?

Referensi :

1. TCP/IP Standart, Deain dan Implementas (Onno W. Purbo)
2. Google.com
3. Pengalaman ngeset IP.. :P

Senin, 26 Desember 2011

INSTAL LINUX LEWAT FLASHDISK

Kita tidak perlu mengeluarkan uang untuk membeli CD hanya untuk menginstal Linux Ubuntu 10.10, kita hanya memerlukan sebuah Flashdisk untuk menginstal Linux kita, jika anda belum mempunyai FlashDisk anda dapat pinjam ke teman yang mempunyai FD, nah jika anda sudah punya mari kita coba untuk menjadikan FD tersebuk booting Linux, tentu saja dengan sebuah software yaitu Universal USB Installer,

anda dapat mendownloadnya di
download

dan untuk cara menginstalnya silahkan anda klik disini cara menginstal ubuntu 10.10

jalankan aplikasi Universal USB Installer yang telah ter-download. untuk menjalankan aplikasi ini tidak diperlukan proses install, jadi langsung jalankan saja file hasil download tersebut.