Langsung ke konten utama

Normalisasi Database

 Normalisasi Database

Pengertian

Normalisasi merupakan sebuah teknik logical desain dalam sebuah basis data yang mengelompokkan atribut dari berbagai entitas dalam suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi/pengulangan data) serta sebagian besar ambiguity bisa dihilangkan.

Atau pengertian singkatnya, Normalisasi Databse adalah proses pengelompokan atribut data yang membentuk entitas sederhana, nonredundan, fleksibel, dan mudah beradaptasi, Sehingga dapat dipastikan bahwa database yang dibuat berkualitas baik.

Tujuan dari proses normalisasi database ialah untuk mengurangi atau meminimalisasi redudansi atau pengulangan data. Selain itu juga untuk memastikan data berada pada posisi yang tepat atau dikatakan memastikan depedensinya. Tidak hanya itu, apabila sebuah database tidak melalui proses normalisasi. Maka akan ada tiga kerugian yang bisa dialami pada sistem secara keseluruhan. Kerugian pertama ialah insert anomali, atau diartikan sebagai keadaan di mana tidak dapat memasukkan sejumlah jenis data di database.

Normalisasi dimulai dari tahap tidak normal (unnormalized), bentuk normal pertama (1 NF), bentuk normal kedua (2 NF), dan seterusnya sampai didapatkan struktur tabel yang normal.

Tahapan Normalisasi Database

Normalisasi database terdiri dari banyak bentuk, dalam ilmu basis data ada setidaknya 9 bentuk normalisasi yang ada yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF, dan 6NF.

Berikut 3 penjelasan bentuk Normalisasi Database yang akan saya jelaskan :
  • Bentuk Tidak Normal (unnormalize)
Bentuk tidak normal (unnormalized) merupakan kumpulan data yang direkam tidak ada keharusan dengan mengikuti suatu format tertentu.

Pada bentuk tidak normal terdapat repeating group (Pengulangan Group), sehingga pada kondisi ini data menjadi permasalahan dalam melakukan manipulasi data (insert, update, dan delete) atau biasa disebut anomali.

Contoh:

  • 1NF / First Normal Form
Pada intinya bentuk normalisasi 1NF ini mengelompokkan beberapa tipe data atau kelompok data yang sejenis agar dapat dipisahkan sehingga anomali data dapat di atasi.

Contoh:

  • 2NF / Second Normal Form
Bentuk normal yang kedua ialah melakukan dekomposisi tabel dan mencari kunci primer dari setiap tabel. Syarat untuk menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam 1NF

Contoh:


Komentar

Postingan populer dari blog ini

Boolean - Data Types SQL

 Penjelasan Tipe data boolean pada database adalah tipe data yang memungkinkan penyimpanan nilai kebenaran (true atau false) dalam sebuah tabel database. Penyimpanan nilai boolean dalam sebuah tabel database biasanya dilakukan untuk menyimpan informasi kebenaran dari sebuah kondisi atau status pada suatu data. Misalnya, pada tabel pengguna, kita bisa menambahkan kolom "status" dengan tipe data tinyint untuk menyimpan status aktif/non-aktif pengguna. Jika pengguna aktif, maka nilai statusnya adalah 1 (true), sedangkan jika non-aktif, maka nilai statusnya adalah 0 (false). Dalam bahasa SQL, nilai boolean sering digunakan untuk melakukan pengambilan data berdasarkan kondisi yang diberikan (query). Misalnya, kita bisa menuliskan query untuk menampilkan semua pengguna yang statusnya aktif, yaitu dengan menggunakan perintah SELECT * FROM pengguna WHERE status = 1. Contoh Penggunaan  Berikut adalah contoh penggunaan tipe data BOOLEAN pada SQL: CREATE TABLE students (   student_i...

String - Data Types SQL

 Penjelasan String database adalah tipe data yang digunakan untuk menyimpan data teks pada database. String database dapat digunakan untuk menyimpan berbagai jenis data teks, seperti nama, alamat, teks deskripsi, atau bahkan kode program. Setiap field pada tabel database memiliki tipe data tertentu, termasuk tipe data string. Ketika sebuah record atau baris ditambahkan ke tabel, nilai string database akan disimpan pada field yang sesuai. Berikut adalah 2 contoh penggunaan type data string: Membuat tabel users dengan kolom 'name' dan 'email' yang menggunakan tipe data string: CREATE TABLE users (     id INT(11) NOT NULL AUTO_INCREMENT,     name VARCHAR(255) NOT NULL,     email VARCHAR(255) NOT NULL,     PRIMARY KEY (id) ); Dalam contoh ini, kolom 'name' dan 'email' menggunakan tipe data VARCHAR(255) untuk menyimpan nama dan alamat email pengguna. Memasukkan data ke dalam tabel users: INSERT INTO users (name, email) VALUES ('Kharisya Mer', 'kha...

DCL (Data Control Languange)

 DCL (Data Control Languange) Pengertian DCL Data Control Language (DCL) adalah salah satu dari kelompok perintah SQL yang digunakan untuk melakukan kontrol terhadap privilege atau hak akses khusus untuk berinteraksi dengan database. Hak akses khusus ini diperlukan sebagai prasyarat bagi setiap user database untuk melakukan berbagai aksi di database, seperti: membuat object, menghapus object, mengubah object, menampilkan hasil query, dan seterusnya. Sederhananya, setiap pengguna database hanya dapat melakukan aksi-aksi yang sudah diberikan oleh user dengan kontrol tertinggi di dalam database tersebut. Misalnya, pengguna A hanya diberikan akses untuk membuat dan menampilkan sesuatu di database. Maka, pengguna tersebut hanya dapat melakukan perintah tersebut saja, tidak bisa melakukan ubah data, hapus data, dan seterusnya. Hal ini menjadi penting untuk diketahui karena di dalam dunia kerja dengan banyak pengguna database, manajemen pembagian hak akses seperti ini sangat krusial dan b...