Skrip SQL untuk membuat tabel dengan 1000 baris data



 -- 1. Membuat Tabel Mahasiswa

CREATE TABLE Mahasiswa (
    id_mahasiswa INT AUTO_INCREMENT PRIMARY KEY,
    nama VARCHAR(100),
    tanggal_lahir DATE
);

-- 2. Menggunakan Loop untuk Menambahkan 1000 Baris Data
DELIMITER //
CREATE PROCEDURE GenerateData()
BEGIN
    DECLARE i INT DEFAULT 1;
    WHILE i <= 1000 DO
        INSERT INTO Mahasiswa (nama, tanggal_lahir)
        VALUES (
            CONCAT('Mahasiswa_', i), -- Nama mahasiswa seperti Mahasiswa_1, Mahasiswa_2, dst.
            DATE_ADD('2000-01-01', INTERVAL FLOOR(RAND() * 7300) DAY) -- Random tanggal lahir antara 2000-01-01 hingga 2020-01-01
        );
        SET i = i + 1;
    END WHILE;
END;
//
DELIMITER ;

-- 3. Menjalankan Prosedur untuk Mengisi Data
CALL GenerateData();

  • Tabel Mahasiswa:

    • Dibuat dengan kolom:
      • id_mahasiswa: Primary key dengan nilai auto-increment.
      • nama: Menyimpan nama mahasiswa.
      • tanggal_lahir: Menyimpan tanggal lahir mahasiswa.
  • Prosedur GenerateData:

    • Menggunakan loop untuk menyisipkan data sebanyak 1000 baris.
    • Nama mahasiswa dibuat secara dinamis, misalnya: Mahasiswa_1, Mahasiswa_2, dst.
    • Tanggal lahir dibuat secara acak menggunakan fungsi DATE_ADD dan RAND().
  • Random Tanggal Lahir:

    • DATE_ADD('2000-01-01', INTERVAL FLOOR(RAND() * 7300) DAY) akan menghasilkan tanggal acak dalam rentang 2000-01-01 hingga 2020-01-01.
  • Menjalankan Prosedur:

    • Setelah prosedur dibuat, kita memanggilnya dengan CALL GenerateData() untuk mengeksekusi pengisian data.

Komentar

Postingan populer dari blog ini

apa itu SQL, DDL, DML, DCL, dan TCL.

Relasi pada ERD? Mengapa many-to-many tidak baik digunakan?

ERD perpustakaan