Tampilkan postingan dengan label Database. Tampilkan semua postingan
Tampilkan postingan dengan label Database. Tampilkan semua postingan

Senin, 12 Desember 2011

Tugas Praktikum DBD Modul 7 (Fungsi dan PL/SQL)

Minggu yg lalu praktikum Desain Basis Data telah sampailah pada meteri tentang Fungsi dan PL/SQL. Pada postingan kali ini saya akan membahas sedikit tentang Fungsi dan PL/SQL beserta contoh pada SQLShellnya. Lebih jelasnya kita ikuti saja postingan dibawah ini. 
1. Membuat fungsi konversi untuk menghitung keliling persegi panjang
2. Menentukan alamat dosen tertentu menggunakan Fungsi


3. Membuat fungsi konversi nilai mahasiswa 
 
Hasil konversi nilai mahasiswa


4. Menentukan jabatan dosen menggunakan fungsi


5. Membuat test Trigger pada tabel Dosen
 
Membuat Trigger dan meng-insertkan dengan data 

Mohon dikoreksi ya :)

Laporan Praktikum DBD Modul 7 (Fungsi dan PL/SQL)

Minggu yg lalu saya menjalani praktikum tentang Fungsi dan PL/SQL. So... dalam postingan kali ini saya akan sedikit mengulas tentang materi minggu lalu yaitu mengenai Fungsi dan PL/SQL. Lebih jelasnya mari kita simak penjelasan dibawah ini :

1. Fungsi SQL adalah sebuah kumpulan query, biasanya query yang detail dan panjang yang dibungkus menjadi satu dan disimpan dalam database dan kemudian apabila diperlukan hanya tinggal mengaksesnya tanpa mengetikan query detail.

Ada beberapa konsep yang menarik dari fungsi antara lain:

• Bahasa yang dip akai dapat didefenisikan sendiri dengan tersedianya parameter LANGUAGE, tanpa harus mengkompilasi ulang PostgreSQL.

• Kita dapat membuat dua buah fungsi dengan nama yang sama namun parameter masukkannya yang berbeda, baik tipe data maupun jumlahnya.

Selain itu ada beberapa faktor yang perlu diperhatikan dalam membuat fungsi antara lain:

• Nama Fungsi
• Nomor dari fungsi argument
• Tipe data dari setiap argument
• Tipe dari hasil fungsi
• Fungsi action • Bahasa yang digunakan oleh fungsi action.

Contoh :
Fungsi konversi suhu

2. Fungsi PL/SQL  
PL/PGSQL merupakan bahasa yang lain untuk membuat sebuah fungsi, biasanya bahasa ini digunakan untuk menangani fungsi yang lebih kompleks. Pl/pgsql sudah terdapat dalam instalasi PostgreSQL, namun kita perlu mendaftarkannya pada masing-masing database yang akan menggunakannya. 

Contoh 1:

Contoh 2 :



Hasil dari konversi nilai :


Contoh 3 :

3. Triger

Trigger digunakan untuk menyisipkan sebuah fungsi pada saat suatu record di-INSERT, UPDATE dan DELETE. Trigger sangat ideal untuk mengecek atau memodifikasi sebuah data pada kolom sebelum dimasukkan ke dalam database, sehingga sebuah fungsi dapat dipanggil setiap saat secara otomatis ketika sebuah row akan dimodifikasi. Ciri khas dari fungsi yang diperuntukkan untuk trigger adalah menghasilkan output bertipe OPAQUE. Tipe opaque adalah sebuah tipe yang menginformasikan pada database bahwa fungsi tersebut tidak menghasilkan satu dari tipe data yang ditetapkan SQL dan tidak secara langsung dapat digunakan dalam statemen SQL. Language (bahasa) PL/PGSQL dapat digunakan untuk trigger procedure, fungsi untuk trigger ini memiliki beberapa variabel khusus yang terdeklarasi secara otomatis.
 
 Contoh membuat test trigger :

Membuat trigger :

 Test insert trigger :

Mungkin hanya sekilas penjelasan mengenai materi yg dipraktekkan dalam praktikum minggu yg lalu. Semoga bermanfaat :)

Tugas Praktikum DBD Modul 6 (Indeks)


Pada postingan ubik kali ini akan mengulas lagi tentang materi indeks yg kemarin tetapi menggunakan tabel yg berbeda. Ini merupakan tugas praktikum desain basis data modul 6. Berikut kejadiannya :
1.      Membuat indek pada tabel jadwal dengan menggunakan kolom nip dosen dan kode matakuliah.

2. Membuat kode matkul menjadi  unik pada tabel matkul dan inputkan 2 data  yang  sama.

3. Menampilkan coba pindahkan data  dari  tabel  jadwal,  dengan menampilkan nip dosen,namadosen,matkul,sks,ruang dan pukul ke tabel baru yang dinamai jadwalku.

4. Membuat penggunaan check pada tabel peserta .Kemudian masukkan beberapa data yang memenuhi syarat check dan yang tidak.

5. Menampilkan data mahasiswa dengan hilangkan karakter “h” di akhir data dan karakter “i” di awal kata pada kolom nama!

6. Memasukkan data  di tabel  peserta  dimana  pada  kolom  nama  sebelum inputkan karakter dahulukan dengan spasi dan di akhiri.munculkan seluruh data dan hilangkan spasi didepan maupun di belakang karakter.

Ya seperti itulah tugasnya... mohon di koreksi jika ada kesalahan :)

Minggu, 11 Desember 2011

Laporan Praktikum DBD Modul 6 (Indeks)

Pada postingan kali ini saya akan membahas mengenai INDEKS. Yaitu merupakan meteri yg dibahas pada praktikum desain basis data meinggu lalu. Ok... untuk lebih jelasnya qt ikuti postingan dibawah ini. Penjelasan mengnai indeks :


1. INDEKS
Indeks berguna dalam suatu pencarian nilai atau data dalam database. Dalam suatu kasus ketika mengakses sebuah tabel biasanya DBMS akan membaca seluruh tabel baris perbaris hingga selesai. Dengan adanya indeks buku maka kita cukup dengan membuka indeks, sehingga akan cepat dalam pencarian kata tersebut. PostgreSQL tidak bisa mem buat indeks dengan otomatis, sehingga user dapat membuat indeks tersebut untuk seringkali digunakan kolom, biasanya dalam clause WHERE. Berikut struktur SQL :

CREATE INDEX [nama index] ON [nama tabel] (nama kolom);

contoh pada SQLShell :

Sedangkan Unique index mirip dengan indeks tetapi lebih digunakan untuk mencegah duplikasi nilai yang terdapat dalam tabel. Jadi dengan adanya unique index berarti pembaca tidak dapat meng-insert nilai yang sama dalam sebuah tabel. Berikut struktur SQL nya :

CREATE UNIQUE INDEX [nama index] ON [nama tabel] (nama kolom);

contoh :


 contoh input :


2. KOLOM UNIK
Unique berfungsi untuk menjaga agar tidak terjadinya duplikasi nilai (kesamaan data) dalam sebuah kolom, hal ini dapat ditangani dengan membuat sebuah indeks unik atau fungsi unik sendiri pada kolom yang dimaksud. Unique ini sering digunakan dalam pembuatan primary key, karena dalam primary key tidak boleh terdapat dua atau lebih data yang salam dalam satu kolom. Berikut Struktur SQL saat pembuatan tabel baru :

CREATE TABLE [nama tabel] ([nama kolom] [tipe data] [unique]);

Contoh 1 :
Contoh 2 :

3. CLUSTER

Perintah CLUSTER digunakan untuk melakukan perubahan pada tabel berdasarkan informasi pada Indeks, sehingga sebelum melakukan cluster terlebih dulu harus membuat indeks. Ketika sebuah tabel di cluster, maka secara fisik akan diurutkan kembali berdasarkan informasi dari indeks. Proses cluster hanya one-time operation artinya tidak bisa secara otomatis berulang seperti indeks, jadi meskipun terjadi perubahan maka tidak secara otomatis akan di cluster.
Contoh 1 :



Contoh 2 :

 

4. CHECK
Check berfungsi untuk melakukan pembatasan nilai masukan dalam sebuah kolom, sebagai contoh misalkan kita ingin agar kolom gender yang terdiri dari satu karakter hanya memiliki dua pilihan karakter yaitu M (mail) atau F (Fimail) ini dapat kita seting dengan menggunakan CHECK. Dengan menggunakan CHECK maka sebuah kolom hanya bisa diisi dengan data yang memenuhi kriteria dalam CHECK. Contoh di SQLShellnya :
 

5. Penggunaan TRIM

Suatu ketika pasti akan memiliki data yang di dalamnya terdapat spasi kosong yang tidak diperlukan, misalnya spasi ganda. Jika ada masalah seperti ini, kita dapat memberikan spasi-spasi kosong yang tidak diperlukan menggunakan fungsi TRIM, RTRIM, dan LTRIM. Ketiga fungsi ini memiliki bentuk penggunaan sebagai berikut :
  • RTRIM : digunakan untuk membersihkan spasi kosong yang ada di bagian kanan (Right) String. 
Contoh :

  • LTRIM : digunakan untuk membersihkan spasi kosong yang ada di bagian kiri (Left) String. 
Contoh :

  • TRIM : digunakan untuk membersihkan spasi kosong yang ada di bagian kiri, kanan, maupun tengah String
Contoh :

  • LEADING : merupakan opsi untuk menghilangkan karakter terpilih yang ada di sebelah kiri. Parameter Leading diartikan sebagai sufik dari karakter yang ada.
Contoh :
Ya kurang lebih seperti itulah materi mengenai indeks yg disampaikan pada praktikum minggu yg lalu. Semoga ada manfaat dibalik semua itu hehehe.

Sabtu, 29 Oktober 2011

Tugas Praktikum DBD - Modul 4

Seperti halnya pada postingan saya diatas, kali ini saya masish membahas materi yang diatas tapi menggunakan tabel yang berbeda. Pada kali ini saya akan menggunakan beberapa tabel siakad yang telah saya buat sebelumnya. Langsung saja saya paparkan secara singkat lankah-langkahnya :

1. Menampilkan nama kolom berbeda dengan nama kolom aslinya.

2. Menampilkan biodata dosen yang berjenis kelamin laki-laki


3. Menampilkan nama dosen yang mempunyai jabatan “Staf Pengajar” dan jenis kelamin “Laki-laki”


4. Menampilkan data dosen dari yang punya id_dosen 3-5

5. Menampilkan nama dosen yang mempunyai nama awalan huruf “T”

6. Menampilkan data dosen yang namanya berakhiran huruf “I” dan pada urutan ke-3 terdapat huruf “T”

7.  Menampilkan data dosen yang nama berakhiran huruf  "N"

8. Menampilan data dosen yang namanya bukan berawalan huruf "T"

9. Menampilkan data sks dengan menggunakan struktur DISTINCT (menampilkan sks dengan tidak ada yang sama)

10. Menampilkan data dosen dengan kolom "L" menjadi "laki-laki" dan "P" menjadi "perempuan" dengan hasil outputnya terletak dikolom baru

11. Menampilkan data dengan fungsi UNION, EXCEPT dan INTERSECT

Untuk menampilkan data dengan struktur SQL diatas, saya membuat dua tabel, yaitu tabel hewan_ampibhi dan hewan_darat.

a. Menampilkan sebuah tabel dengan struktru SQL UNION

b. Menampilkan sebuah tabel menggunakan struktur SQL EXCEPT

c. Menampilkan sebuah tabel menggunakan  struktur SQL INTERSECT

Alhamdulillah yaa.... Akhirnya tugas praktikum IV pun jg telah usai :)




Jumat, 28 Oktober 2011

Laporan Praktikum DBD - Modul 4

Pada kesempatan kali ini saya akan membahas tentang apa yang telah saya peroleh dalam praktikum DESAIN BASIS DATA pada model IV yaitu tentang “PENGENALAN OPERATOR DASAR”. Dalam operator dasar terdapat beberapa struktur query yang berfungsi untuk mengolah data dalam sebuah tabel. Oyi… langsung aja kita bahas materi tentang Pengenalan Operator Dasar.  Berikut merupakan operator dasar yang akan kita bahas kali ini
1. AS
Digunakan untuk menampilkan label kolom dengan nama lain. Maksudnya adalah kita menampilkan nama kolom yang sudah kita buat, tetapi dengan nama kolom yang berbeda. Dengan ini kita merubah nama kolom yang kita secara paten, namun nama kolom akan berubah pada saat kita menggunakan AS (hanya tampilan). Inilah struktur querynya :
SELECT [NAMA KOLOM] AS [NAMA KOLOM PENGGANTI] FROM [NAMA TABEL];
Inilah kejadiannya :
2. AND dan OR
Pada praktikum minggu yang lalu kita mempelajari tentang fungsi WHERE, pada kali ini kita akan mebahas lagi dari fungsi WHERE namun, untuk kali ini kita akan menggunakan fungsi WHERE yang lebih kompleks lagi yaitu dengan menggabungkan dengan fungsi OR dan AND. Dengan fungsi ini kita dapat menmpilkan data dengan lebih kompleks. Berikut struktur querynya:
SELECT*FROM [NAMA TABEL] WHERE [NAMA KOLOM] = “[PENCARIAN 1]‟ AND [NAMA KOLOM] = “[PENCARIAN 2]‟;
contoh :
Atau
SELECT * FROM [NAMA TABEL] WHERE [NAMA KOLOM] =”[PENCARIAN 1]‟ OR [NAMA KOLOM] = “[PENCARIAN 2]‟
Contoh kejadiannya :
3. BETWEEN
Digunakan untuk menentukan lebar nilai dari nilai terendah dan nilai tertinggi. Maksudnya adalah untuk menampilkan data dengan batasan. Misal : kita akan menampilkan data dari A-B. Operator pembandingnya adalah sbb :
Dan berikut adalah struktur querynya:
SELECT *FROM [NAMA TABEL] WHERE [NAMA KOLOM] BETWEEN ”[NILAI AWAL]‟ OR “[NILAI AKHIR]‟;
Contoh penerapannya:
4. LIKE
Digunakan untuk mencari data yang hanya diwakili dengan hurufnya saja. Berikut adalah contoh tabel kasus penggunakan LIKE :
Berikut strktur SQLnya :
SELECT*FROM [NAMA TABEL] WHERE [NAMA KOLOM] LIKE “[OPERATOR]‟;
Contoh :
a. Menampilkan nama dosen yang mempunyai awalan huruf “A”
b. Menampilkan nama dosen yang mempunyai akhiran huruf “A”
c. Menampilkan nama dosen yang mempunyai akhiran huruf  “I” dan mempunyai huruf “E” pada urutan ke-2
d. Menampilkan nama dosen yang mempunyai awalan huruf “L” dan mengandung huruf “I”
5. DISTINCT
Menampilkan data yang berupa angka dengan tidak terdapat duplikasi, artinya pada outputnya kita tidak menjumpai data yang bernilai sama. Berikut struktur SQLnya :
SELECT DISTINCT [NAMA KOLOM] FROM [NAMA TABEL];
Contoh :
6. LIMIT  dan OFFEST
Digunakan untuk membatasi jumlah output yang kita inginkan. Untuk LIMIT digunakan untuk menentukan jumlah baris yang akan ditampilkan dengan cara menghitung baris pertama. Sedangkan OFFEST digunakan untuk menghilangkan baris sesuai jumlah yang diberikan pada OFFEST.
Berikut struktur SQLnya :
SELECT * FROM [NAMA TABEL] ORDER BY [NAMA KOLOM] LIMIT 2;
Atau
SELECT * FROM [NAMA TABEL] ORDER BY [NAMA KOLOM] OFFSET 2;
Keterangan :
Angka 2 diatas berarti menunjukkan bahwa data yang ingin kita tampilkan hanya berjumlah 2.
Contohnya sbb :
7. CASE
Penggunakan CASE akan membentuk output tersendiri berupa sebuah kolom baru dengan data dari operasi yang ada didalamnya. Berikut contoh penggunakan CASE, yaitu penentuan kepanjangan dari singkatan “L” yang berarti “laki-laki” dan singkatan “P” yang berarti perempuan. Jadi pada kejadian ini, misal kita menginputkan “L” maka dalam kolom baru akan dituliskan “laki-laki” jika selain itu maka akan dianggap “P” dan akan ditampilkan dalam kolom baru “Perempuan”. Untuk kali ini saya akan ambilkan contoh dari tabel “DOSEN”.
Lebih jelasnya sbb :
SELECT id_dosen,nama_dosen,jk_dosen, CASE WHEN jk_dosen=”L” THEN ‘laki-laki’ ELSE ‘perempuan’ END AS jenis_kelamin FROM dosen;
Contoh kejadiannya :
8. UNION, EXCEPT dan INTERSECT
Sebelum kita mempraktekkan struktur SQL diatas, terlebih dahulu kita harus membuat 2 tabel yang nantinya akan disisipkan struktur SQL diatas, sebagai contoh saya akan membuat tabel organ_dalam dan tabel organ_luar.
UNION digunakan untuk menggabungkan hasil dua buah query menjadi satu kolom. Berikut struktur SQLnya:
SELECT  [NAMA KOLOM]  FROM [NAMA TABEL]  UNION SELECT [NAMA KOLOM] FROM [NAMA TABEL];
atau
SELECT [NAMA KOLOM] FROM  [NAMA TABEL] UNION ALL SELECT [NAMA KOLOM] FROM [NAMA TABEL];
Contoh :
EXCEPT digunakan untuk menampilkan hanya query pertama saja, sedangkan hasil query kedua tidak akan ditampilkan. Struktur SQLnya sbb :
SELECT [NAMA KOLOM] FROM [NAMA TABEL] EXCEPT SELECT [NAMA KOLOM] FROM [NAMA TABEL];
Contoh :
INTERSECT digunakan untuk menampilkan seluruh isi data yang memiliki kesamaan diantara kedua hasil query tersebut. Berikut struktur SQLnya :
SELECT [NAMA KOLOM] FROM [NAMA TABEL] EXCEPT SELECT [NAMA KOLOM] FROM [NAMA TABEL];
Contoh :
Alhamdulillah ya… laporan 4 selesai :) kritik dan sarannya kami tunngu hehehe :P
 

Software

Internet

Tutorial