Minggu, 20 September 2015

PRIMARY KEY & FOREIGN KEY

PRIMARY KEY

1. DEFINISI

     Primary Key merupakan kunci yang secara unik mengidentifikasi baris pada table. Primary Ke dapat diterapkan pada satu atau lebih field. Apabila primary key atau unique key diterapkan pada satu atau lebih field maka pada field tersebut tidak boleh bernilai sama untuk seluruh baris pada table.

2. KEGUNAAN

     Primary Key berguna pada saat menampilkan record hasil pencarian (searching), pengurutan (sorting), dan berbagai operasi query lainnya. Dengan memilih rimary key, proses pencarian, pengurutan dan proses penampilan data dan lainnya berlangsung lebih cepat.


FOREIGN KEY

1. DEFINISI

     Foreign key adalah satu attribute yang melengkapi satu relationship yang menunjukan ke induknya.

2. KEGUNAAN

     Foreign key berguna untuk mendefinisikan kolom-kolom pada suatu tabel yang nilainya mengacu ke tabel lain,jadi kolom foreign key nilainya harus diambil dari nilai kolom pada tabel lain. Kolom tabel yang data nya diambil harus berupa kolom primary key atau unique.

sumber:

http://ramadanifitriana.blogspot.co.id/2013/04/pengertian-primary-key-dan-foreign-key.html

https://triyulianto46.wordpress.com/2014/08/22/pengertian-primary-key-unique-key-foreign-key-index/

DDL - DML - DCL

1.  DDL (Data Definition Language)



DDL merupakan perintah SQL yang berhubungan dengan pendefinisian suatu struktur database yang digunakan untuk membuat, mengubah dan menghapus struktur dan definisi metadata dari objek-objek database. 


Beberapa perintah dasar yang termasuk DDL ini antara lain : 



a. CREATE
Perintah ini digunakan untuk membuat, termasuk diantaranya membuat database baru, tabel baru, view   baru, dan kolom.



b. ALTER
Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat. Pekerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.



c. RENAME
Perintah yang digunakan untuk merubah nama Objek



d. DROP
Perintah ini digunakan untuk menghapus database dan tabel.



Contoh DDL dalam SQL
Contoh DDL dalam membuat sebuah tabel dalam database,
  • CREATE TABLE Buku(

    id INTEGER PRIMARY KEY,
    kode_buku VARCHAR(20) NULL,
    judul_buku VARCHAR(225) NOT NULL,
    tanggal_terbit DATE NULL
    );

    Penjelasan : SQL yang termasuk dalam DDL untuk membuat tabel dengan nama ‘Buku’ yang memuat field id, kode buku, judul, dan tanggal terbit. Id dengan tipe data integer, kode dan judul buku dengan kode varchar dengan panjang 20 dan 225 karakter. Tanggal terbit dengan tipe data Date dan dibolehkan null (kosong).
Contoh DDL dalam merubah data tabel dalam sebuah database,
  • Alter TABLE Buku ADD Penulis Varchar(100);

    Alter TABLE Buku Drop Column Judul_buku;

    Penjelasan : Merubah tabel buku dengan menambah field penulis dengan tipe data varchar 100 karakter. Query yang kedua adalah merubah struktur tabel dengan menghapus kolom judul buku.
Contoh DDL dalam menghapus sebuah tabel
  • DROP TABLE Buku;

    Penjelasan : Menghapus tabel dengan nama ‘buku’ dari dalam database.
Contoh DDL dalam Merubah Nama Database
  • ALTER DATABASE namadatabaselama MODIFY NAME = namadatabasebaru; // Untuk Microsoft sql server

    atau EXEC sp_renamedb ‘namadatabaselama ‘, ‘namadatabasebaru';// Untuk Microsoft sql server
    RENAME {DATABASE | SCHEMA} namadatabaselama TO namadatabasebaru; // Untuk MYSQL

    Penjelasan : Merubah nama dari nama database lama ke nama database baru dengan perintah alter untuk MSSQL dan Rename untuk MYSQL.

2.  DML (Data Manipulation Language)


DML merupakan perintah SQL yang digunakan untuk proses pengolahan isi data di dalam table seperti memasukkan, merubah dan menghapus isi data - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database.


Perintah SQL yang termasuk dalam DML antara lain :



a. UPDATE
Perintah ini digunakan untuk memperbaharui data lama menjadi data terkini. Jika anda memiliki data yang salah atau kurang Up To Date dengan kondisi sekarang, maka dapat diubah isi datanya dengan menggunakan perintah UPDATE.



b. INSERT
perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke dalam tabel. Penggunaannya setelah database dan tabel selesai dibuat.



c. SELECT
Perintah ini digunakan untuk mengambil data atau menampilkan data dari satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan dalam layar prompt MySQL secara langsung maupun ditampilkan pada tampilan aplikasi.



d. DELETE
Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang dihapus adalah data yang tidak diperlukan lagi. Pada saat menghapus data, perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah hilang tidak dapat dikembalikan lagi.



Contoh DML Dalam Basis Data
DML merupakan tipe SQL yang digunakan untuk melakukan perubahan pada data yang terdapat dalam sebuah database. Berikut adalah contoh penerapan ke empat macam SQL tersebut.
  • SELECT * FROM Buku;

    UPDATE Buku SET Judul_buku = “Blogging Indonesia” WHERE id = 1123;
    INSERT INTO Buku (id,kode_buku,judul_buku,tanggal_terbit) values(1124, “KoD2″, “Blogging Indonesia Terbaru”, “2013-01-11″);
    DELETE FROM Buku WHERE ID =1124;

    Penjelasan : SQL di atas merupakan 4 query yang digunakan dalam DML, SELECT digunakan mengambil data dari tabel yang ada di database. Perintah Update di atas untuk mengupdate tabel buku dengan mengganti judul buku dengan “Blogging Indonesia” yang idnya 1123. Insert untuk memasukkan data baru di tabel buku. Perintah delete untuk menghapus data dari tabel buku yang idnya 1124.

3.  DCL (Data Control Language)


DCL merupakan perintah SQL yang berhubungan dengan manipulasi user dan hak akses (priviledges).


Perintah SQL yang termasuk dalam DCL antara lain :



a. GRANT
Perintah ini digunakan untuk memberikan hak / izin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapsu (DELETE), mengubah (UPDATE) dan hak khusus berkenaan dengan sistem databasenya.



b. REVOKE
perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.


Contoh DCL dalam Basis data

Ada dua perintah SQL yang termasuk dalam DCL yaitu GRANT dan REVOKE.
  • GRANT SELECT, UPDATE

    ON Nama_Database
    TO user1, user2;
  • REVOKE SELECT, UPDATE

    ON Nama_database
    FROM User1, User2;

    Penjelasan : Perintah GRANT  memberikan kewenangan terhadap pengguna untuk melakukan operasi pada suatu schema atau database. Perintah REVOKE berfungsi untuk menghilangkan hak perintah kepada user tertentu terhadap objek atau schema database.

sumber :
http://www.semukan.com/2015/01/perintah-ddl-dml-dan-dcl-pada-mysql.html
http://blogging.co.id/penjelasan-ddl-dan-dml-tcl-dan-dcl-dalam-basis-data