bahan2nya :
1 ounces vodka
1 ounces gin
1 ounces light rum
1 ounces tequila
1 ounces lemon juice
1 sendok teh gula ( tapi jangan gula yang kasar yach)
4 ounces cola
cara buatnya :
didalam "shaker"- an yang didalamnya terisi setengahnya ice
cube,kombinasikan/campurkan vodka,gin,rum,tequila,lemon juice, dan
gula.. lalu shake(kocok)..lalu saring kedalam mixing glass( gelas yang
didalamnya terdapat ice cube(es batu) yang terisi penuh... siap saji
deh.........
tapi ini minuman mahal aja.......hehehe..
Selasa, 27 November 2012
Jumat, 23 November 2012
LATIHAN CONSTRAINT
PERANCANGAN BASIS DATA
- CONSTRAINT
CONSTRAINT adalah
untuk membuat suatu aturan atau batasan yang berlaku pada tabel tersebut,
sehingga dapat mencegah kesalahan operasi DML yang dikenakan pada tabel
tersebut.
- Tipe-tipe COntraint
- Not null
Contraint
ini digunakan untuk mencegah adanya kolom yang bernilai null, salah satu efek
yang ditimpulkan nilai null adalah jika kolom tsb dikenakan hokum aritmatika
akan memberikan hasil yang tidak sesuai.
Contoh:
Tambahkan
kolom baru pada tabel barang;
Alter
table barang add ( harga number);
Select
kd_brg,nm_brg, harga,stok, (harga * stok) as jum_harga from barang
Kemudian ubah harga barang menjadi 10.000
Update
barang set harga=10000;
Select
kd_brg,nm_brg, harga,stok, (harga * stok) as jum_harga from barang
Dari
kasus query diatas akan memberikan kondisi nilai yang berbeda pada perhitungan
(stok * harga)
- Unique
Bertujuan
untuk membuat sebuah kolom atau kombinasi dari beberapa komlom pada sebuah
table nebjadi bersifat unik.
Contoh:
Ceate
table karyawan (
nip
varchar(5) constraint pk_kry primary key,
nama
varchar(50) not null,
kd_jabatan
varchar(1) unique,
nm_jabatan
varchar(20)
);
Kemudian
jalakan sql sbb:
Insert
into (nip,nama,kd_jabatan,nm_jabatan)
values
(‘09001’,’AGUS’,’A’,’KA. BAAK’)
Insert
into (nip,nama,kd_jabatan,nm_jabatan)
values
(‘09002’,’BUDI’,’A’,’KA. BAAK’)
pada
saat baris kedua dimasukan akan terjadi kesalahan sbb:
ERROR
at line 1:
ORA-00001:
unique constraint (.....SYS_C00879) violated
Kesalahan
tersebut muncul karena ada baris yang sapa pada kolom kd_jabatan “A”.
- Primary key -> Jelas
- Foreign key
Untuk
menetapkan suatu kolom atau kombinasi dari beberapa kolom menjadi foreign key
dari sebuah table. Foreign key seriang di sebut referential integrity
constraint. Kegunaanya untuk membentuk relasi dari satu table ke table
yang lainya.
Contoh:
Kolom
kd_dev yang ada pada table dkb merupakan foreign key.
Coba
untuk membuktikan integrity nya terbentuk atau tidak:
Tambah
record baru pada table dkb.
Insert
into dkb(no_dkb,bulan,tahun,kd_dev)values(‘T0005’,’01’,’2008’,’D5’);
Baris
tersebut dapat masuk.
Delete
from devisi where kd_del=’D1’;
Baris
tersebut dapat dihapus;
Kemudian
jalankan perintah sbb:
Alter
table dkb add constraint fk_dkb foreign key (kd_dev)
References
devisi(kd_dev);
Kemudian
jalankan lagi sql sbb:
Insert
into dkb(no_dkb,bulan,tahun,kd_dev)values(‘T0005’,’01’,’2008’,’D6’;
Baris
tersebut tidak dapat dimasukan, baca pesan kesalahan.
Delete
from devisi where kd_del=’D1’;
Baris
tersebut tidak dapat dihapus, baca pesan kesalahan.
- Check
Constraint
check berguna untuk membuat suatu kondisi yang harus dipenuhi setiap record
dalam table.
Kondisi
tersebut dapat berupa kodisi sbb:
. Kondisi
PERBANDINGAN
. Kondisi
RANGE
. Kondisi
NULL
. Kondisi
LIKE
. Kondisi
EXIST
- Kondisi PERBANDINGAN
Contoh:
Untuk
memasukan data nama devisi harus berawalan huruf besar dan diikuti huruf kecil.
Alter
table devisi add constraint chk_namadevisi
check
(nm_dev=initcape(nm_dev));
conba
insert data baru pada devisi
Insert into devisi(kd_dev,nm_dev)values(‘D5’,’kebersihan’);
Akan terjadi error message, baca pesan error nya.
- Kondisi RANGE
Contoh:
Alter
table barang constraint chk_stok check(stok between 0 and 999);
Insert into barang(kd_brg,nm_brg,satuan,stok)
values(‘B0003’,’KACANG’,’Kg’,1000);
Akan terjadi error message, baca pesan error nya.
--------selamat
mencoba--------
LATIHAN SQL
PERANCANGAN BASIS DATA
- SELECT
- Menampilkan sebagian atau seluruh isi dari suatu tabel
- Menampilkan kombinasi isi dari beberapa tabel
Bentuk
umum perintah SELECT
SELECT [DISTINCT] field(s)
FROM table(s)
[WHERE predicate]
[GROUP BY field(s) [HAVING predicate]]
[ORDER BY field(s)];
Contoh:
Tampilkan
kode barang yang ada di table detildkb
Select kd_brg from detildkb
Untuk
menghilangkan kemungkinan duplikasi pada hasil, maka query diatas menjadi:
Select distinct kd_brg from detildkb
Tampilkan
detil informasi mengenai seluruh barang
select
* from barang;
select
dengan kondisi
Tampilkan
nama-nama barang untuk barang yang stoknya 0 (nol)
Select
nm_brg from barang
Where
stok=0;
select
dengan pengurutab
Tampilkan
nama-nama barang untuk barang yang stoknya 0 (nol), dan diurutkan menurut Status
nm_brg from barang
Where
stok=0
Order
by nm_brg desc;
Query
dengan melibatkan lebih dari satu tabel (relasi)
Simple Equijoin
Tampilkan
semua kombinasi dkb dan devisi, untuk devisi yang melakukan permintaan barang.
Select
dkb.*, devisi.* from dkb, devisi
Where
dkb.kd_dev = dkb.kd_dev;
Join Query dengan Kondisi Majemuk
Tampilkan
semua kombinasi dkb dan devisi, untuk devisi yang melakukan permintaan barang.
namun tampikan yang transaksinya yang pada bulan 02 dan tahun 2008
Select
dkb.*, devisi.* from dkb, devisi
Where
dkb.kd_dev = dkb.kd_dev and bulan=’02’ and tahun=’2008’;
Join antara tiga tabel
Tampilkan
kd_dev,nm_dev,no_dkb,bulan, tahun, kd_brg, qty
SELECT
devisi.kd_dev, devisi.nm_dev,dkb.no_dkb, dkb.bulan, dkb.tahun,
detildkb.kd_brg,
detildkb.qty
from
devisi, dkb, detildkb
where
devisi.kd_dev=dkb.kd_dev and dkb.no_dkb=detildkb.no_dkb;
- COUNT
Banyaknya
nilai-nilai pada satu kolom.
Contoh:
Tampilkan banyaknya devisi yang ada
select
count (*) from devisi;
Tampilkan banyaknya barang yang stoknya=0
Select
count(*) from barang where stok=0;
- SUM
Jumlah nilai dari satu kolom
Contoh:
Tampilkan jumlah kuantitas pengiriman barang B0001
Select sum(qty) from detildkb
Where kd_brg=’B0001’;
Tampilkan kode barang dan jumlah permintaanya untuk setiap kode barangmya.
Select kd_brg,sum(qty)
from detildkb
group by kd_brg;
Tampilkan
kode barang, nama barang dan jumlah
permintaanya untuk setiap kode barangmya.
Select
detildkb.kd_brg,barang.nm_brg,sum(detildkb.qty)
from detildkb, barang
where detildkb.kd_brg=barang.kd_brg
group by detildkb.kd_brg,barang.nm_brg;
- UPDATE
- Mengubah isi satu atau beberapa atribut dari suatu tabel
Mengupdate
nama barang menjadi “JAGUNG SUPER” untuk kode barang B0001
Update
barang set nm_brg=’JAGUNG SUPER’ where kd_brg=’B0001’
Mengupdate
nama barang menjadi “KACANG SUPER” dan stok menjadi 10 untuk kode barang B0001
Update
barang set nm_brg=’KACANG SUPER’, stok=10 where kd_brg=’B0003’
- DELETE
- Menghapus sebagian atau seluruh isi dari suatu tabel
Menghapus
data devisi yang kode devisinya d2
Delete
from devisi where kd_dev=’D2’
--------selamat
mencoba--------
LATIHAN SQL
PERANCANGAN BASIS DATA
Jalankan setiap statement satu persatu!
Membuat tabel, tuliskan
perintah dibawah
ini:
Buat table devisi
Create table devisi
( kd_dev varchar(2) not null,
Nm_dev varchar(50),
constraint pk_devisi primary key(kd_dev)
);
Buat table barang
Create table barang
( kd_brg varchar(5) not null,
Nm_brg
varchar(50),
Satuan
varchar(10),
Stok
number,
constraint pk_barang primary key(kd_brg)
);
Buat table DKB
Create table dkb
( no_dkb varchar(5) not null,
bulan varchar(2),
tahun varchar(4),
kd_dev varchar(2), ,
constraint pk_dkb primary key(no_dkb)
);
Buat table detildkb
Create table detildkb
( no_dkb varchar(5) not null,
Kd_brg
varchar(5) not null,
qty number,
kondisi
varchar(1),
pakai
varchar(1),
keterangan varchar(50),
constraint pk_detildkb primary key(no_dkb,kd_brg)
);
Isikan data ke setiap table,
contoh:
Insert into devisi(kd_dev,nm_dev)values(‘D1’,’KEUANGAN’);
Insert into devisi(kd_dev,nm_dev)values(‘D2’,’KEPEGAWAIAN’);
Insert into barang(kd_brg,nm_brg,satuan,stok)values(‘B0001’,’JAGUNG’,’Kg’,0);
Insert into barang(kd_brg,nm_brg,satuan,stok)values(‘B0002’,’UBI’,’Kg’,0);
Insert into barang(kd_brg,nm_brg,satuan,stok)values(‘B0003’,’KACANG’,’Kg’,0);
Insert into dkb(no_dkb,bulan,tahun,kd_dev)values(‘T0001’,’01’,’2008’,’D1’);
Insert into detildkb(no_dkb,kd_brg,qty,kondisi,pakai,keterangan)
values(‘T0001’,’B0001’,10,’2’,’1’,’Segera’);
Insert into detildkb(no_dkb,kd_brg,qty,kondisi,pakai,keterangan)
values(‘T0001’,’B0002’,2,’2’,’3’,’-’);
Insert into dkb(no_dkb,bulan,tahun,kd_dev)values(‘T0002’,’02’,’2008’,’D2’);
Insert into detildkb(no_dkb,kd_brg,qty,kondisi,pakai,keterangan)
values(‘T0002’,’B0003’,50,’2’,’1’,’Segera’);
Pencarian data yang telah diInsert:
Mencari data devisi
Select * from devisi; atau
select kd_dev,nm_dev from devisi;
Mencari data barang
Select * from barang;
Mencari data dkb pada bulan
01 dan tahun 2008
Select * from dkb where
bulan=’01’ and tahun=’2008’
Mencari data no_dkb,bulan,tahun,
dan nm_dev dari table dkb dan devisi
Select no_dkb,bulan,tahun,
nm_dev from dkb, devisi where dkb.kd_dev = devisi.kd_dev;
Langganan:
Postingan (Atom)