Senin, 08 September 2014

Tentang MySql



MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggrisdatabase management system) atau DBMS yang multithreadmulti-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagaiperangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.
Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak ciptauntuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial SwediaMySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David AxmarkAllan Larsson, dan Michael "Monty" Widenius.
MySQL memiliki beberapa keistimewaan, antara lain :
  1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
  2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
  3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
  4. Performance tuning’, MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
  5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
  6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
  7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
  8. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
  9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
  10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
  11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
  12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool)yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
  13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQLataupunOracle


Elemen SQL
Elemen dari SQL yang paling dasar antara lain pernyataan, nama, tipe data, ekspresi, konstanta dan fungsi bawaan.
  • Pernyataan
Perintah dari SQL yang digunakan untuk meminta sebuah tindakan kepada DBMS.
Pernyataan dasar SQL antara lain :
  1. ALTER      : Merubah struktur tabel
  2. COMMIT  : Mengakhiri eksekusi transaksi
  3. CREATE   : Membuat tabel, indeks
  4. DELETE   : Menghapus baris pada sebuah tabel
  5. DROP        : Menghapus tabel, indeks
  6. GRANT     : Menugaskan hak terhadap basis data kepada user
  7. INSERT    : Menambah baris pada tabel
  8. REVOKE  : Membatalkan hak kepada basis data
  9. ROLLBACK  : Mengembalikan pada keadaan semula apabila transaksi gagal dilaksanakan
  10. SELECT    : Memilih baris dan kolom pada sebuah tabel
  11. UPDATE   : Mengubah value pada baris sebuah tabel
  • Nama
Nama digunakan sebagai identitas, yaitu identitas bagi objek pada DBMS. Misal : tabel, kolom dan pengguna.
  • Tipe data
Tipe data yang ada dalam MYSQL :
1. Tipe data numerik antara lain :
  1. TINYINT         : Nilai integer yang sangat kecil
  2. SMALLINT     : Nilai integer yang kecil
  3. MEDIUMINT  : Nilai integer yang sedang
  4. INT                   : Nilai integer dengan nilai standar
  5. BEGINT           : Nilai integer dengan nilai besar
  6. FLOAT             :Bilangan decimal dengan single-precission
  7. DOUBLE         :Bilangan decimal dengan double-precission
  8. DECIMAL(M,D)   : Bilangan float yang dinyatakan sebagai string. M : jumlah digit yang disimpan, D : jumlah angka dibelakang koma
2. Tipe data String antara lain :
  1. CHAR               : Karakter yang memiliki panjang tetap yaitu sebanyak n
  2. VARCHAR      : Karakter yang memiliki panjang tidak tetap yaitu maksimum n
  3. TINYBLOB     : BLOB dengan ukuran sangat kecil
  4. BLOB               : BLOB yang memiliki ukuran kecil
  5. MEDIUMBLOB    : BLOB yang memiliki ukuran sedang
  6. LONGBLOB    : BLOB yang memiliki ukuran besar
  7. TINYTEXT      : teks dengan ukuran sangat kecil
  8. TEXT                : teks yang memiliki ukuran kecil
  9. MEDIUMTEXT     : teks yang memiliki ukuran sedang
  10. LONGTEXT     : teks yang memiliki ukuran besar
  11. ENUM              : kolom diisi dengan satu member enumerasi
  12. SET                   : Kolom dapat diisi dengan beberapa nilai anggota himpunan
3. Tipe data tunggal dan jam :
  1. DATE        : date memiliki format tahun-bulan-tanggal
  2. TIME         : time memiliki format jam-menit-detik
  3. DATETIME           : gabungan dari format date dan time
  • Ekspresi
Ekspresi digunakan untuk menghasilkan/menghitung nilai.
Misalnya : jumlah=harga-diskon
Ekspresi aritmatika antara lain :
  1. +  : tambah
  2. –  : kurang
  3. /  : bagi
  4. *  : kali
  • Konstanta
Nilai yang tetap
  • Fungsi bawaan
Fungsi adalah subprogram yang dapat menghasilkan suatu nilai apabila fungsi tersebut dipanggil. Fungsi Agregat adalah fungsi yang digunakan untuk melakukan summary, statistik yang dilakukan pada suatu tabel/query.
  1. AVG(ekspresi)  : digunakan untuk mencari nilai rata-rata dalam kolom dari tabel.
  2. COUNT(x)       : digunakan untuk menghitung jumlah baris dari sebuah kolom dari tabel
  3. MAX(ekspresi) : digunakan untuk mencari nilai yang paling besar dari suatu kolom dari tabel
  4. MIN(ekspresi)   : digunakan untuk mencari nilai yang paling kecil dari suatu kolom dari tabel
  5. SUM(ekspresi)  : digunakan untuk mengitung jumlah keseluruhan dari suatu kolom dari tabel
2. Kelompok Penyataan SQL
Pernyataan SQL dapat dikelompokan menjadi 3 kelompok, yaitu : DDL, DML dan DCL.
1.Pernyataan SQL kelompok DDL (Data Defination Language)
DDL berfungsi untuk mendefinisikan atribut basis data, table, atribut(kolom), batasan-batasan terhadap suatu atribut, serta hubungan antar tabel. Perintah yang digunakan biasanya : CREATE, ALTER, dan DROP
  1. Membuat Database
  2. Syntax yang digunakan : CREATE DATABASE namadatabase;
  3. Menghapus Database
  4. Syntax yang digunakan : DROP DATABASE namadatabase;
  5. Membuat Tabel
  6. Syntax yang digunakan : CREATE TABLE namatabel;
  7. Menghapus Database
  8. Syntax yang digunakan : DROP DATABASE namadatabase;
  9. Menghapus Tabel
  10. Syntax yang digunakan : DROP TABEL namatabel;
  11. Mendefinisikan null/not null
  12. Syntax yang digunakan : CREATE TABLE namatabel
    ( Field1 TipeData1 NOT NULL,
    Field2 TipeData2
    );
  13. Mendefinisikan Nilai Default
  14. Syntax yang digunakan : CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2 DEFAULT nilai
    );
  15. Mendefinisikan Primary Key pada Tabel
  16. Dapat dilakukan dengan 3 Syntax :
    1)      CREATE TABLE namatabel
    ( Field1 TipeData1 NOT NULL PRIMARY KEY,
    Field2 TipeData2
    );
    2)      CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2,
    PRIMARY KEY(Field1)
    );
    3)      ALTER TABEL namatabel ADD CONSTRAINT namaconstraint PRIMARY KEY (NAMAKOLOM)
  17. Menghapus Primary Key pada Tabel
  18. Syntax yang digunakan ada 2 :
    1)      ALTER TABLE namatabel DROP CONSTRAINT NAMACONSTRAINT;
    2)      ALTER TABLE NAMATABEL DROP PRIMARY KEY;
  19. Menambah Kolom Baru pada Tabel
  20. Syntax yang digunakan : ALTER TABEL NAMATABEL ADD newfield tipe;
  21. Mengubah Tipe Data atau Lebar Kolom pada Tabel
  22. Syntax yang digunakan : ALTER TABEL namatabel MODIFY COLUMN field tipe;
  23. Mengubah Nama Kolom
  24. Syntax yang digunakan : ALTER TABEL namatabel CHANGE COLUMN namakolomlama namakolombaru tipe;
  25. Menghapus Kolom pada Tabel
  26. Syntax yang digunakan : ALTER TABEL namatabel DROP COLUMN namakolom;
  27. Mendefinisikan Foreign Key pada Tabel
  28. Dapat dilakukan dengan 2 Syntax :
    1)      CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2,
    FOREIGN KEY (Field2) REFERENCES namatabelinduk
    (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION)
    2)      ALTER TABEL namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (namakolom) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION;
  29. Menghapus Foreign Key
  30. Syntak yang digunakan : ALTER TABEL namatabel DROP FOREIGN KEY namaconstraint;
2. DML (Data Manipulation Language)
DML berfungsi untuk memanipuladi data yang ada di dalam basis data, contohnya untuk pengambilan data, penyisipan data, pengubahan data dan penghapusan data.
Perintah yang digunakan biasanya adalah : INSERT, DELETE, UPDATE, dan SELECT.
  1. INSERT
  2. menambah baris pada tabel. Syntax yang paling sering digunakan : INSERT INTO namatabel VALUES (nilai1, nilai2, nilai-n);
  3. DELETE
  4. Menghapus baris pada tabel. Syntax : DELETE FROM namatabel [where kondisi];
  5. UPDATE
  6. Mengubah isi beberapa kolom pada tabel. Syntax : UPDATE namatabel SET kolom1=nilai1, kolom2=nilai2 [where kondisi];
  7. SELECT
  8. Menampilkan isi dari suatu tabel yang bisa dihubungkan dengan tabel yang lainnya;
    Sumber :
    http://id.wikipedia.org/wiki/MySQL
    http://upyes.wordpress.com/2013/02/06/pengertian-dan-sejarah-mysql/
    http://teknologi.kompasiana.com/terapan/2013/01/29/sekilas-tentang-mysql-529596.html

Tidak ada komentar:

Posting Komentar