SQL Data Definition Language

Data Definition Language

SQL Syntax terdiri dari beberapa jenis statement yang akan memampukan kamu menjalankan perintah-perintah dan operasi yang ada dalam SQL atau dalam bahasa mudahnya mereka sudah memiliki sebuah potongan program yang siap kamu gunakan tanpa susah payah.

Sedangkan Data Definition Language adalah statement yang memapukan kamu sebagai user untuk mendefinisikan atau memodifikasi sebuah struktur data dan objek seperti sebuah tabel.

Seperti yang tertulis tujuan dari DDL adalah memampukan kamu sebagai user untuk mendefiniskan sebuah struktur data, sehingga kamu bisa membuat database dan objek database sebagai tabel sesuai dengan kebutuhanmu.


DDL Create

Tentu saja contoh yang paling mudah adalah membuat database dengan sebuah syntax, tapi sebelum itu berikut adalah kerangka besar dari syntax create. anda bisa mencoba dengan menggunakan onecompiler.

"Create TIPE_OBJEK NAMA_OBJEK;" Sehingga saat kita ingin membuat sebuah tabel maka syntax yang kita gunakan adalah "Create Table NAMA_OBJEK(NAMA_KOLOM TIPE_DATA);"

Akan lebih baik bila dibuat terstruktur/rapi dengan memberikan "enter"
Create Table NAMA_TABLE(
NAMA_KOLOM TIPE_DATA,
NAMA_KOLOM TIPE_DATA,);
Dengan contoh sebagai berikut

Create Table Sales(No_pembelian Int, 
TanggalPembelian Date);

dengan kode di atas maka kamu akan membuat sebuah tabel sales dengan kolom yang bernama no_pembelian dengan tipe data integer. Untuk menambah field lain, kamu hanya perlu menambahkan koma setelah tipe data. Bentuknya seperti di bawah.

Create Table Sales(No_pembelian Int, total int, NamaPegawai Varchar(30));

Bisa juga memberikan constraint pada saat create
Create Table Barang(IDBarang Int not null, 
NamaBarang Varchar(20),
Primary Key (IDBarang));
 
Not null artinya IDBarang harus diisi. Lalu pada bagian bawah Primary Key(IDBarang) berarti membuat ID barang bersifat unik/tidak boleh ada nilai yang sama di sana. Gunanya untuk membedakan data. Misal di dalam data kependudukan nama eric pasti ada lebih dari 1. Misalkan ada 5 eric, cara memberitahu komputer bahwa eric ini orang berbeda adalah dengan memberi setiap orang bernama eric no KTP yang berbeda-beda. No KTP bersifat unik dan tidak boleh sama.
 
Pada onecompiler anda bisa mencoba syntax/code yang ada. Namun dalam kasus DDL SQL, anda harus membuat tabel, mengisi dengan data dan mengambil data tersebut dalam database
 
Create Table Barang(IDBarang Int not null, 
NamaBarang Varchar(20),
Primary Key (IDBarang));

Insert into  Barang(IDBarang,NamaBarang) values (1, "Salted Egg Croisant");
Insert into  Barang(IDBarang,NamaBarang) values (2, "Sweet Egg Croisant");
Insert into  Barang(IDBarang,NamaBarang) values (3, "Ice Thai Tea");

Select * from Barang; 
 
Untuk berlatih anda bisa membuat tabel pegawai dengan keperluan memasukan nama pegawai, umur dan jenis kelamin. Isi datanya lalu coba tampilkan dengan menggunakan perintah select

DDL Alter

Berikutnya kita akan mencoba memodifikasi. Untuk memodifikasi sebuah tabel kita dapat menggunakan perintah Alter dan yang pasti namanya juga memodifikasi sehingga obyek yang mau dimodifikasi harus ada terlebih dahulu. Bila obyek tidak ada, otomatis sql akan bingung dengan apa yang akan diubah.

Langsung contoh saja dengan mengubah tabel yang telah kita buat
 
Alter table sales
add tgl_pembelian date;

Strukturnya adalah

alter table [NamaTable]
add [Nama Kolom] [Tipe Data]

maka tgl_pembelian akan ditambahkan sebagai kolom baru dengan tipe data date(untuk waktu) sehingga bentuk akhir tabel akan menjadi seperti gambar berikut


tabel sales
kemudian kita juga bisa menambahkan primary key dengan alter
 
Alter table sales
add constraint PK_no_pembelian PRIMARY KEY(no_pembelian);
 
Struktur untuk menambahkan constraint primary key adalah

alter table [NamaTable]
add constraint [NamaPK] PRIMARY KEY [Nama Kolom, Nama Kolom]; 
 
contoh di atas adalah bila ingin menambahkan 2 kolom sebagai primary key atau menambahkan constraint pada table tertentu tapi tambahkan jumlah. Strukturnya sebagai berikut 
 
alter table [namatable]
add [NamaKolom] [TipeData]; 
 
contoh :
Alter table sales
add jumlah_barang INTEGER;
menambahkan constraint, yang artinya saat memasukan data, akan ada pengecekan. Apabila pengecekan berhasil maka data akan diproses, bila gagal maka data tidak akan diproses. alter table [NamaTable] add constraint [NamaConstraint] check(Condition);

alter table sales add constraint constraintJumlah check (jumlah_barang>0);

Kemudian bila anda salam memberi tipe data, anda tidak perlu menghapus dan membuat dari awal, alter juga bisa digunakan untuk mengubah tipe data.
Alter table sales 
modify tgl_pembelian datetime;  sedangkan untuk menghilangkan sebuah field maka hanya memerlukan
alter table drop tgl_pembelian;bisa juga menambahkan constraint agar harus diisi
alter table modify tgl_pembelian NOT NULL;

DDL Drop

Kalau ada kesalahan kita bisa menggunakan syntax Drop, misalkan salah bikin tabel dan akhirnya tabel tersebut tidak terpakai sehingga kita bisa gunakan drop seperti contoh berikut
Drop table sales;
Perintah ini akan membuat tabel sales menjadi terhapus dan tabel tersebut tidak akan ditemukan kembali kecuali dibuat ulang.

DDL Rename

Kemudian ada yang bertanya kenapa saya tidak bisa mengganti nama tabel dengan menggunakan perintah alter? Karena memang untuk mengganti nama tabel membutuhkan syntax khusus yakni Rename. Berikut contoh syntax
Rename table sales to sales_data;
Sehingga tabel sales berubah menjadi sales_sata.

DDL Truncate


yang terakhir dari DDL adalah truncate, yang digunakan untuk mengosongkan sebuah tabel. Tabel tersebut tidak akan terhapus tetapi hanya isinya saja.
Truncate table sales_data;
mengapa truncate menjadi sales data? karena sebelumnya kita telah mengubah tabel sales menjadi sales_data.

Ini adalah poin penting dalam data definition language. Syntax-syntax yang ada dapat langsung digunakan dan disesuaikan dengan kebutuhanmu. Selamat mencoba.


Hati-hati Pengunaan Keywords SQL


Hati-hati dalam menggunakan keywords SQL yang ada, maksud saya adalah penggunaan keyword-keyword yang ada dalam SQL sebagai nama database.

Misalkan menggunakan create sebagai nama tabel. Hal ini tidak bisa dilakukan karena SQL akan bingung. Tapi selalu ada cara mengatasi hal seperti ini, tambahkan saja "t" didepan sehingga kita bisa membuat tabel dengan nama tCreate.

Tidak bisa :
Create table Create(id int);

Bisa :
Create table tCreate(id int);

Hal ini berlaku terhadap keyword-keyword lain seperti alter, add dan lainnya. Keywords atau reserved word ini tidak bisa digunakan untuk menamai objek.


Komentar

  1. […] langkah pertama setelah mempelajari syntax untuk Data Definition maka kita akan mencoba membuat database beserta tabel-tabel dan juga tipe-tipe data dalam […]

    BalasHapus
  2. […] Untuk penulisan dan pembuatan tabel dapat melihat contoh pada post Data Definition Language […]

    BalasHapus

Posting Komentar