Tugas Pengantar Basis Data

Disusun oleh: Haykal Furqan Shafiq

NIM: 24210076

Rombel: B

Program Studi: Ilmu Komputer

Tugas 1: Bahasa yang Digunakan di Pengantar Basis Data

Dalam sistem manajemen basis data (DBMS), terutama yang berbasis SQL (Structured Query Language), terdapat empat jenis sub-bahasa yang digunakan untuk berinteraksi dengan basis data. Keempatnya memiliki fungsi yang spesifik, mulai dari mendefinisikan struktur hingga memanipulasi dan mengontrol data.

1. Data Definition Language (DDL)

DDL digunakan untuk mendefinisikan, mengubah, dan menghapus struktur objek-objek basis data seperti tabel, indeks, dan pengguna. Perintah DDL bersifat permanen (autocommit) dan tidak dapat dibatalkan dengan mudah.

  • Fungsi Utama: Membuat skema dan struktur basis data.
  • Contoh Perintah:
    • CREATE: Untuk membuat objek baru (misal, `CREATE DATABASE`, `CREATE TABLE`).
    • ALTER: Untuk mengubah struktur objek yang sudah ada (misal, `ALTER TABLE ADD COLUMN`).
    • DROP: Untuk menghapus objek dari basis data (misal, `DROP TABLE`).
    • TRUNCATE: Untuk menghapus semua data dari tabel secara cepat tanpa menghapus struktur tabelnya.

2. Data Manipulation Language (DML)

DML digunakan untuk mengelola dan memanipulasi data yang ada di dalam tabel. Perintah ini berhubungan dengan isi dari tabel, bukan strukturnya.

  • Fungsi Utama: Memasukkan, memperbarui, dan menghapus record data.
  • Contoh Perintah:
    • INSERT: Untuk menambahkan baris data baru ke dalam tabel.
    • UPDATE: Untuk mengubah atau memperbarui data yang sudah ada di dalam tabel.
    • DELETE: Untuk menghapus baris data dari tabel.

3. Data Query Language (DQL)

DQL (sering dianggap bagian dari DML) digunakan secara spesifik untuk melakukan kueri atau mengambil data dari basis data. Perintah utamanya hanya satu, tetapi sangat fleksibel dan kuat.

  • Fungsi Utama: Mengambil dan menampilkan data dari satu atau lebih tabel.
  • Contoh Perintah:
    • SELECT: Untuk memilih dan mengambil data berdasarkan kriteria tertentu, bisa digabungkan dengan klausa seperti `FROM`, `WHERE`, `GROUP BY`, `ORDER BY`.

4. Data Control Language (DCL)

DCL digunakan untuk mengontrol hak akses dan izin pengguna (privileges) terhadap basis data. Ini sangat penting untuk menjaga keamanan dan integritas data.

  • Fungsi Utama: Mengelola hak akses pengguna.
  • Contoh Perintah:
    • GRANT: Memberikan izin kepada pengguna untuk melakukan operasi tertentu (misal, `GRANT SELECT ON mahasiswa TO user1`).
    • REVOKE: Mencabut izin yang telah diberikan kepada pengguna.

Tugas 2: Proses Pembuatan Tabel dan Input Data

Berikut adalah dokumentasi langkah-langkah pembuatan basis data, tabel, dan proses memasukkan data menggunakan perintah SQL di phpMyAdmin.

1. Membuat dan Menggunakan Database

Langkah pertama adalah membuat database baru dengan nama `haykal` dan kemudian memilih database tersebut untuk digunakan.

-- 1. Bikin database
CREATE DATABASE haykal;

-- 2. Pilih database
USE haykal;
Membuat Database

2. Membuat Tabel Mahasiswa

Selanjutnya, membuat tabel `mahasiswa` di dalam database `haykal` dengan struktur kolom yang telah ditentukan.

-- 3. Bikin tabel di dalam database
CREATE TABLE mahasiswa (
    nim VARCHAR(20) PRIMARY KEY,
    nama VARCHAR(50),
    prodi VARCHAR(50),
    mk VARCHAR(50),
    dosen VARCHAR(50),
    nilai INT
);
Membuat Tabel

3. Memasukkan Data ke Tabel

Setelah tabel berhasil dibuat, langkah berikutnya adalah memasukkan data mahasiswa ke dalam tabel menggunakan perintah `INSERT`.

-- 4. Isi data
INSERT INTO mahasiswa (nim, nama, prodi, mk, dosen, nilai)
VALUES ('24210076', 'Haykal Furqan Shafiq', 'Ilkom', 'Pengantar Basis Data', 'Oktalia Triananda Lovita, S.ST, MT', '100');
Memasukkan Data

4. Hasil Tabel Akhir

Tabel di bawah ini menampilkan hasil akhir dari data yang telah dimasukkan.

Nim Nama Prodi Mata Kuliah Nama Dosen Nilai/KRS
24210076 Haykal Furqan Shafiq Ilmu Komputer Pengantar Basis Data Oktalia Triananda Lovita, S.ST, MT 100
... ... ... ... ... ...
Hasil Akhir Tabel

Tugas 3: Perbedaan Basis Data Relasional dan Non-Relasional

Kriteria Basis Data Relasional (SQL) Basis Data Non-Relasional (NoSQL)
Struktur Data Terstruktur (Schema-on-Write). Data dalam format tabel (baris dan kolom) dengan skema kaku. Tidak terstruktur/Semi-terstruktur (Schema-on-Read). Format beragam (dokumen, key-value, dll) dengan skema fleksibel.
Skema Statis. Harus didefinisikan sebelum data dimasukkan. Dinamis. Dapat diubah kapan saja.
Hubungan Data Menggunakan relasi antar tabel (Foreign Key). Hubungan tidak ditekankan, data terkait sering disimpan bersama.
Bahasa Kueri SQL (Structured Query Language). Tidak ada bahasa standar, tiap basis data punya sintaks sendiri.
Skalabilitas Vertikal (Scale-up), menambah kekuatan satu server. Horizontal (Scale-out), menambah lebih banyak server.
Konsistensi Menganut properti ACID (konsistensi tinggi). Menganut properti BASE (mengutamakan ketersediaan).
Contoh MySQL, PostgreSQL, Oracle, SQL Server. MongoDB, Cassandra, Redis, Neo4j.
Gambar Diperbesar