Popular Posts

Blogger templates

Blogger news

Blogroll

About

Buscar

Cari Blog Ini

PROSEDUR DATABASE

 PROSEDUR DATABASE 1. Pengertian           Prosedur dalam database (atau Stored Procedure) adalah sekumpulan perintah atau pernyataan SQL ya...

Rabu, 07 Januari 2026

 PROSEDUR DATABASE

1. Pengertian

        Prosedur dalam database (atau Stored Procedure) adalah sekumpulan perintah atau pernyataan SQL yang disimpan di server database dan dapat dieksekusi berulang kali untuk menjalankan tugas tertentu secara efisien, seperti validasi data, otomatisasi, atau pemrosesan kompleks, sehingga meningkatkan kinerja, keamanan, dan modularitas aplikasi. Prosedur memungkinkan logika bisnis dijalankan langsung di server, mengurangi lalu lintas jaringan, dan dapat menerima input serta mengembalikan output. 

Tugas :

-Buat tabel dosen

-nama

-id

-alamat 3 kolom (provinsi, kab, kecamatan)

-tgl lahir


buat prosedur untuk menampilkan semua data dan buat kolom baru yaitu umur. jadi umur akan terisi      dengan tahun sekarang dikurangi tahun lahir.

buat prosedur untuk mencari alamat dengan 2 parameter (kec/kab/prov) (nama alamat yang dicari)

Jawab :

1. Buka XAMPP, aktifkan MySQL dan buka phpMyAdmin
2. Buat database semisal namanya "univ" dan dalam database tersebut buat tabel dengan nama "dosen"
3. Berikut isi kolom dalam tabel tersebut :
4. Lalu isi data pada setiap kolom itu, contoh :


5. Langkah berikutnya kita akan buat prosedur untuk tabel dosennya. Berikut prosedurnya :

PROSEDUR 1

Berikut ini adalah contoh prosedur yang saya buat :



Berikut ini SQL dalam prosedur tersebut :




Klik tombol "Go" . Nanti akan ada perintah untuk mengisi parameter


Sebagai contoh , untuk parameter jenis nya saya isi "Provinsi" dan parameter nama nya saya isi "Jawa Barat". Klik "Go" maka hasil  nya akan sebagai berikut :


Perintah SQL tersebut menampilkan dosen yang berkependudukan di Provinsi Jawa Barat.

Catatan : Untuk parameternya jenis bisa diisi dengan Kecamatan dan Kabupaten juga.


PROSEDUR 2

Berikut ini adalah contoh kedua dari prosedur yang saya buat :




Berikut ini SQL dalam prosedur tersebut :


Klik tombol "Go" dan SQL tersebut akan menampilkan seperti :


Perintah SQL tersebut menampilkan semua data dosen dan beserta umurnya berdasarkan kolom tgl_lahir dikurangi tahun sekarang.













Rabu, 26 November 2025

DATABASE ARSIP PERUSAHAAN


            Apa itu arsip perusahaan? Database arsip perusahaan adalah sistem atau platform yang menyimpan data penting yang jarang diakses, seperti catatan keuangan lama, komunikasi internal, dan data pelanggan, untuk digunakan di masa depan.

            Dalam kasus ini, saya membuat database bank , berikut tabel tabel yang dibutuhkan dalam pembuatan tabel :

            Tabel arsip berisi tentang data-data arsip seperti id_arsip , nama_arsip, jenis_arsip, dan nomor_arsip. Tabel ini akan direlasikan dengan tabel departemen untuk menyesuaikan antara jenis departemen dengan jenis arsip.



 

Rabu, 10 September 2025

Penerapan Trigger di MySql

            Dibawah ini adalah beberapa contoh penerapan Trigger pada MySql ;

1. Menghitung Total Harga Barang 


kode tersebut berfungsi untuk menghitung total harga ketika saya memasukkan  data di dalam tabel transaksi.


2. Mengembalikan Nilai Stok Barang Ketika Transaksi Batal



    Kode di atas adalah sebuah perintah untuk mengembalikan total stok yang ada di tabel barang ketika saya menghapus data di tabel transaksi.

3. Mengurangi Total Stok pada Tabel Barang





                 
Kode di atas adalah sebuah perintah untuk mengurangi total stok yang ada di tabel barang ketika saya menambah data di tabel transaksi berdasarkan quantity (jumlah_barang) di transaksi.


4.  Mengupdate Stok yang ada pada Tabel Barang



                Kode di atas adalah perintah untuk mengubah stok dan kode yang ada di transaksi jika saya meng edit data yang ada pada transaksi.


TRIGGER 

MySQL

1. Pengertian



            Trigger adalah sebuah prosedur yang otomatis dijalankan (diekseskusi) oleh sistem database ketika terjadi suatu peristiwa tertentu pada tabel atau view. Peristiwa tersebut biasanya berupa INSERT, UPDATE, atau DELETE.
Dengan kata lain, trigger adalah mekanisme event-driven yang memungkinkan database untuk melakukan aksi secara otomatis tanpa perlu dipanggil secara manual oleh pengguna.

Contoh sederhana:

Jika kita punya tabel penjualan, maka setiap kali ada data transaksi baru dimasukkan, trigger dapat digunakan untuk otomatis mengurangi stok barang pada tabel persediaan.

2. Fungsi dan manfaat 

Trigger sangat berguna dalam manajemen database, di antaranya:

  1. Menjaga konsistensi data (data integrity)

    • Misalnya, setiap transaksi penjualan langsung mengurangi jumlah stok.

  2. Mengotomatisasi proses

    • Mengurangi pekerjaan manual dengan menjalankan prosedur otomatis.

  3. Mencegah kesalahan

    • Bisa menolak atau membatalkan operasi yang tidak sesuai aturan.

  4. Mencatat log perubahan data (audit trail)

    • Trigger bisa menyimpan data lama ke tabel log ketika terjadi update atau delete.

  5. Meningkatkan keamanan

    • Bisa membatasi operasi tertentu hanya jika memenuhi syarat tertentu.

3. Jenis - jenis Trigger

Trigger dibedakan berdasarkan waktu dan aksi yang memicunya:

a. Berdasarkan Waktu Eksekusi

  1. BEFORE Trigger

    • Dieksekusi sebelum operasi INSERT, UPDATE, atau DELETE dilakukan.

    • Berguna untuk validasi data sebelum masuk ke tabel.

  2. AFTER Trigger

    • Dieksekusi setelah operasi selesai dilakukan.

    • Berguna untuk mencatat perubahan data ke tabel log atau melakukan proses lanjutan.

b. Berdasarkan Peristiwa (Event)

  1. INSERT Trigger → aktif saat data baru ditambahkan.

  2. UPDATE Trigger → aktif saat data diubah.

  3. DELETE Trigger → aktif saat data dihapus.


4. Sintaks Dasar Trigger (MySQL)


Keterangan:

  • nama_trigger → nama dari trigger yang dibuat.

  • BEFORE/AFTER → menentukan kapan trigger dijalankan.

  • INSERT/UPDATE/DELETE → jenis aksi yang memicu trigger.

  • FOR EACH ROW → trigger berlaku untuk setiap baris data yang terkena operasi.


5. Contoh Implementasi Trigger

a. Trigger untuk Otomatis Mengurangi Stok Barang




Penjelasan:

  • Trigger ini berjalan setelah ada data baru di tabel penjualan.

  • NEW.jumlah dan NEW.id_barang merepresentasikan data yang baru dimasukkan.

  • Stok barang akan otomatis berkurang sesuai jumlah yang terjual.


b. Trigger untuk Mencatat Log Data yang Dihapus




Penjelasan:

  • Trigger ini berjalan sebelum data karyawan dihapus.

  • Data lama (OLD) akan disimpan ke tabel log_karyawan agar ada catatan riwayat.

6. Kelebihan dan Kekurangan Trigger

✅ Kelebihan

  • Otomatis: mengurangi pekerjaan manual.

  • Menjaga integritas data dengan baik.

  • Membantu membuat audit trail.

  • Dapat digunakan untuk validasi data secara konsisten.

❌ Kekurangan

  • Bisa menyulitkan debugging jika terlalu banyak trigger.

  • Menambah beban kerja pada server database.

  • Aksi yang otomatis terkadang membuat pengguna tidak sadar ada proses tambahan.

  • Susah dilacak jika trigger saling memanggil (nested trigger).


7. Kesimpulan

            Trigger pada database adalah fitur penting yang memungkinkan sistem menjalankan prosedur secara otomatis ketika terjadi perubahan data. Dengan trigger, kita dapat menjaga integritas data, mengurangi kesalahan, dan mengotomatisasi berbagai proses. Namun, penggunaannya perlu hati-hati agar tidak menambah beban server atau menyulitkan pemeliharaan.

Minggu, 07 September 2025

 JOIN DATABASE

1. Pengertian 



          Dalam basis data relasional, JOIN adalah perintah SQL untuk menggabungkan dua atau lebih tabel berdasarkan kolom yang saling terkait untuk mendapatkan satu set data yang lebih lengkap dan komprehensif. Ini memungkinkan Anda mengambil informasi dari tabel yang berbeda dalam satu kueri, yang sangat penting untuk menganalisis data dan membuat keputusan yang lebih baik.
            Dalam pengelolaan basis data relasional, data biasanya disimpan dalam beberapa tabel yang saling berhubungan melalui primary key dan foreign key. Untuk menggabungkan data dari dua atau lebih tabel berdasarkan kolom yang saling terkait, digunakan perintah JOIN.

Dengan JOIN, kita dapat menampilkan informasi yang lebih lengkap, tanpa harus menyimpan data yang sama berulang kali dalam satu tabel.


2. Jenis-jenis

1. INNER JOIN



            INNER JOIN adalah jenis JOIN dalam SQL yang digunakan untuk menggabungkan dua atau lebih tabel berdasarkan kondisi tertentu, biasanya menggunakan kolom kunci (primary key dan foreign key).
INNER JOIN hanya akan menampilkan baris data yang memiliki kecocokan (matching) di kedua tabel. Jika tidak ada data yang cocok, baris tersebut tidak akan ditampilkan.

2. LEFT JOIN



            LEFT JOIN adalah jenis join dalam SQL yang menampilkan semua data dari tabel kiri, sedangkan data dari tabel kanan hanya ditampilkan jika ada kecocokan. Jika tidak ada kecocokan, maka nilai dari tabel kanan akan bernilai NULL. LEFT JOIN biasanya digunakan untuk menampilkan seluruh data utama, meskipun tidak memiliki pasangan data pada tabel lain.

3. RIGHT JOIN


             RIGHT JOIN adalah jenis join dalam SQL yang menampilkan semua data dari tabel kanan, sedangkan data dari tabel kiri hanya ditampilkan jika ada kecocokan. Jika tidak ada kecocokan, maka nilai dari tabel kiri akan bernilai NULL. RIGHT JOIN biasanya digunakan ketika kita ingin menampilkan seluruh data dari tabel kedua, meskipun tidak memiliki pasangan data pada tabel pertama.

4. FULL JOIN



            FULL JOIN atau FULL OUTER JOIN adalah jenis join dalam SQL yang menampilkan semua data dari tabel kiri dan tabel kanan. Jika ada kecocokan, data akan digabungkan, tetapi jika tidak ada kecocokan, maka nilai dari kolom yang tidak memiliki pasangan akan bernilai NULL. Dengan kata lain, FULL JOIN menggabungkan hasil dari LEFT JOIN dan RIGHT JOIN sehingga menampilkan semua data dari kedua tabel, baik yang cocok maupun yang tidak cocok.

3. Kesimpulan

Berdasarkan pembahasan mengenai JOIN pada database, dapat disimpulkan bahwa:

  1. JOIN merupakan perintah SQL yang berfungsi untuk menggabungkan data dari dua atau lebih tabel yang saling berhubungan melalui kolom tertentu. Dengan adanya JOIN, pengambilan data menjadi lebih efisien dan terstruktur tanpa harus menyimpan data berulang pada satu tabel.

  2. Terdapat beberapa jenis JOIN yang memiliki fungsi berbeda, yaitu:

    • INNER JOIN hanya menampilkan data yang memiliki kecocokan pada kedua tabel.

    • LEFT JOIN (LEFT OUTER JOIN) menampilkan seluruh data dari tabel kiri, meskipun tidak ada pasangan di tabel kanan.

    • RIGHT JOIN (RIGHT OUTER JOIN) menampilkan seluruh data dari tabel kanan, meskipun tidak ada pasangan di tabel kiri.

    • FULL OUTER JOIN menampilkan semua data dari kedua tabel, baik yang cocok maupun tidak cocok (namun tidak semua DBMS mendukung perintah ini).

    • CROSS JOIN menghasilkan gabungan kartesius, yaitu setiap baris dari tabel pertama dipasangkan dengan setiap baris dari tabel kedua.

  3. Perbedaan utama antara jenis-jenis JOIN terletak pada prioritas tabel yang ditampilkan. LEFT JOIN memprioritaskan tabel kiri, RIGHT JOIN memprioritaskan tabel kanan, sementara FULL OUTER JOIN menggabungkan keduanya.

  4. Pemilihan jenis JOIN harus disesuaikan dengan kebutuhan query:

    • Jika hanya membutuhkan data yang cocok → gunakan INNER JOIN.

    • Jika tetap ingin menampilkan semua data meskipun tidak ada pasangan → gunakan LEFT JOIN atau RIGHT JOIN.

    • Jika ingin seluruh data dari kedua tabel → gunakan FULL OUTER JOIN.

  5. Dengan memahami dan menerapkan jenis-jenis JOIN, pengelolaan database relasional dapat dilakukan lebih efektif, efisien, serta mampu menghasilkan informasi yang lengkap sesuai kebutuhan analisis.





Minggu, 24 Agustus 2025

 NORMALISASI DATABASE

1. Pengertian Normalisasi

           Apa itu Normalisasi database?, Normalisasi database adalah proses sistematis untuk mengorganisir data dalam database agar mengurangi redundansi (pengulangan data) dan meningkatkan integritas data. Proses ini dilakukan dengan membagi tabel besar menjadi tabel-tabel yang lebih kecil dan mendefinisikan relasi antar tabel tersebut.

Normalisasi bertujuan untuk memastikan bahwa setiap data disimpan hanya sekali dan pada tempat yang tepat, serta untuk menghindari anomali dalam operasi basis data seperti inserion, deletion, dan update.


2. Tujuan Normalisasi

  1. Mengurangi redundansi data: Menghindari pengulangan informasi yang sama di banyak tempat.

  2. Meningkatkan integritas data: Menjaga konsistensi dan keakuratan data.

  3. Memudahkan pemeliharaan database: Perubahan struktur dan isi database menjadi lebih mudah dilakukan.

  4. Meningkatkan efisiensi query: Database yang terstruktur baik dapat mempercepat eksekusi perintah SQL.

  5. Mendukung konsistensi logika bisnis: Memisahkan data berdasarkan fungsi dan hubungan logis.

3. Bentuk-Bentuk Normalisasi (Normal Forms)

Normalisasi dilakukan secara bertahap melalui berbagai bentuk normal atau Normal Form (NF). Berikut adalah bentuk-bentuk normal yang umum digunakan:

1. None Normal Form (0 NF)

Contoh 0 NF : 


Penjelasan :
            0 NF adalah bentuk mentah dari sebuah database yang belum di normalisasikan . Database ini biasanya masih berisi nilai ganda , grup berulang , dan tidak atomik. Ciri - ciri :

- Kolom berisi lebih dari satu nilai (multivalue).
-Tidak ada struktur kunci utama yang jelas.
-Rentan terhadap anomali data.

2. First Normal Form (1 NF)

Contoh 1 NF :

Penjelasan : 
            1 NF adalah bentuk normal pertama dalam normalisasi database yang memastikan bahwa Setiap kolom hanya menyimpan satu nilai (data atomik), Tidak ada grup berulang atau nilai multivalued dalam satu kolom.Artinya, setiap sel dalam tabel hanya boleh berisi satu informasi saja, bukan daftar atau kumpul. Tujuan :
1. Menjadikan data lebih rapi dan terstruktur.
2. Menghindari pengulangan data dalam satu kolom.
3.Memudahkan proses query, pemeliharaan, dan pengolahan data.
4.Mengurangi potensi anomali data seperti anomali insert, update, dan delete.

3. Second Normal Form (2 NF)

Contoh 2 NF : 


Penjelasan :
            Normalisasi 2 NF adalah bentuk normal kedua dari normalisasi database. Suatu tabel dapat dikatakan masuk dalam kategori 2 NF apabila sudah memenuhi persyaratan 1 NF, dan Semua atribut non-kunci harus bergantung sepenuhnya pada kunci utama, bukan hanya sebagian ( Partial Dependency). Apa itu Partial Dependency?. Partial Dependency adalah ketika sebuah atribut non-kunci tergantung hanya pada sebagian dari kunci utama, bukan pada keseluruhan kunci utama. Tujuan :
  • Menghilangkan ketergantungan sebagian.

  • Memisahkan data ke dalam tabel-tabel yang lebih spesifik agar:

    • Lebih mudah dikelola,

    • Tidak ada duplikasi data yang tidak perlu,

    • Anomali insert/update/delete bisa dihindari.

4. Third Normal Form (3 NF)

Contoh 3 NF : 

Penjelasan :
            Normalisasi bentuk ketiga (Third Normal Form atau 3NF) adalah tahap ketiga dalam proses normalisasi database. Suatu tabel dikatakan berada dalam 3NF apabila telah memenuhi bentuk normal kedua (2NF) dan tidak memiliki ketergantungan transitif antara atribut non-kunci.

Ketergantungan transitif terjadi ketika suatu kolom non-kunci tidak secara langsung bergantung pada kunci utama, melainkan bergantung pada kolom non-kunci lainnya yang bergantung pada kunci utama. Ketergantungan semacam ini menyebabkan duplikasi data dan rentan terhadap anomali seperti kesalahan saat memperbarui, menyisipkan, atau menghapus data. Tujuan :

1. Menghilangkan ketergantungan transitif.

2. Memisahkan data menjadi tabel-tabel yang lebih spesifik dan terfokus.

3. Menjaga integritas dan efisiensi struktur data.

4. Kesimpulan 

            Normalisasi database adalah langkah penting dalam merancang database yang efisien dan bebas dari inkonsistensi data. Meskipun proses ini bisa membuat query lebih kompleks, manfaat jangka panjang seperti kemudahan pemeliharaan dan integritas data jauh lebih besar.

Setiap proyek database harus mempertimbangkan tingkat normalisasi yang tepat, tergantung pada kebutuhan aplikasi dan jenis sistem yang dibangun.



Rabu, 30 Juli 2025