Advertisement
loading...

MATERI PELATIHAN BERBASIS KOMPETENSI

SEKTOR TELEMATIKA

Advertisement

SUB SEKTOR PROGRAMMER KOMPUTER

 

 

 

 

MENGOPERASIKAN BAHASA PEMROGRAMAN DATA DESKRIPSI (SQL) LANJUT

TIK.PR03.002.01

 

 

 

 

 

 

 

 

BUKU INFORMASI

 

 

 

 

 

 

 

 

 

 

 

 

 

DEPARTEMEN TENAGA KERJA DAN TRANSMIGRASI R.I.

DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS

Jl. Jend. Gatot Subroto Kav.51 Lt.7.B Jakarta Selatan

 

DAFTAR ISI

 

 

 

Daftar Isi…………………………………………………………………………………………..          1

 

BAB I       PENGANTAR………………………………………………………………………….                 3

1.1   Konsep Dasar Pelatihan Berbasis Kompetensi………………………….         3

1.2   Penjelasan Modul……………………………………………………………..        3

1.3   Pengakuan Kompetensi Terkini (RCC)……………………………………         5

1.4   Pengertian Istilah-Istilah…………………………………………………….                 6

 

BAB II     STANDAR KOMPETENSI…………………………………………………………..         8

2.1   Peta Paket Pelatihan………………………………………………………..         8

2.2   Pengertian Unit Standar…………………………………………………….        8

2.3   Unit Kompetensi Yang Dipelajari………………………………………….         9

2.3.1  Judul Unit……………………………………………………………..          9

2.3.2  Kode Unit……………………………………………………………..           9

2.3.3  Deskripsi Unit………………………………………………………..          9

2.3.4  Elemen Kompetensi………………………………………………..  10

2.3.5  Batasan Variabel…………………………………………………….          12

2.3.6  Panduan Penilaian…………………………………………………..          12

2.3.7  Kompetensi Kunci…………………………………………………..           13

 

BAB III    STRATEGI DAN METODE PELATIHAN………………………………………….           14

3.1   Strategi Pelatihan…………………………………………………………….         14

3.2   Metode Pelatihan……………………………………………………………..         15

 

 

 

BAB IV     MATERI UNIT KOMPETENSI……………………………………………………..           16

4.1   Tujuan Instruksional Umum……………………………………………….           16

4.2   Tujuan Instruksional Khusus………………………………………………   16

4.3   Sekilas Tentang DDL dan DML……………………………………………           17

4.4   Constraint dan Rule…………………………………………………………          18

4.5   Fungsi dan Prosedur………………………………………………………..           22

4.5.1  Variabel……………………………………………………………….          23

4.5.2  Statement…………………………………………………………….           25

4.5.3  Fungsi-Fungsi………………………………………………………..           30

4.5.4  Stored Procedure……………………………………………………           34

4.5.5  Penanganan Error…………………………………………………..           36

4.6   Mengenal Cursor…………………………………………………………….           37

4.7   Trigger…………………………………………………………………………           42

4.8   Transaksi Dengan Commit dan Rollback.………………………………   47

 

BAB V      SUMBER – SUMBER YANG DIPERLUKAN UNTUK PENCAPAIAN KOMPETENSI………………………………………………………………………..         52

5.1   Sumber Daya Manusia…………………………………………………….. 52

5.2   Literatur……………………………………………………………………….         53

5.3   Daftar Peralatan/Mesin dan Bahan ……………………………………. 54

5.4   Lain-lain……………………………………………………………………….         55

 

DAFTAR PUSTAKA

 

 

 

 

 

 

 

 

 

BAB I

PENGANTAR

 

 

1.1.      Konsep Dasar Pelatihan Berbasis Kompetensi

 

  • Apakah pelatihan berdasarkan kompetensi?

Pelatihan berdasarkan kompetensi adalah pelatihan yang memperhatikan pengetahuan, keterampilan dan sikap yang diperlukan di tempat kerja agar dapat melakukan pekerjaan dengan kompeten. Standar Kompetensi dijelaskan oleh Kriteria Unjuk Kerja.

 

  • Apakah artinya menjadi kompeten ditempat kerja?

Jika Anda kompeten dalam pekerjaan tertentu, Anda memiliki seluruh keterampilan, pengetahuan dan sikap yang perlu untuk ditampilkan secara efektif ditempat kerja, sesuai dengan standar yang telah disetujui.

 

1.2    Penjelasan Modul

Modul ini didisain untuk dapat digunakan pada Pelatihan Klasikal dan Pelatihan Individual/mandiri :

  • Pelatihan klasikal adalah pelatihan yang disampaikan oleh seorang pelatih.
  • Pelatihan individual/mandiri adalah pelatihan yang dilaksanakan oleh peserta dengan menambahkan unsur-unsur/sumber-sumber yang diperlukan dengan bantuan dari pelatih.

 

Isi Modul

a.  Buku Informasi

Buku informasi ini adalah sumber pelatihan untuk pelatih maupun peserta pelatihan.

 

b.  Buku Kerja

Buku kerja ini harus digunakan oleh peserta pelatihan untuk mencatat setiap pertanyaan dan kegiatan praktik baik dalam Pelatihan Klasikal maupun Pelatihan Individual / mandiri.

Buku ini diberikan kepada peserta pelatihan dan berisi :

  • Kegiatan-kegiatan yang akan membantu peserta pelatihan untuk mempelajari dan memahami informasi.
  • Kegiatan pemeriksaan yang digunakan untuk memonitor pencapaian keterampilan peserta pelatihan.
  • Kegiatan penilaian untuk menilai kemampuan peserta pelatihan dalam melaksanakan praktik kerja.

 

c.  Buku Penilaian

Buku penilaian ini digunakan oleh pelatih untuk menilai jawaban dan tanggapan peserta pelatihan pada Buku Kerja dan berisi :

  • Kegiatan-kegiatan yang dilakukan oleh peserta pelatihan sebagai pernyataan keterampilan.
  • Metode-metode yang disarankan dalam proses penilaian keterampilan peserta pelatihan.
  • Sumber-sumber yang digunakan oleh peserta pelatihan untuk mencapai keterampilan.
  • Semua jawaban pada setiap pertanyaan yang diisikan pada Buku Kerja.
  • Petunjuk bagi pelatih untuk menilai setiap kegiatan praktik.
  • Catatan pencapaian keterampilan peserta pelatihan.

 

Pelaksanaan Modul

 

Pada pelatihan klasikal, pelatih akan :

  • Menyediakan Buku Informasi yang dapat digunakan peserta pelatihan sebagai sumber pelatihan.
  • Menyediakan salinan Buku Kerja kepada setiap peserta pelatihan.
  • Menggunakan Buku Informasi sebagai sumber utama dalam penyelenggaraan pelatihan.
  • Memastikan setiap peserta pelatihan memberikan jawaban / tanggapan dan menuliskan hasil tugas praktiknya pada Buku Kerja.

 

Pada Pelatihan individual / mandiri, peserta pelatihan akan :

  • Menggunakan Buku Informasi sebagai sumber utama pelatihan.
  • Menyelesaikan setiap kegiatan yang terdapat pada buku Kerja.
  • Memberikan jawaban pada Buku Kerja.
  • Mengisikan hasil tugas praktik pada Buku Kerja.
  • Memiliki tanggapan-tanggapan dan hasil penilaian oleh pelatih.

 

1.3            Pengakuan Kompetensi Terkini (RCC)

  • Apakah Pengakuan Kompetensi Terkini (Recognition of Current Competency).

Jika Anda telah memiliki pengetahuan dan keterampilan yang diperlukan untuk elemen unit kompetensi tertentu, Anda dapat mengajukan pengakuan kompetensi terkini (RCC). Berarti Anda tidak akan dipersyaratkan untuk belajar kembali.

  • Anda mungkin sudah memiliki pengetahuan dan keterampilan, karena Anda telah :
  1. Bekerja dalam suatu pekerjaan yang memerlukan suatu pengetahuan dan keterampilan yang sama atau
  2. Berpartisipasi dalam pelatihan yang mempelajari kompetensi yang sama atau
  3. Mempunyai pengalaman lainnya yang mengajarkan pengetahuan dan keterampilan yang sama.

 

 

 

1.4        Pengertian-pengertian Istilah

 

Profesi

Profesi adalah suatu bidang pekerjaan yang menuntut sikap, pengetahuan serta keterampilan/keahlian kerja tertentu yang diperoleh dari proses pendidikan, pelatihan serta pengalaman kerja atau penguasaan sekumpulan kompetensi tertentu yang dituntut oleh suatu pekerjaan/jabatan.

 

Standardisasi

Standardisasi adalah proses merumuskan, menetapkan serta menerapkan suatu standar tertentu.

 

Penilaian / Uji Kompetensi

Penilaian atau Uji Kompetensi adalah proses pengumpulan bukti melalui perencanaan, pelaksanaan dan peninjauan ulang (review) penilaian serta keputusan mengenai apakah kompetensi sudah tercapai dengan membandingkan bukti-bukti yang dikumpulkan terhadap standar yang dipersyaratkan.

 

Pelatihan

Pelatihan adalah proses pembelajaran yang dilaksanakan untuk mencapai suatu kompetensi tertentu dimana materi, metode dan fasilitas pelatihan serta lingkungan belajar yang ada terfokus kepada pencapaian unjuk kerja pada kompetensi yang dipelajari.

 

Kompetensi

Kompetensi adalah kemampuan seseorang untuk menunjukkan aspek sikap, pengetahuan dan keterampilan serta penerapan dari ketiga aspek tersebut ditempat kerja untuk mencapai unjuk kerja yang ditetapkan.

 

 

Standar Kompetensi

Standar kompetensi adalah standar yang ditampilkan dalam istilah-istilah hasil serta memiliki format standar yang terdiri dari judul unit, deskripsi unit, elemen kompetensi, kriteria unjuk kerja, ruang lingkup serta pedoman bukti.

 

Sertifikat Kompetensi

Adalah pengakuan tertulis atas penguasaan suatu kompetensi tertentu kepada seseorang yang dinyatakan kompeten yang diberikan oleh Lembaga Sertifikasi Profesi.

 

Sertifikasi Kompetensi

Adalah proses penerbitan sertifikat kompetensi melalui proses penilaian / uji kompetensi.

BAB II

STANDAR KOMPETENSI

 

 

2.1.      Peta Paket Pelatihan

 

Modul yang sedang Anda pelajari ini adalah untuk mencapai satu unit kompetensi, yang termasuk dalam satu paket pelatihan, yang terdiri atas unit-unit kompetensi berikut:

 

2.1.1 TIK.PR03.002.01               Mengoperasikan Bahasa Pemrograman Data  Deskripsi (SQL – Structured Query Language) Lanjut

2.1.2 TIK.PR03.001.01               Mengoperasikan Bahasa Pemrograman Data  Deskripsi (SQL – Structured Query Language) Dasar

 

 

2.2.      Pengertian Unit Standar Kompetensi

 

Apakah Standar Kompetensi? Setiap Standar Kompetensi menentukan :

  1. Pengetahuan dan keterampilan yang diperlukan untuk mencapai kompetensi.
  2. Standar yang diperlukan untuk mendemonstrasikan kompetensi.
  3. Kondisi dimana kompetensi dicapai.

Di dalam unit kompetensi ini, Anda akan mempelajari pemrograman data deskripsi lanjut untuk melengkapi pengetahuan yang telah Anda kuasai pada pelatihan mengenai pemrograman data deskripsi dasar sebelumnya.

Sistem pelatihan berbasis kompetensi terfokus pada pencapaian kompetensi, bukan pada lamanya waktu. Namun diharapkan pelatihan ini dapat dilaksanakan dan dicapai dalam jangka waktu tidak lebih dari seminggu, tiga sampai lima hari. Pelatihan ini diperuntukkan bagi semua pengguna terutama yang tugasnya berkaitan dengan pengelolaan, pemeliharaan dan pemrograman basis data seperti Database Administrator dan Database Developer.

 

Jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama, Pelatih Anda akan mengatur rencana pelatihan dengan Anda. Rencana ini akan memberikan Anda kesempatan kembali untuk meningkatkan level kompetensi Anda sesuai dengan level yang diperlukan. Jumlah maksimum usaha/kesempatan yang disarankan adalah 3 (tiga) kali.

 

2.3.      Unit Kompetensi yang Dipelajari

Dalam sistem pelatihan, Standar Kompetensi diharapkan menjadi panduan bagi peserta pelatihan  untuk dapat :

  • mengidentifikasikan apa yang harus dikerjakan peserta pelatihan.
  • memeriksa kemajuan peserta pelatihan.
    • menyakinkan bahwa semua elemen (sub-kompetensi) dan kriteria unjuk   kerja telah dimasukkan dalam pelatihan dan penilaian.

 

 

2.3.1 JUDUL UNIT             :      Mengoperasikan Bahasa Pemrograman Data  Deskripsi (SQL – Structured Query Language) Lanjut

 

2.3.2 KODE UNIT             :      TIK.PR03.002.01

 

2.3.3 DESKRIPSI UNIT    :      Unit ini akan menentukan kompetensi yang diperlukan untuk   mengoperasikan perangkat aplikasi (bahasa pemrograman) berbasis data deskripsi atau SQL (Structured Query Language) . Kemampuan dalam mengoperasikan bahasa data deskripsi atau SQL dapat menggunakan perintah-perintah DDL (Data Definition Language) dan DML (Data Manipulation Language). Kemampuan yang dimiliki pada tingkat lanjut ini adalah kemampuan yang telah dimiliki pada tingkat dasar dan ditambah kemampuan untuk membuat dan mengoperasikan prosedur, fungsi dan trigger.

 

2.3.4   ELEMEN KOMPETENSI

 

ELEMEN KOMPETENSI

KRITERIA UNJUK KERJA

01  Membuat dan mengoperasikan prosedur 1.1      Prosedur dibuat dan diatur dengan menggunakan perintah standar pada DDL dan DML.

 

1.2      Parameter prosedur diproses sesuai dengan kebutuhan di dalam prosedur.

 

1.3      Prosedur disimpan dan diberi nama.

 

1.4      Prosedur dapat dijalankan dan bekerja dengan benar.

 

02 Membuat dan mengoperasikan prosedur dan fungsi 2.1      Fungsi dibuat dan diatur dengan menggunakan perintah standar pada DDL dan DML.

 

2.2      Parameter fungsi diproses sesuai dengan kebutuhan di dalam fungsi.

 

2.3      Fungsi disimpan dan diberi nama.

 

2.4      Fungsi dapat dijalankan dan bekerja dengan benar.

03 Membuat dan     mengoperasikan trigger 3.1   Trigger dibuat dan diatur dengan penggunaan perintah standar pada DDL dan DML.

3.2     Trigger disimpan dan diberi nama.

 

3.3   Trigger dapat dijalankan dan bekerja dengan benar.

 

04 Mengoperasikan Commit         dan Rollback data tabel 4.1   Perintah commit digunakan untuk penyimpanan data ke dalam fisik file.

 

4.2      Perintah rollback digunakan untuk pembatalan perintah yang telah dikerjakan dan  penyimpanan data ke dalam fisik file tidak termasuk.

 

4.3   Perintah commit dan rollback dipastikan bekerja dengan benar.

 

 

2.3.5   Batasan Variabel

 

Batasan variabel unit kompetensi ini adalah sebagai berikut:

  1. Unit ini berlaku untuk seluruh sektor teknologi informasi dan komunikasi.

2.  Mengoperasikan bahasa pemrograman data deskripsi (SQL – Structured Query Language) Level 2 bersifat internal pada bidang teknologi informasi dan komunikasi.

 

2.3.6   Panduan Penilaian

Panduan penilaian terdiri dari :

  1. Pengetahuan dan keterampilan penunjang

Untuk mendemontrasikan kompetensi, diperlukan bukti keterampilan dan pengetahuan dibidang berikut  ini :

1.1     Pengetahuan dasar yang dibutuhkan :

1.1.1    Pengoperasian software aplikasi basis data.

1.1.2    On site training sesuai dengan perangkat lunak bahasa pemrograman basis data yang digunakan.

1.1.3    Konsep basis data.

 

  1. Konteks penilaian

Kompetensi harus diujikan di tempat kerja atau tempat lain secara teori dan praktek dengan kondisi kerja sesuai dengan keadaan normal.

 

  1.  Aspek penting penilaian

Aspek yang harus diperhatikan :

3.1   Kemampuan untuk prosedur dibuat dan diatur dengan menggunakan perintah standar pada DDL dan DML.

3.2       Kemampuan membuat dan mengoperasikan prosedur dan fungsi.

3.3       Kemampuan membuat dan mengoperasikan trigger.

3.4       Kemampuan mengoperasikan commit dan rollback data table.

 

 

  1. Kaitan dengan unit-unit lainnya

4.1       Unit ini didukung di dalam mengoperasikan bahasa pemrograman data deskripsi (SQL-Structured Query Language) lanjut, contoh mencakup namun tidak terbatas pada : Seluruh unit pemrograman basis data.

4.2   Pengembangan pelatihan untuk memenuhi persyaratan dalam unit ini perlu dilakukan dengan hati-hati. Untuk pelatihan pra kejuruan umum, institusi harus menyediakan pelatihan yang mempertimbangkan serangkaian konteks industri seutuhnya tanpa bias terhadap sektor tertentu. Batasan variabel akan membantu dalam hal ini. Untuk sektor tertentu/khusus, pelatihan harus disesuaikan untuk memenuhi kebutuhan sektor tersebut.

 

 

2.3.7   Kompetensi Kunci

NO KOMPETENSI KUNCI DALAM UNIT INI TINGKAT

1

Mengumpulkan, mengorganisir dan menganalisa informasi

2

2

Mengkomunikasikan ide-ide dan informasi

2

3

Merencanakan dan mengorganisir aktivitas-aktivitas

2

4

Bekerja dengan orang lain dan kelompok

1

5

Menggunakan ide-ide dan teknik matematika

2

6

Memecahkan masalah

2

7

Menggunakan teknologi

2

 

 

 

BAB III

STRATEGI DAN METODE PELATIHAN

 

3.1.      Strategi Pelatihan        

Belajar dalam suatu sistem Berdasarkan Kompetensi berbeda dengan yang sedang “diajarkan” di kelas oleh Pelatih. Pada sistem ini Anda akan bertanggung jawab terhadap belajar Anda sendiri, artinya bahwa Anda perlu merencanakan belajar Anda dengan Pelatih dan kemudian melaksanakannya dengan tekun sesuai dengan rencana yang telah dibuat.

 

Persiapan/perencanaan

  1. Membaca bahan/materi yang telah diidentifikasi dalam setiap tahap belajar dengan tujuan mendapatkan tinjauan umum mengenai isi proses belajar Anda.
  2. Membuat catatan terhadap apa yang telah dibaca.
  3. Memikirkan bagaimana pengetahuan baru yang diperoleh berhubungan dengan pengetahuan dan pengalaman yang telah Anda miliki.
  4. Merencanakan aplikasi praktik pengetahuan dan keterampilan Anda.

 

Permulaan dari proses pembelajaran

  1. Mencoba mengerjakan seluruh pertanyaan dan tugas praktik yang terdapat pada tahap belajar.
  2. Merevisi dan meninjau materi belajar agar dapat menggabungkan pengetahuan Anda.

 

Pengamatan terhadap tugas praktik

  1. Mengamati keterampilan praktik yang didemonstrasikan oleh Pelatih atau orang yang telah berpengalaman lainnya.
  2. Mengajukan pertanyaan kepada Pelatih tentang konsep sulit yang Anda temukan.

 

Implementasi

  1. Menerapkan pelatihan kerja yang aman.
  2. Mengamati indikator kemajuan personal melalui kegiatan praktik.
  3. Mempraktikkan keterampilan baru yang telah Anda peroleh.

 

Penilaian

Melaksanakan tugas penilaian untuk penyelesaian belajar Anda.

 

3.2.          Metode Pelatihan      

Terdapat tiga prinsip metode belajar yang dapat digunakan. Dalam beberapa kasus, kombinasi metode belajar mungkin dapat digunakan.

 

Belajar secara mandiri

Belajar secara mandiri membolehkan Anda untuk belajar secara individual, sesuai dengan kecepatan belajarnya masing-masing. Meskipun proses belajar dilaksanakan secara bebas, Anda disarankan untuk menemui Pelatih setiap saat untuk mengkonfirmasikan kemajuan dan mengatasi kesulitan belajar.

 

Belajar Berkelompok

Belajar berkelompok memungkinkan peserta untuk dating bersama secara teratur dan berpartisipasi dalam sesi belajar berkelompok. Walaupun proses belajar memiliki prinsip sesuai dengan kecepatan belajar masing-masing, sesi kelompok memberikan interaksi antar peserta, Pelatih dan pakar/ahli dari tempat kerja.

 

Belajar terstruktur

Belajar terstruktur meliputi sesi pertemuan kelas secara formal yang dilaksanakan oleh Pelatih atau ahli lainnya. Sesi belajar ini umumnya mencakup topik tertentu.

 

 

BAB IV

MATERI UNIT KOMPETENSI

 

 

4.1        Tujuan Instruksional Umum

  • Siswa mampu menceritakan dan menjelaskan konsep pemrograman data deskripsi (SQL – Structured Query Language)
  • Siswa dapat mengoperasikan bahasa pemrograman data deskripsi (SQL – Structured Query Language)

 

4.2        Tujuan Instruksional Khusus

  • Siswa mengerti dan mampu menjelaskan apa yang dimaksud dengan DDL (Data Definition Language)
  • Siswa dapat menggolongkan perintah apa saja yang temasuk DDL
  • Siswa mengerti dan mampu menjelaskan apa yang dimaksud dengan DML (Data Manipulation Language)
  • Siswa dapat menggolongkan perintah apa saja yang termasuk DML
  • Siswa dapat menjelaskan penggunaan cursor
  • Siswa mengerti apa yang dimaksud dengan rule dan constraint
  • Siswa dapat membuat dan mengaplikasikan rule dan constraint
  • Siswa mengerti apa yang dimaksud dengan fungsi dan prosedur
  • Siswa mengetahui dan mampu menggunakan perintah-perintah DDL dan DML untuk membuat fungsi dan prosedur
  • Siswa mengetahui dan mampu menjelaskan penggunaan Trigger
  • Siswa mampu menyebutkan jenis-jenis Trigger
  • Siswa mengerti apa yang dinamakan transaksi
  • Siswa mengerti pengunaan commit dan rollback
  • Siswa dapat mengelola dan mengoperasikan pemrograman data deskripsi dengan baik dan benar

 

4.3        Sekilas Tentang DDL dan DML

Seperti yang telah Anda ketahui sebelumnya, SQL secara garis besar dibagi kedalam 2 kelompok utama, yaitu DDL (Data Definition Language) dan DML (Data Manipulation Language). Sekedar mengingatkan kembali, Yang dimaksud dengan DDL adalah pernyataan-pernyataan yang digunakan untuk membuat dan mengubah struktur tabel atau obyek di dalam basis data. Sedangkan DML adalah kumpulan pernyataan-pernyataan yang digunakan untuk bekerja pada data di dalam basis data.

Pada pembahasan di SQL Dasar, Anda tentu mengenal pernyataan-pernyataan seperti berikut:

 

-      CREATE DATABASE …

-      CREATE TABLE …

-      ALTER TABLE …

-      CREATE INDEX …

-      DROP TABLE …

-      CREATE VIEW …

-      DROP DATABASE …

-      dll

 

 

 

Pernyataan-pernyataan diatas merupakan DDL yang selalu digunakan untuk membuat dan mengelola basis data.

Anda tentu juga telah mengetahui pernyataan-pernyataan seperti SELECT, INSERT, UPDATE dan DELETE pada pembahasan SQL Dasar. Pernyataan-pernyataan ini merupakan pernyataan DML. Dari pengertian DDL dan DML yang telah dijelaskan diatas, Anda tentu sudah dapat membedakan pernyataan mana yang digolongkan ke dalam DDL dan DML.

 

Dalam pelatihan ini, kita tidak lagi membahas itu, yang akan kita bahas adalah mengenai cursor, rule, constraint, fungsi, prosedur, trigger dan transaksi. Sehingga hanya DDL dan DML yang bersangkutan dengan topik-topik inilah yang akan kita pelajari lebih lanjut pada sub-bab masing-masing.

Namun perlu digaris-bawahi, DDL dan DML untuk masing-masing aplikasi SQL (Transact-SQL, Oracle SQL, mySQL, PostgreSQL, dll)  yang digunakan dapat bervariasi, sama dan berbeda. Misalnya, di mySQL 3.22.15 keatas terdapat pernyataan DML, INSERT DELAYED … yang tidak terdapat pada Transact-SQL. Oracle dan mySQL memiliki pernyataan DDL, TRUNCATE..

 

Namun, Jadi, untuk DDL dan DML yang lebih spesifik, Anda sebaiknya mengacu pada referensi aplikasi SQL yang Anda gunakan. Pada pelatihan ini, sedapat mungkin saya menggambarkan topik-topik tersebut secara umum dan memberikan contoh-contoh yang bervariasi untuk beberapa aplikasi SQL yang umum digunakan. Namun, contoh-contoh pada pelatihan ini lebih banyak menggunakan Transact-SQL (SQL Server).

 

4.4        Constraint dan Rule

Anda mungkin telah mengenal apa yang dinamakan constraint pada pelatihan SQL Dasar sebelumnya. Namun, disini kita akan membahas lebih rinci mengenai constraint dan apa yang disebut dengan rule. Constraint adalah obyek yang merupakan bagian dari tabel dan fungsinya adalah untuk mengecek data agar memenuhi kondisi tertentu. Sejauh ini, kita mengenal 5 jenis constraint yaitu:

  1. Primary Key (PK)

Primary Key adalah suatu kunci utama yang dibentuk dari sebuah kolom atau lebih sehingga menjadikan setiap data itu bersifat unik. Primary Key tidak boleh bernilai null. Contoh: Nomor Induk Pegawai. Tidak mungkin 2 orang pegawai memiliki nomor induk pegawai yang sama.

 

  1. Foreign Key (FK)

Foreign Key adalah kunci asing yang terdapat pada satu kolom atau lebih di dalam suatu tabel yang merujuk pada kunci di tabel lainnya sebagai link antara tabel-tabel tersebut. Foreign Key tidak bersifat unik dan biasanya mengacu pada primary key di tabel lain. Contoh:

 

Pada tabel Pegawai terdapat NIP yang berfungsi sebagai PK, sedangkan pada tabel Absensi terdapat kolom NIP yang berfungsi sebagai FK. NIP pada tabel Absensi merujuk pada NIP yang ada pada tabel Pegawai.

 

  1. c.    Unique Constraint

Unique Constraint biasanya dikenal juga sebagai Alternate Key (AK). Sifatnya unik, artinya tidak ada data yang sama, berdiri sendiri (tidak ada

relasi ke tabel lain atau tidak menjadi sumber acuan). Contohnya: Nomor Identitas Penduduk tiap Pegawai. Setiap pegawai tentu memiliki KTP dan nomor KTP tersebut tentu berbeda antara setiap pegawai.

 

  1. Check Constraint (CK)

Check Constraint berfungsi untuk membatasi penyisipan data pada suatu tabel agar memenuhi kriteria-kriteria yang ditetapkan. Contoh:

kdAbsensi pada tabel Absensi harus diawali dengan huruf ‘A’

 

  1. Default Constraint (DF)

Default Constraint berfungsi untuk memberkan nilai default pada data dalam suatu tabel. Jika kita tidak menginisialisasikan nilai pada sebuah data maka nilai pada data tersebut akan berisi nilai default yang ditentukan sebelumnya pada DF.

 

Adapun cara untuk membuat dan menghapus constraint adalah sebagai berikut:

  1. Membuat Constraint

Constraint dapat dibuat pada saat mendefinisikan tabel maupun secara terpisah dengan sintaks berikut:

 

ALTER TABLE nama_tabel

ADD CONSTRAINT nama_constraint

jenis_constraint (…)

 

  1. Menghapus Constraint

 

ALTER TABLE nama_tabel

DROP CONSTRAINT nama_constraint

 

Berikut adalah contoh penggunaan constraint:

Pada tabel Pegawai jika ada data pada kolom kota yang tidak diinisialisasi maka nilai defaultnya adalah ‘Jakarta’. Setiap pegawai harus melakukan absensi saat masuk dan pulang kerja. kdAbsensi pada tabel Absensi harus diawali huruf ‘AD’ atau ‘AP’.

 

CREATE TABLE Pegawai

(nip CHAR(10), nama VARCHAR(30), no_ktp CHAR(12)

alamat VARCHAR(30), kota VARCHAR(15),

CONSTRAINT pk_nip PRIMARY KEY(nip))

 

CREATE TABLE Absensi

(kdAbsensi CHAR(4), nip CHAR(10),

jam_msk DATETIME, jam_klr DATETIME)

ALTER TABLE Absensi

ADD CONSTRAINT pk_absensi PRIMARY KEY(kdAbsensi)

 

ALTER TABLE Absensi

ADD CONSTRAINT fk_absensi

FOREING KEY(nip) REFERENCES Pegawai(nip)

 

 

ALTER TABLE Pegawai

ADD CONSTRAINT ak_pegawai UNIQUE(no_ktp)

 

ALTER TABLE Pegawai

ADD CONSTRAINT df_pegawai DEFAULT ‘Jakarta’ FOR kota

ALTER TABLE Absensi

ADD CONSTRAINT ck_absensi

CHECK (LEFT(kdAbsensi,2)=’AD’ OR

LEFT(kdAbsensi,2)=’AP’)

Selain constraint, ada juga yang dinamakan rule. Rule adalah bentuk lain dari Check Constraint dan merupakan sebuah obyek dalam SQL. Berikut adalah cara membuat rule dengan Transact-SQL :

 

CREATE RULE nama_rule AS kondisi

 

Contoh:

 

CREATE RULE ruleKdAbsensi

AS LEFT(@kdAbsensi,2) IN (‘AD’,’AP’)

 

Untuk menerapkan rule pada kolom yang sesuai gunakan fungsi berikut:

 

Exec sp_bindrule ‘nm_rule’,’nm_tabel’,’nm_kolom’

 

Sedangkan untuk memutuskan hubungan rule dari kolom yang bersangkutan digunakan fungsi :

 

Exec sp_unbindrule ’nm_tabel’,’nm_kolom’

 

Sedangkan untuk menghapus rule yang telah dibuat, semua kolom yang terhubung dengan rule tersebut harus diputuskan terlebih dahulu. Sintaks :

 

DROP RULE nama_rule

 

Contoh:

 

CREATE RULE ruleKdAbsensi

AS LEFT(@kode,2) IN (‘AD’,’AP’)

sp_bindrule ‘ruleKdAbsensi’,’Absensi’,’kdAbsensi’

 

 

sp_unbindrule ‘Absensi’, ‘kdAbsensi’

DROP RULE ruleKdAbsensi

 

Catatan: @kode adalah nama variabel dalam T-SQL

Transact-SQL juga menyediakan cara lain untuk membuat Default Constraint, yaitu dengan ‘DDL Default’.

 

CREATE DEFAULT nama_default

AS expression

 

Contoh:

 

CREATE DEFAULT defKota AS ‘Jakarta’

 

Untuk menghubungkan default ke kolom yang sesuai, dapat menggunakan fungsi berikut:

 

Exec sp_bindefault ’nm_default’,’nm_tabel.nm_kolom’

 

Sedangkan untuk memutuskan hubungan default dari kolom yang bersangkutan digunakan fungsi :

 

Exec sp_unbindrule ’nm_tabel.nm_kolom’

 

4.5        Fungsi dan Prosedur

Sebelum Anda mulai membuat prosedur, Anda terlebih dahulu harus mengerti tentang variabel dan fungsi-fungsi yang dapat Anda gunakan. Dalam topik ini, kita cenderung menggunakan bahasa T-SQL (Transact-SQL) pada SQL Server. Untuk membuat prosedur di mySQL, Anda membutuhkan mySQL minimal versi 5. Yang penting disini adalah konsep dalam membuat dan mengoperasikan prosedur. Dengan mengerti konsep ini, maka aplikasi apapun yang Anda gunakan tidak menjadi masalah. Anda cukup memahami fungsi-fungsi atau sintaks-sintaks dari aplikasi yang Anda gunakan. Seperti yang saya jelaskan di awal bahwa DDL dan DML untuk tiap aplikasi dan fungsi yang disediakan tidak sama. Namun, semua aplikasi itu memiliki konsep yang sama dan mengacu pada standar SQL tertentu.

 

 

4.5.1                   Variabel

Variabel adalah suatu referensi atas lokasi memori yang menyimpan data. Bila Anda bekerja pada data yang berubah-ubah dan ingin menempatkan data tersebut pada lokasi memori yang sama maka Anda harus mendefinisikan variabel. Variabel merujuk pada lokasi dimana data anda tersebut disimpan. Variabel pada aplikasi SQL manapun secara umum dikelompokkan ke dalam  2 bagian yaitu:

  1. a.    Global Variable

Global Variable adalah variabel yang telah dibuat oleh aplikasi yang bersangkutan dan diatur oleh sistem. Untuk Transact-SQL, variabel global ditandai dengan @@. Beberapa variabel global yang sering digunakan antara lain:

 

@@FETCH_STATUS

Variabel ini bernilai 0 bila pernyataan FETCH berhasil mengambil data. Variabel ini diinisialisasi setelah pernyataan FETCH dieksekusi dan umumnya digunakan untuk menghentikan perulangan WHILE pada cursor. Variabel @@FETCH_STATUS juga dapat bernilai –2,

 

bila baris data yang ingin diambil telah dihapus setelah cursor dibuat. Nilai ini hanya berlaku untuk cursor keyset-driven (scroll).

 

@@CURSOR_ROWS, @@ROWCOUNT

Variabel @@CURSOR_ROWS mengembalikan jumlah baris data dalam cursor yang terbaru. Sedangkan variabel @@ROWCOUNT mengembalikan jumlah baris data yang terperbaharui akibat suatu query. Variabel @@ROWCOUNT umumnya digunakan bersama pernyataan UPDATE dan DELETE untuk mengetahui berapa jumlah baris data yang telah berhasil diperbaharui.

 

 

 

 

@@ERROR

Variabel ini mengembalikan nilai kesalahan untuk pernyataan SQL yang terakhir kali dijalankan. Jika bernilai 0, artinya pernyataan tersebut suskes dijalankan tanpa kesalahan.

 

@@IDENTITY

Variabel global ini mengembalikan nilai yang paling terakhir digunakan untuk kolom identitas. Kolom identitas bersifat read-only dan dikelola oleh sistem. Setiap ada penambahan data pada tabel, aplikasi menggunakan informasi ini sebagai kunci untuk menambahkan data pada tabel lain terutama yang saling berhubungan melalui foreign key.

 

Selain variabel global diatas, Transact-SQL masih memiliki banyak variabel global lain. Berikut adalah daftar beberapa variabel global yang umum digunakan:

 

Variabel Global

Keterangan
@@CONNECTIONS Jumlah login
@@CPU_BUSY Jumlah total waktu server CPU dalam detik
@@IDLE Jumlah waktu CPU yang sedang tidak bekerja
@@IO_BUSY Jumlah waktu Input/Output
@@LANGID ID Bahasa yang sedang aktif
@@LANGUAGE Nama Bahasa yang sedang aktif
@@MAX_CONNECTIONS Maksimum koneksi dalam waktu yang sama
@@MAX_PRECISION Tingkat ketelitian nilai desimal atau numerik
@@NEST_LEVEL Jumlah nest level yang sedang aktif
@@SERVER_NAME Nama server lokal
@@SPID ID Server yang sedang proses
@@TOTAL_ERRORS Jumlah kesalahan selama SQL berjalan
@@TOTAL_READ Jumlah pembacaan pada Disk
@@TOTAL_WRITE Jumlah penulisan pada Disk
@@TRANCOUNT Total transaksi yang dilakukan active user

 

  1. b.    User-Defined Variable

Jika variabel global adalah variabel yang dibuat oleh sistem, maka variabel ini adalah variabel yang didefinisikan sendiri oleh user. Dalam T-SQL, caranya adalah:

 

DECLARE @nama_variabel tipe_variabel

 

Dalam mySQL atau PostgreSQL, variabel didefinisikan dengan diawali tanda ‘$’.

Contoh:

 

DECLARE @intA INT

DECLARE @intX INT, @intY INT, @Z CHAR(5)

SELECT @X = 20

SET @Y = 5

SET @Z = ‘Hasil’

SET @A = @X / @ Y

PRINT @X + ‘/’ + @Y

PRINT @Z + CAST(@A AS CHAR)

 

4.5.2                   Statement

Jika Anda sudah terbiasa dalam pemrograman maka istilah Statement Control tentu sudah tidak asing lagi bagi Anda terutama flow statement yang terdiri dari Seleksi dan Perulangan. Bagian ini dipastikan dimiliki oleh semua aplikasi SQL. Yang berbeda hanya cara penggunaannya berkaitan dengan bentuk pendefinisian sintaks saja.

  1. Seleksi

Seleksi umumnya memiliki 2 statement yaitu:

  1. IF…ELSE

Pada T-SQL, Pernyataan IF tidak ditutup dengan END IF. Ada beberapa format yang bisa digunakan antara lain:

 

IF kondisi

{statement}

ELSE

{statement}

 

Atau,

 

IF kondisi

BEGIN

{multiple statements}

END

ELSE

 

BEGIN

{multiple statements}

END

 

Untuk mySQL, perrnyataan IF didefinisikan sebagai berikut:

 

 

IF kondisi THEN

{statement}

ELSE

{statement}

END IF

 

Untuk memudahkan pemahaman, lihatlah contoh berikut:

 

IF (SELECT COUNT(*) FROM Pegawai

WHERE Kota=’Medan’) > 0

BEGIN

– Proses pegawai yang

– berasal dari Medan

END

ELSE

BEGIN

PRINT “Tidak ada pegawai dari Medan!”

END

 

 

 

  1. CASE

Fungsi pernyataan CASE sama dengan IF. Berikut adalah sintaks penggunaannya dalam T-SQL:

 

CASE ekspresi_input

WHEN ekspresi_1 THEN ekspresi_output_1

WHEN ekspresi_n THEN ekspresi_output_n

END

 

Contoh:

 

CASE @tingkat_pegawai

WHEN ‘I’ THEN 10

WHEN ‘II’ THEN 15

WHEN ‘III’ THEN 20

END

 

  1. Perulangan (Looping)

Pernyataan perulangan dalam SQL dikenal dengan pernyataan WHILE. Perulangan sering digunakan terutama ketika ingin mengambil data dari cursor. Jika pernytaan yang akan dijalankan hanya sebaris maka BEGIN/END tidak diperlukan sama halnya dengan pernyataan IF. Sintaks dalam T-SQL adalah

 

WHILE kondisi

BEGIN

{multiple statements}

END

 

Contoh:

 

DECLARE @x INT

SELECT @x = 0

WHILE (@x<5)

BEGIN

PRINT ‘LOOPING’

SET @x = @x + 1

END

 

  1. Continue dan Break

Kedua keyword ini sering digunakan bersama pernyataan WHILE untuk mengubah alur eksekusi. Continue menghentikan perulangan yang sedang berlangsung dan melanjutkan ke pernyataan berikutnya. Dengan kata lain, kondisi WHILE dievaluasi dan perulangan terjadi kembali. Jika bernilai salah, perulangan WHILE dilewatkan dan eksekusi dilanjutkan pada pernyataan berikutnya. Sedangkan Break akan menghentikan perulangan pada saat itu juga dan keluar dari perulangan. Perhatikan contoh dibawah ini!

 

WHILE <condition>

BEGIN

– Isi data ke variabel

IF @x < 0

CONTINUE

IF @x > 999

BREAK

– Proses

END

Jika x bernilai negatif maka kode tidak dijalankan dan dilanjutkan ke baris berikutnya. Jika x bernilai 1000, maka perulangan berhenti.

 

  1. GOTO dan RETURN

Kedua pernyataan memungkinkan kita untuk mengubah alur eksekusi dengan membuat percabangan ke lokasi lain di dalam prosedur. Pernyataan GOTO dapat memanggil baris pernyataan lain yang diberi label. Contoh pernyataan GOTO:

 

 

RepeatLoop:

FETCH NEXT INTO variable_list

IF @@FETCH_STATUS = 0

BEGIN

 

– Proses

GOTO RepeatLoop

END

 

Pernyataan RETURN menghentikan prosedur tanpa kondisi dan dapat mengembalikan hasil. Untuk mengembalikan nilai dalam SQL dapat digunakan sintaks seperti berikut:

 

RETURN ekspresi

 

Selain Flow-Control Statement diatas, T-SQL juga menyediakan pernyataan-pernyataan lain dan yang umumnya digunakan dalam prosedur adalah PRINT dan RAISERROR.

  1. PRINT

 

PRINT ekspresi

 

  1. RAISERROR

Fungsi ini digunakan untuk mendefinisikan error kita sendiri dari prosedur yang kita buat. Sintaksnya adalah:

 

RAISERROR errorNum, severity, state

 

Argumen pertama adalah nomor error, dan harus bernilai antara 50,001 s/d 2,147,483,648 karena kode error dibawah 50,001 adalah kode error dari SQL Server. Argumen kedua is tingkat kesa-

lahan, nilainya antara 1 sampai 18. Dan argumen terakhir adalah integer antara 1 sampai 127, yang dapat digunakan untuk mengembalikan informasi tambahan mengenai kesalahan yang terjadi.

 

4.5.3                   Fungsi-fungsi

Pada bagian ini, kita hanya akan bahas fungsi-fungsi yang didukung oleh T-SQL. Setiap aplikasi yang Anda gunakan memiliki fungsi-fungsi yang didukungnya sendiri. Fungsi dalam T-SQL dikelompokkan menjadi beberapa bagian antara lain:

  1. Manipulasi String

Fungsi-fungsi terkait manipulasi string adalah sebagai berikut:

-      ASCII(karakter), untuk mendapatkan nilai dari karakter

-      Char(nilai), kebalikan dari fungsi ASCII

-      CharIndex(pola, ekspresi), mengembalikan posisi dari hasil pertama dari pencarian argumen pertama dalam argumen kedua. Jika Anda mengenal Visual Basic, maka fungsi ini sama dengan IntStr().

-      Left(string,n), mengembalikan string dari kiri sejauh n karakter

-      Right(string,n), mengembalikan string dari kanan sejauh n karakter

-      Len(string), mengembalikan panjang string

-      DataLength(variabel), mengembalikan panjang dari variabel yang dideklarasikan

-      Lower(string), mengubah string menjadi huruf kecil

-      Upper(string), mengubah string menjadi huruf kapital

-      Ltrim(string), menghilangkan spasi di bagian kiri string

-      Rtrim(string), menghilangkan spasi di bagian kanan string

-      Space(n), menambah spasi sejumlah n

-      STR(float,n,dec), mengubah ekspresi float menjadi string sesuai dengan panjang karakter n dan dec untuk menentukan jumlah angka di belakang koma. Misalnya:

 

PRINT STR(3.14159, 4, 2) Hasilnya 3.14

 

-      Replace(string1,string2,string3), untuk mengganti setiap kesamaan string1 di dalam string2 dengan string3.

-      Replicate(karakter,n), untuk mengembalikan string baru dengan mengulang karakter sebanyak n-kali.

-      Reverse(string), membalikkan urutan karakter dari string

-      Substring(string,m,n), mengembalikan string yang diambil dari m sepanjang n. Sama dengan fungsi Mid() dalam Visual Basic

-      Nchar(nilai), mengembalikan karakter Unicode dari nilai

-      STUFF(string1,m,n,string2), mengganti bagian dari string1 mulai dari m sepanjang n dengan string2. Contoh:

 

DECLARE @s CHAR(30)

SET @s = “VB Programming”

SET @s = STUFF(@s,1,2,”SQL”)

PRINT @s

 

Yang tercetak adalah “SQL Programming”

-          QuoteName(string,quote_char), mengembalikan string Unicode dengan quote_char sebagai pemisah. Contoh:

 

QUOTENAME(‘Halim’, ‘”’)

 

Hasilnya adalah “Halim”

 

QUOTENAME(‘Halim’, ‘{’)

 

Hasilnya adalah {Halim}

‘@’ karakter ini tidak diperbolehkan.

 

  1. Fungsi Konversi

Fungsi-fungsi terkait konversi data adalah sebagai berikut:

-      Convert(tipedata,var,style), untuk mengkonversi tipe data dari var menjadi tipe data yang didefinisikan. Sedangkan argumen style untuk menentukan format tanggal ketika mengkonversi tipe data DateTime dan SmallDate.

-      Cast(variabel AS tipedata), untuk mengkonversi variabel atau nilai ke dalam tipe data yang ditentukan.

  1. Fungsi Tanggal dan Waktu

Fungsi-fungsi terkait dengan penanggalan dan waktu adalah sebagai berikut:

-      GetDate(), mengembalikan tanggal dan waktu saat ini dari mesin yang menjalankan SQL Server

-      DateAdd(interval,num,datetme), menambah nilai argumen datetime dengan interval yang diberikan. Nilai interval yang dapat digunakan ditunjukkan dalam tabel berikut:

Interval

Nilai

Range

year

yy, yyyy

1753–9999

quarter

qq, q

1–4

month

mm, m

1–12

dayofyear

dy, y

1–366

day

dd, d

1–31

week

wk, ww

1–53

weekday

Dw

1–7

hour

Hh

0–23

minute

mi, n

0–59

second

Ss

0–59

millisecond

Ms

0–999

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-          DateDiff(interval,datetime1,datetime2), untuk me-ngembalikan selisih antara datetime1 dan datetime2 dalam interval yang diberikan.

-          DatePart(interval,datetime), mengembalikan integer yang mewakili bagian dari datetime.

-          DateName(interval,datetime), mengembalikan nama dari bagian datetime. Contoh:

 

DateName(month, ‘31/05/2007’)

 

Hasilnya adalah May

 

-          Day(), Month(), Year(), mengembalikan hari, bulan dan tahun.

 

  1. Fungsi Lain

-      COALESCE(ekspresi1,ekspresi2, “), fungsi ini bertujuan untuk mengembalikan ekspresi pertama yang tidak null dalam daftar argumen yang diberikan. Misalnya Anda ingin mengetahui kolom yang isinya Null, maka Anda dapat melakukan dengan cara berikut:

 

SELECT nip, COALESCE(alamat, nama)

FROM Pegawai

 

-      IsNull(kolom,nilai), Jika argumen pertama tidak null maka yang dikembalikan adalah nilai dari argumen pertamanya. Bila null maka nilai dari argumen kedua yang dikembalikan. Misalnya:.

 

SELECT nama_barang, ISNULL(harga, 0.0)

FROM Barang

 

-      NullIf(ekspresi1,ekspresi2), jika kedua argumen bernilai sama maka yang dikembalikan adalah null. Jika berbeda maka argumen pertama yang dikembalikan.

Anda bisa membuat fungsi sendiri dengan perintah CREATE FUNCTION. Misalnya kita ingin membuat fungsi penjumlahan antara 2 angka, berikut contoh dalam PostgreSQL.

 

CREATE FUNCTION Plus(FLOAT, FLOAT) RETURNS FLOAT AS ’

BEGIN

RETURN $1 + $2;

END;’

SELECT Plus(5,8);

 

4.5.4                   Stored Procedure

Stored Procedure adalah kumpulan pernyataan SQL yang disimpan di server, sehingga dapat digunakan kapan saja untuk melakukan suatu perintah tertentu tanpa harus mendefinisi ulang perintah-perintah setiap data diperlukan. Setiap aplikasi mempunyai mekanisme masing-masing untuk membuat dan mengoperasikan prosedur. mySQL misalnya mengacu pada standar  SQL:2003 dan menggunakan sintaks yang sama dengan IBM DB2. Dan fitur stored procedure pada mySQL hanya didukung oleh mySQ Lversi 5 keatas. Lain pula dengan PostgreSQL yang memiliki caranya sendiri dimana lebih kearah object-oriented.

Mengapa prosedur dibutuhkan? Ada beberapa alasan yang baik untuk menjawab pertanyaan ini, antara lain:

-      Ketika beberapa aplikasi klien dari berbagai macam platform hendak melakukan operasi yang sama terhadap basis data.

-      Ketika keamanan menjadi prioritas utama. Prosedur memberikan konsistensi dan lingkungan yang aman dan semua prosedur dapat memastikan seluruh operasi tercatat dengan benar. Pengguna tidak memiliki akses secara langsung kedalam tabel-tabel di dalam basis data tetapi dapat menjalankan prosedur-prosedur yang telah didefinisikan sebelumnya.

-      Stored procedure meningkatkan kinerja dan efisiensi karena tidak membutuhkan pengiriman banyak informasi antara klien dan server.

-      Stored procedure dapat dieksekusi dari aplikasi lain diluar aplikasi SQL. (Reusable)

Sintaks untuk membuat stored procedure pada T-SQL adalah sebagai berikut:

 

CREATE PROCEDURE nama_prosedur

AS

{statements}

 

Sedangkan untuk menjalankan prosedur yang sudah buat adalah dengan sintaks:

 

EXEC nama_prosedur

 

Atau, cukup dengan memanggil nama prosedurnya saja.

Untuk mengubah stored procedure digunakan sintaks:

 

ALTER PROCEDURE nama_prosedur

AS

{statements}

 

Contoh:

 

USE Perusahaan

IF EXISTS (SELECT name FROM sysobjects

WHERE name = ‘CariPegawai’)

DROP PROCEDURE CariPegawai

GO

 

CREATE PROCEDURE CariPegawai

@Arg1 VARCHAR(99), @Arg2 VARCHAR(99),

AS

DECLARE @CariArg VARCHAR(999)

DECLARE @SQLStr VARCHAR(999)

SET @Arg1 = LTRIM(RTRIM(@Arg1))

SET @Arg2 = LTRIM(RTRIM(@Arg2))

SET @CariArg = “WHERE ”

IF LEN(@Arg1) > 0

SET @CariArg = @CariArg + “nama LIKE ‘%” +

@Arg1 + “%’ AND ”

IF LEN(@Arg2) > 0

SET @CariArg = @CariArg + “nama LIKE ‘%” +

@Arg2 + “%’ AND ”

IF @CariArg > 3

SET @CariArg = SUBSTRING(@CariArg, 1,

LEN(@CariArg)-4)

IF LEN(@CariArg) = 6

SET @SQLStr = “SELECT nama FROM Pegawai”

ELSE

SET @SQLStr = “SELECT nama FROM Pegawai ” +

@CariArg

EXECUTE (@SQLStr)

 

Untuk mengetes prosedur yang kita buat:

 

DECLARE @arg1 varchar(99)

DECLARE @arg2 varchar(99)

SET @arg1 = ‘Halim’

EXEC CariPegawai @arg1, @arg2

 

Meskipun @arg2 tidak diinisialisasi atau berisi null, Anda tetap harus mengirimkan 2 parameter tersebut.

 

4.5.5                   Penanganan Error

Penanganan error/kesalahan sangat dianjurkan dalam teknik pemrograman yang baik sehingga program yang Anda buat tidak mudah crash. Anda dapat menampilkan pesan kesalahan sesuai dengan kesalahan yang terjadi pada program Anda sehingga akan dapat lebih membantu pengguna untuk mendeteksi kesalahan yang terjadi sehingga memungkinkan untuk perbaikan segera.

Contoh:

DECLARE @err INT

INSERT Pegawai

VALUES(’10.10.5562’,’Halim’,’02.180/201.L’,

‘Pemuda No. 11’,’Jakarta’)

SET @err = @@ERROR

PRINT ‘Error No: ‘ + CONVERT(CHAR(10),@err)

SELECT * FROM Pegawai

GO

Jika tidak ada kesalahan yang terjadi maka Error No yang tercetak adalah 0.

 

Berikut adalah daftar nilai error yang dikembalikan oleh SQL Server.

 

 

 

 

4.6        Mengenal Cursor

Cursor dalam basis data hampir sama dengan fungsi cursor pada aplikasi komputer Anda, misalnya pada layar aplikasi pengolah kata. Ketika Anda menekan tombol { ¯ }, cursor bergeser ke bawah melalui setiap baris teks setiap kalinya. Demikian pula ketika Anda menekan tombol { ­ }, cursor bergerak ke atas baris demi baris. Atau ketika Anda menekan tombol { Page Up } dan { Page Down },  hasilnya cursor berpindah melampaui beberapa baris. Demikian halnya dengan cursor di dalam basis data. Konsepnya sama.

Cursor memungkinkan Anda untuk memilih sekelompok data (recordset), mengakses setiap baris data (record) sesuai dengan yang ditunjuk oleh cursor tersebut. Fungsi umum cursor lainnya adalah untuk menyimpan hasil query untuk digunakan kembali. Hasil dari operasi cursor adalah berasal dari hasil pernyataan SELECT. Jika aplikasi atau prosedur yang Anda buat memerlukan penggunaan sekelompok data secara berulang-ulang, maka Anda dianjurkan menggunakan cursor daripada Anda melakukan query (mengekstrak data) dari basis data secara berulang-ulang untuk data yang sama. Disamping itu, Anda juga dapat mengakses setiap data hasil query dengan cursor. Yang paling penting diingat dalam cursor adalah data didalamnya dan posisi cursor tersebut.

Berikut adalah urutan atau langkah-langkah ketika Anda ingin mengoperasikan cursor di dalam basis data :

1. Buat cursor terlebih dahulu.

Jika aplikasi yang Anda gunakan adalah Oracle, maka perintah untuk membuat cursor adalah

 

DECLARE nama_cursor CURSOR

FOR {SELECT command | statement_name | block_name}

Dalam Transact-SQL, perintah untuk membuat cursor adalah

 

DECLARE nama_cursor CURSOR [SCROLL|STATIC]

FOR select_statement

[FOR {READ ONLY | UPDATE [of column_name_list]}]

Contoh:

DECLARE cur_Pegawai CURSOR

FOR select * from Pegawai

GO

 

Hasilnya, Anda sekarang memiliki cursor dengan nama cur_Pegawai yang menampung semua data dari table Pegawai. Sebelum dapat digunakan Anda harus membuka cursor tersebut terlebih dahulu.

 

2. Buka cursor tersebut untuk digunakan di dalam prosedur atau aplikasi.

Pernyataan untuk membuka cursor adalah

 

OPEN nama_cursor

Contoh:

 

OPEN cur_Pegawai

GO

3. Ambil data record, baris demi baris hingga mencapai akhir record pada cursor.

Dalam hal ini, cursor memiliki 3 fungsi antara lain:

  1. Fungsi Foward Only (Cursor hanya bisa maju), Default.
  2. Fungsi Scroll (Cursor bisa maju mundur), … CURSOR SCROLL FOR …
  3. Cursor Static, … CURSOR STATIC FOR …

Untuk mengakses data di dalam cursor, kita menggunakan perintah FETCH. Dalam Transact-SQL sintaksnya adalah sebagai berikut:

 

FETCH [[NEXT|PRIOR|FIRST|LAST|

ABSOLUTE{n|@nvar}|

RELATIVE{n|@nvar}]

FROM]

{{[GLOBAL] nama_cursor}|@nama variabel cursor}

[INTO @nama variabel|[,...n]]

 

Pada sintaks diatas, Anda melihat beberapa argumen seperti NEXT, PRIOR, FIRST, LAST, dll. Berikut adalah penjelasan untuk masing-masing argumen tersebut :

 

  1. NEXT

Argumen NEXT merupakan argumen default. Jika Anda tidak mendefinisikan argumen apapun, maka argumen NEXT yang akan digunakan. Argumen NEXT mengembalikan hasil dalam bentuk baris record yang sedang aktif dan bergerak maju.

  1. PRIOR

Argumen PRIOR mengembalikan hasil dalam bentuk baris yang mendahului baris yang sedang aktif sedangkan baris yang sedang aktif tidak dikembalikan. Bila posisi cursor ada pada baris pertama dan Anda melakukan FETCH PRIOR, maka tidak ada hasil yang dikembalikan.

  1. FIRST

Sesuai dengan namanya, argumen ini mengembalikan baris pertama dalam cursor dan membuatnya aktif.

  1. LAST

Kebalikan dari argumen sebelumnya, argumen LAST mengembalikan baris terakhir dalam cursor dan membuatnya aktif.

  1. ABSOLUTE {n|@nvar}

Argumen ini mengembalikan nilai berdasarkan kondisi parameter n atau @nvar yang diberikan.

-      Jika n atau @nvar bernilai 0 maka tidak ada yang dikembalikan, n harus bertipe integer constant dan @nvar harus integer

-      Jika n atau @nvar bernilai positif maka baris yang dikembalikan adalah baris di depan cursor dan baris tersebut menjadi aktif

-      Jika n atau @nvar bernilai negatif maka baris yang dikembalikan adalah baris yang berada pada posisi sebelum akhir dari cursor dan baris tersebut menjadi aktif

  1. RELATIVE {n|@nvar}

Argumen ini mengembalikan nilai berdasarkan kondisi parameter n atau @nvar yang diberikan.

-      Jika n atau @nvar bernilai 0 maka yang dikembalikan adalah baris yang aktif, n harus bertipe integer constant dan @nvar harus integer

-      Jika n atau @nvar bernilai positif maka baris yang dikembalikan adalah baris setelah baris yang aktif dan baris tersebut menjadi aktif

-      Jika n atau @nvar bernilai negatif maka baris yang dikembalikan adalah baris yang mendahului baris yang aktif dan baris tersebut menjadi aktif

  1. g.    Global Cursor

Nama cursor yang diberi argumen GLOBAL akan merujuk ke suatu Global Cursor. @nama variabel cursor sendiri merupakan nama dari Open cursor dimana Fetch dibuat.

Contoh:

 

DECLARE @nip CHAR(10)

DECLARE @nama CHAR(30)

DECLARE @no_ktp CHAR(12)

DECLARE @alamat CHAR(40)

 

FETCH cur_Pegawai INTO @nip, @nama,

@no_ktp, @alamat

 

WHILE (@@fetch_status = 0)

BEGIN

PRINT @nip

PRINT @nama

PRINT @alamat

FETCH cur_Pegawai INTO @nip, @nama,

@no_ktp, @alamat

END

GO

 

4. Tutup cursor bila Anda sudah selesai menggunakannya.

Perintah untuk menutup sebuah cursor adalah

CLOSE nama_cursor

5. Dealokasi cursor tersebut untuk menghilangkannya.

Perintah untuk men-dealokasi sebuah cursor adalah

DEALLOCATE nama_cursor

Berikut adalah proses lengkap dari contoh penggunaan cursor diatas :

DECLARE @nip CHAR(10)

DECLARE @nama CHAR(30)

DECLARE @no_ktp CHAR(12)

DECLARE @alamat CHAR(40)

DECLARE cur_Pegawai CURSOR

FOR select * from Pegawai

OPEN cur_Pegawai

FETCH cur_Pegawai INTO @nip, @nama,

@no_ktp, @alamat

 

WHILE (@@fetch_status = 0)

BEGIN

PRINT @nip

PRINT @nama

PRINT @alamat

 

 

FETCH cur_Pegawai INTO @nip, @nama,

@no_ktp, @alamat

END

CLOSE cur_Pegawai

DEALLOCATE cur_Pegawai

GO

 

4.7        Trigger

Trigger adalah kode-kode logik yang didefinisikan agar dapat dieksekusi apabila terjadi suatu proses yang mengubah kondisi record dalam tabel baik oleh pernyataan INSERT, UPDATE maupun DELETE. Trigger biasanya digunakan untuk memeriksa nilai atau data dari sebuah record sebelum record tersebut dimasukkan ke dalam tabel. Jika Anda menggunakan Microsoft SQL Server, maka Anda akan mengenal yang namanya Instead of Trigger. Trigger jenis ini memungkinkan kita untuk mengubah kegiatan yang dilakukan apabila salah satu pengguna menjalankan suatu kegiatan tertentu.

Prosedur Trigger dilampirkan pada tabel tertentu. Kita lebih baik mengatur validasi dan kendali pada Trigger daripada melakukannya dalam aplikasi. Ada 3 perintah dasar yang terkandung dalam sebuah Trigger, yaitu:

  1. a.    Insert Trigger
  2. b.    Update Trigger
  3. c.    Delete Trigger

Contoh prosedur Trigger dengan PostgreSQL:

 

CREATE FUNCTION pgw_insupd() RETURNS OPAQUE AS ’

BEGIN

NEW.nama := UPPER (NEW.nama);

RETURN NEW;

END;’

LANGUAGE ’plpgsql’;

 

CREATE TRIGGER pegawaiInsUpd BEFORE INSERT OR UPDATE

ON pegawai FOR EACH ROW

EXECUTE PROCEDURE pgw_insupd();

INSERT INTO Pegawai (nip,nama)

VALUES (10.12.1568,’halim’);

SELECT * FROM pegawai;

 

Yang tersimpan dalam tabel Pegawai adalah HALIM bukan halim.

 

Jika Anda menggunakan T-SQL pada SQL Server maka prosedur Trigger dapat dibuat dari Query Analyzer maupun Enterprise Manager. Adapun sintaks T-SQL untuk membuat trigger adalah :

 

CREATE TRIGGER nama_trigger

ON nama_tabel

 

 

FOR [INSERT|UPDATE|DELETE]

AS

{statements}

nama_tabel adalah nama tabel dimana prosedur trigger hendak dibuat. FOR menunjukkan perintah yang akan mengaktifkan trigger. Jika Anda menggunakan  perintah INSERT, maka trigger akan dijalankan bila ada perintah INSERT yang dijalankan pada tabel yang bersangkutan. Jika menggunakan perintah UPDATE maka trigger akan dijalankan bila ada pengguna yang menggunakan perintah UPDATE pada tabel yang mengandung trigger tersebut. Demikian halnya dengan perintah DELETE. Jika ada yang menghapus data dari tabel bersangkutan maka trigger akan dijalankan. AS menandai awal badan trigger yang berisi pernyataan-pernyataan yang akan dijalankan disaat trigger aktif.

 

Perintah-perintah dalam T-SQL yang tidak boleh dipergunakan dalam Trigger  adalah:

 

-      CREATE DATABASE

-      CREATE PROC

-      CREATE DEFAULT

-      CREATE INDEX

-      CREATE TABLE

-      CREATE VIEW

-      CREATE RULE

-      LOAD LOG

-      RESTORE LOG

-      DISK RESIZE

-      DISK INIT

-      ALTER DATABASE

-      ALTER TABLE

-      ALTER VIEW

-      ALTER PROCEDURE

-      DROP DATABASE

-      DROP TABLE

-      DROP PROCEDURE

 

 

Contoh prosedur Trigger  sederhana dengan T-SQL:

CREATE TRIGGER delPegawai ON pegawai

FOR DELETE

AS

PRINT ‘DELETE Berhasil’

GO

DELETE Pegawai WHERE nip=’10.10.5269’

 

Jika operasi DELETE berhasil maka ‘DELETE Berhasil’ akan tercetak dilayar.

Contoh prosedur Trigger lain dengan T-SQL:

 

USE Perusahaan

IF EXISTS (SELECT name FROM sysobjects

WHERE name = ‘peg_insupd’ AND type = ‘TR’)

DROP TRIGGER peg _insupd

GO

CREATE TRIGGER peg_insupd ON Pegawai

FOR INSERT, UPDATE

AS

DECLARE @tk_min TINYINT,

@tk_maks TINYINT,

@tk_peg TINYINT,

@kd_pek SMALLINT

SELECT @tk_min = tk_min,

@tk_maks = tk_maks,

@tk_peg = i.tk_pek,

@kd_pek = i.kd_pek

FROM Pegawai p INNER JOIN inserted i ON p.nip = i.nip

JOIN Pekerjaan k ON k.kd_pek = i.kd_pek

IF NOT (@tk_peg BETWEEN @tk_min AND @tk_maks)

BEGIN

RAISERROR (‘Tingkat Pegawai untuk Kode Pekerjaan:%d harus bernilai antara %d dan %d.’,

16, 1, @kd_pek, @tk_min, @tk_maks)

ROLLBACK TRANSACTION

END

 

Pada SQL Server, dikenal pula yang namanya Instead of Trigger. Jenis trigger ini memungkinkan kita untuk mendefinisikan trigger pada sebuah view. Namun, tidak diperbolehkan pada pada view yang menyertakan CHECK OPTION. Pada Instead of trigger, DELETE tidak diperbolehkan pada tabel yang memiliki relasi dengan jenis ON DELETE CASCADE. Demikian halnya juga dengan perintah UPDATE tidak diizinkan pada tabel yang berhubungan dengan relasi ON UPDATE CASCADE.

Misalnya kita ingin melakukan INSERT data pada sebuah tabel. Tentu saja kita tidak bisa memasukkan dua data dengan primary key yang sama. Bila ternyata nilai yang kita masukkan sebagai PK telah ada, maka akan muncul peringatan kesalahan. Untuk menghindari hal ini, kita dapat menggunakan Instead of Trigger untuk memproses data tersebut:

CREATE TABLE tabelTes

(

id_tes INT NOT NULL PRIMARY KEY,

ket_tes VARCHAR(20) NOT NULL

)

GO

 

CREATE TRIGGER trig_tes ON tabelTes

INSTEAD OF INSERT

AS

IF @@ROWCOUNT = 0

RETURN

UPDATE t –- jika id sudah ada

SET

ket_tes = i. ket_tes

FROM

inserted i

JOIN

tabelTes t ON t.id_tabel = i.id_tabel

 

INSERT tabelTes

SELECT id_tabel, ket_tes

FROM

inserted i

WHERE NOT EXISTS ( SELECT * FROM tabelTes t

WHERE t.id_tabel = i.id_tabel )

GO

 

 

 

4.8        Transaksi Dengan Commit dan Rollback

Transaksi adalah sekumpulan operasi pada basis data yang harus berhasil atau gagal secara keseluruhan. Artinya prosesnya tidak boleh setengah-setengah melainkan harus satu kesatuan. Dengan kata lain, sebuah transaksi hanya memiliki 2 pilihan berhasil atau gagal. Suatu transaksi dinyatakan berhasil apabila semua operasi di dalam transaksi tersebut berhasil dieksekusi sedangkan suatu transaksi dinyatakan gagal apabila salah satu saja operasi di dalam transaksi tersebut gagal.

 

Perubahan data hanya disimpan apabila transaksi berhasil secara keseluruhan. Jika transaksi gagal, maka perubahan yang terjadi pada data di dalam tabel yang bersangkutan akan diisi kembali dengan nilai yang semula sehingga tidak mengganggu integritas dan konsistensi data.

 

Dengan kata lain, sebuah transaksi hanya akan melakukan proses terhadap semua perubahan yang terjadi atau tidak sama sekali. Setelah eksekusi, sistem harus selalu berada dalam kondisi yang valid.

 

Transaksi memiliki empat karakteristik dasar yang sering disebut ACID. Keempat karakteristik tersebut antara lain:

  1. A = Atomicity

Sebuah transaksi berhasil diselesaikan dengan sempurna atau berhasil dikembalikan pada kondisi semula.

  1. C = Consistency

Sistem berada pada kondisi baru yang valid atau tetap berada pada kondisi sebelum transaksi dilakukan.

  1. I = Isolation

Transaksi dipisahkan dari yang lainnya selama pemrosesan.

  1. D = Durability

Sistem akan selalu berada pada kondisi yang valid meskipun terjadi kegagalan pada sistem.

 

SQL mengimplementasikan transaksi dengan tiga pernyataan antara lain sebagai berikut:

  1. BEGIN TRANSACTION

Pernyataan ini menandai awal sebuah transaksi. Jika transaksi yang dikerjakan gagal, maka tabel akan dikembalikan ke kondisi dimana pernyataan BEGIN TRANSACTION didefinisikan. Basis data akan dikembalikan pada kondisi sebelum transaksi dilakukan mengabaikan semua perubahan yang telah dilakukan oleh aplikasi Anda jika transaksi tidak berhasil sepenuhnya.

  1. COMMIT TRANSACTION

Pernyataan ini digunakan apabila seluruh transaksi telah berhasil dijalankan. Biasanya ditempatkan pada akhir transaksi. Ketika pernyataan COMMIT dijalankan, maka seluruh perubahan terhadap data dalam basis data yang dilakukan oleh aplikasi sejak ekseskusi pernyataan BEGIN TRANSACTION akan dilakukan dan basis data terperbaharui dengan data yang baru dimana pengembalian data ke kondisi semula tidak dimungkinkan lagi. Anda dapat melakukan undo atas perubahan-perubahan tersebut tetapi tidak lagi dalam bagian sebuah transaksi.

  1. ROLLBACK TRANSACTION

Pernyataan ini menandai akhir dari transaksi yang gagal. Ketika pernyataan ini dijalankan, basis data dikembalikan ke kondisi dimana ketika pernyataan BEGIN TRANSACTION dijalankan, Anggapannya pernyataan-pernyataan diantara pernyataan BEGIN TRANSACTION dan ROLLBACK TRANSACTION seolah-olah tidak pernah dijalankan sama sekali.

Fungsi pernyataan COMMIT dan ROLLBACK sangat penting untuk menjaga integritas dan konsistensi data dalam basis data.

Kode berikut menunjukkan bagaimana pernyataan yang berhubungan dengan transaksi digunakan dalam sebuah batch.

 

 

BEGIN TRANSACTION

{T-SQL statement}

IF @@ERROR <> 0

BEGIN

ROLLBACK TRANSACTION

RETURN –100

END

{T-SQL statement}

IF @@ERROR <> 0

BEGIN

ROLLBACK TRANSACTION

RETURN –101

END

COMMIT TRANSACTION

{T-SQL statements}

 

Kode error –100 dan –101 mengidentifikasi kondisi kesalahan. Setelah setiap operasi Anda harus memeriksa nilai dari variabel @@ERROR. Jika nilainya bukan 0, berarti  telah terjadi kesalahan dan Anda harus melakukan Rollback pada transaksi yang sedang dijalankan. Jika bernilai 0 artinya tidak ada kesalahan dan Anda dapat melakukan Commit pada transaksi sehingga semua perubahan dapat disimpan.

 

Transaksi sering juga disebut dengan LUW (Logical Unit of Work). Dalam hal ini, juga ada perbedaan perintah dan fitur dari beberapa aplikasi SQL, misalnya Oracle dan Sybase menyediakan fasilitas SAVEPOINT pada transaksi atau sering disebut semi-commit. Jadi, sekali lagi perintah DDL dan DML dalam pembahasan ini sangat tergantung pada aplikasi yang digunakan.

 

 

Berikut adalah contoh penanganan transaksi dengan commit dan rollback dengan T-SQL pada SQL Server:

Misalnya dalam perbankan, asumsi terdapat 3 buah tabel yaitu tabel nasabah, tabungan dan rekening. Dan kita ingin membuka rekening baru.

 

CREATE TABLE Nasabah

(

nid INT NOT NULL PRIMARY KEY,

nama VARCHAR(20) NOT NULL,

alamat VARCHAR(30) NOT NULL

)

GO

 

CREATE TABLE Rekening

(

nid INT NOT NULL PRIMARY KEY,

tid INT NOT NULL PRIMARY KEY

)

GO

 

CREATE TABLE Tabungan

(

tid INT NOT NULL PRIMARY KEY,

jum_tbgn MONEY NOT NULL

)

GO

 

BEGIN TRANSACTION nasabah_baru

INSERT Nasabah VALUES (1, “Halim”, “Pemuda No. 11″)

IF EXISTS(SELECT * FROM Nasabah WHERE nama = “Halim”)

BEGIN

BEGIN TRANSACTION

INSERT Tabungan VALUES(2, 100000)

END

ELSE

 

ROLLBACK TRANSACTION

IF EXISTS(SELECT * FROM Tabungan WHERE tid = 2)

BEGIN

BEGIN TRANSACTION

INSERT Rekening values(1, 2)

END

ELSE

 

ROLLBACK TRANSACTION

IF EXISTS (SELECT * FROM Rekening WHERE nid = 1 AND tid = 2)

COMMIT TRANSACTION

ELSE

ROLLBACK TRANSACTION

GO

 

 

 

 

 

 

 

 

 

 

 

 


BAB V

SUMBER – SUMBER YANG DIPERLUKAN

UNTUK PENCAPAIAN KOMPETENSI

 

5.1        Sumber Daya Manusia

Dalam proses pencapaian kompetensi sumber yang dapat diandalkan adalah sumber daya manusia. Sumber daya manusia yang dimaksud disiini adalah orang-orang yang dapat mendukung proses pencapaian kompetensi yang dimaksud, antara lain:

  • Pembimbing

Pembimbing Anda merupakan orang yang dapat diandalkan karena beliau memiliki pengalaman. Peran Pembimbing adalah untuk :

  1. Membantu Anda untuk merencanakan proses belajar.
  2. Membimbing Anda melalui tugas-tugas pelatihan yang dijelaskan dalam tahap belajar.
  3. Membantu Anda untuk memahami konsep dan praktik baru dan untuk menjawab pertanyaan Anda mengenai proses belajar Anda.
  4. Membantu Anda untuk menentukan dan mengakses sumber tambahan lain yang Anda perlukan untuk belajar Anda.
  5. Mengorganisir kegiatan belajar kelompok jika diperlukan.
  6. Merencanakan seorang ahli dari tempat kerja untuk membantu jika diperlukan.

Penilai

Penilai Anda melaksanakan program pelatihan terstruktur untuk penilaian di tempat kerja. Penilai akan :

  1. Melaksanakan penilaian apabila Anda telah siap dan merencanakan proses belajar dan penilaian selanjutnya dengan Anda.
  2. Menjelaskan kepada Anda mengenai bagian yang perlu untuk diperbaiki dan merundingkan rencana pelatihan selanjutnya dengan Anda.

 

  1. Mencatat pencapaian / perolehan Anda.

 

Teman kerja/sesama peserta pelatihan

Teman kerja Anda/sesama peserta pelatihan juga merupakan sumber dukungan dan bantuan. Anda juga dapat mendiskusikan proses belajar dengan mereka. Pendekatan ini akan menjadi suatu yang berharga dalam membangun semangat tim dalam lingkungan belajar/kerja Anda dan dapat meningkatkan pengalaman belajar Anda.

 

5.2        Literatur

Disamping dengan belajar dengan orang-orang seperti yang disebutkan diatas, Anda tentu perlu juga terus menambah wawasan dan pengetahuan

 

Anda dari sumber-sumber bacaan seperti buku-buku yang berkaitan dengan kompetensi yang Anda pilih, jurnal-jurnal, majalah, dan sebagainya.

 

Literatur dalam hal ini tentu bukan saja material berupa bacaan atau buku melainkan termasuk pula material-material lainnya yang menjadi pendukung proses pembelajaran ketika peserta pelatihan sedang menggunakan Pedoman Belajar ini. Misalnya rekaman dalam bentuk kaset, videp, dan sebagainya.

 

Buku referensi, lembar kerja, tugas-tugas kerja juga dapat digunakan dalam proses pencapaian kompetensi. Peserta boleh mencari dan menggunakan sumber-sumber alternatif lain yang lebih baik atau sebagai pendukung tambahan atau jika ternyata sumber-sumber yang direkomendasikan dalam pedoman belajar ini tidak tersedia/tidak ada.

 

Untuk referensi mengenai materi-materi yang dapat digunakan, Anda dapat melihat dari Daftar Pustaka yang terlampir dihalaman terakhir modul ini.

 

5.3        Daftar Peralatan/mesin dan Bahan

 

Dalam pelatihan ini, tidak ada peralatan khusus yang dibutuhkan. Yang diperlukan hanya aplikasi SQL dan seperangkat komputer yang dapat menjalankan atau memenuhi prasyarat minimal aplikasi SQL bersangkutan yang Anda gunakan.

Misalnya Microsoft SQL Server (2005). Untuk aplikasi ini Anda membutuhkan perangkat komputer dengan prasyarat sebagai berikut:

-      Sistem operasi minimal Windows 2000, XP, Server 2003 atau Vista

-      Pentium III-compatible processor (min. 600MHz) atau yang lebih tinggi

-      Memori min. 512 MB, dianjurkan 1 GB atau lebih

-      Untuk instalasi awal atau upgrade ke SQL Server 2005, Anda harus memiliki space harddisk sebesar 2 GB pada drive sistem Anda. Kebutuhan besar media penyimpanan tergantung pada konfigurasi sistem dan fitur yang hendak Anda install.

Tabel berikut menyajikan jumlah kebutuhan media penyimpanan untuk masing-masing fitur SQL Server 2005.

Fitur

Disk Space Req.

Database Engine and data files, Replication, and Full-Text Search

280 MB

Analysis Services and data files

90 MB

Reporting Services and Report Manager

120 MB

Notification Services engine components, client components, and rules components

50 MB

Integration Services

120 MB

Client Components

850 MB

SQL Server Books Online and SQL Server 2005 Compact Edition Books Online

240 MB

Samples and sample databases. Note that samples and sample databases are not installed by default.

410 MB

5.4        Lain-lain

Untuk memahami penggunaan DDL dan DML dalam penerapan prosedur, trigger dan transaksi Anda tentu membutuhkan contoh-contoh penerapan langsung pada aplikasi-aplikasi SQL yang Anda gunakan. Perintah-perintah dan fitur-fitur yang ditawarkan oleh masing-masing aplikasi tentu bervariasi. Seperti yang telah saya tekankan dari awal, disini kita hanya membahas perihal konsep prosedur, trigger dan transaksi secara umum.

 

Aplikasi yang digunakan boleh berbeda namun konsep yang terkandung didalamnya adalah sama dan serupa. Analoginya seperti bahasa pemrograman. Landasan utama dalam pemrograman bukan terletak pada bahasa yang digunakan tetapi pada konsep dan algoritma pemrograman. Dari konsep dan logika yang kita kuasai, bahasa pemrograman apapun yang kita gunakan tidak menjadi masalah. Kita hanya perlu sedikit waktu untuk mempelajari sintaks-sintaks dalam bahasa tersebut. Sama halnya dengan SQL, kita hanya perlu mencari tahu sintaks-sintaks  sesuai dengan aplikasi yang digunakan.

 

Adapun beberapa aplikasi SQL yang umum digunakan saat ini dan mendukung penerapan prosedur, trigger dan transaksi adalah sebagai berikut:

  1. Microsoft SQL Server 7, 2000 atau 2005 (Transact SQL)
  2. Oracle RDBMS SQL
  3. IBM DB2
  4. MySQL 5.0.2 keatas
  5. PostgreSQL (PL/SQL)
  6. Sybase SQL

 

 

 

 

 

DAFTAR PUSTAKA

 

  • Bennett Wm, McEwan, David Solomon. Teach Yourself Transact-SQL in 21 Days . MacMillan Publishing
  • Forta Ben. Teach Yourself SQL in 10 Minutes. SAMS Publishing
  • Luers Tom, Timothy Atwood, Jonathan Gennick. Teach Yourself PL/SQL in 21 Days. SAMS Publishing
  • PostgreSQL, Programmer’s Guide
  • Momjian, Bruce, PostgreSQL: Introduction and Concepts
  • MySQL 5, Reference Manual
  • SQL Server 2000 in Microsoft Development Network (MSDN)
  • Website:
    • http://www.sqlmag.com/
    • http://www.w3schools.com/
    • http://msdn.microsoft.com/
    • http://www.orafaq.com/
    • http://www.mysql.com/

 

Testimoni

Advertisement
  1. Toko Kain Batik Cap Terbaik di Solo
  2. Toko Baju Batik Terbaik di Solo
  3. Aneka Kain Batik dengan Harga Murah
  4. Baju Batik Sarimbit Terbaik
  5. Dapatkan Kain Batik Berkualitas dengan Diskon 25%
  6. Aneka Baju Batik Seragam Kantor
  7. Pembuatan Seragam Batik Berlogo
slideseragambatik
Filed under : blog, tags: