SQL merupakan subbahasa pemrograman yang khusus dipergunakan untuk memanipulasi basis
data.
SQL adalah salah satu DBMS (database management system) yang saat ini banyak digunakan
untuk operasi basis data dan embedded (ditempelkan) di hampir semua bahasa pemrograman
yang mendukung basis data relasional.
Perbedaan penggunaan SQL pada masing-masing bahasa biasanya pada sintaks2 khusus.
Misalnya : INSERT INTO VALUE. Pada bahasa yang lain INSERT INTO VALUES, dll.
Bahasa yang mendukung SQL antara lain : V Basic, C++ Builder,Delphi, ORACLE,
MySQL,PostGreeSQL,JAVA,dll
SQL memiliki 3 kategori perintah
1. Data Definition Language (DDL), yakni perintah2 yang digunakan untuk mendefinisikan
(menciptakan, tambah/mengubah/hapus) sturktur data/tabel
2. Data manipulation language (DML), yakni perintah yang digunakan untuk memanipulasi
database (melihat, menenusuri, filtering, summarize, perhitungan, dll)
3. Data Control Language (DCL, digunakan untuk mengedalikan database
Perintah Perintah dalam Data Base
Perintah-perintah dalam SQL bisa disebut dengan query.
Ada tiga sub perintah:
1. DDL -> Data Definition Language
2. DML -> Data Manipulation Language
3. DCL -> Data Control Language
(2). DML
Data Manipulation Language
DML adalah pernyataan yang di gunakan untuk mengorganisir data dengan menggunakan
skema objek.
A. select
untuk menyeleksi data dalam databse
---------------------------------------------------------------------------------------select * from mahasiswa; (perhatian : tanda '*' untuk menyeleksi semua data dalam table )
select alamat from mahasiswa;
----------------------------------------------------------------------------------------B .insert
untuk mengimputkan record kedalam suatu table
----------------------------------------------------insert into mahasiswa (npm,nama,alamat)
values('123456','budi',jl raya plp');
----------------------------------------------------C. Update
untuk melakukan update dari table yang sudah di buat
--------------------------------------------------update mahasiswa set nama = 'udin'
where npm = '245435',;
--------------------------------------------------D.delete
untuk menghapus isi record baik semuanya maupun sebagian
-----------------------------------------------------------delete from mahasiswa; (untuk semua data yang ada di table)
-----------------------------------------------------------delete from mahasiswa
where npm='334553'; (untukm menghapus satu data dalam table)
-----------------------------------------------------------E. Merge
pnggabungkan update,insert,delete pada suatu table berdasarkan kondisi yang cocok (untuk
: oracle)
F. Exec
untuk memanggil prosedur yang telah kita buat
(3). DCL
Data Control Language
Terdiri dari 3 (tiga) stetment
-grant
-revoke
-deny
(Grant) untuk memberikan hak akses ,(Revoke) untuk membuang hak akses ,(Deny) untuk
melarang hak akses.
(4) . TCL
Transaction Control
-Commit
Untuk Menyimpan Hasil Perintah
-SavePoint
Identifikasi point transaksi yang akan di gunakan nantinya. .
-Rollback
restore database ke kondisi commit terakhir
- Set Transaction
Mengubah Level Transaksi
Finish . .
TIPE DATA
Setiap data memiliki tipe data. Tipe data menurut dalam SQL, antara lain:
Tipe Data Keterangan
CHAR atau CHARACTER Menyatakan deretan karakter (huruf, bil, tanda baca, karakter
khusus (ex:enter)) atau String
- Biasanya lebarnya ttt / tetap, mk biasanya dipakai sbg kunci primer (NIP, NIM),ttp tdk sbg
kunci primer juga bisa (Jurusan, lebarnya 2 digit: MI, TI)
- Cara nulisnya diapit tanda petik bisa tunggal - atau ganda -
VARCHAR Untuk menyatakan string dengan panjang tidak tetap (nama, alamat, dll)
- Lebih boros penyimpanan di memori
- Cara nulisnya diapit tanda petik bisa tunggal - atau ganda -
DECIMAL atau DEC Bilangan pecahan, ttp formatnya lebih jelas ex: 5,2 (,) shg tampilan
dilayar lebih rapi dibanding float dan double (tergantung nilainya)
INTEGER atau INT Menyatakan tipe data bilangan bulat, defaulnya max 11 karakter
- Bisa dipakai untuk operasi matematis
- Tdk operasi matematis juga bisa (ex:tinggi badan)
SMALLINT Menyatakan tipe data bilangan bulat yang jangkauannya lebih kecil dari pada
INTEGER
FLOAT Tipe data bilangan real/pecahan, lebar dibelakang koma 17 karakter
DOUBLE Tipe data bilangan real/pecahan dengan presisi/teliti lebih tinggi dari pada FLOAT,
lebar dibelakang koma sampai 30 digit
DATE Untuk menyatakan tanggal (th-bl-tgl)
TIME Untuk menyatakan waktu
ex: jam chek In, chek Out di hotel
TIMESTAMP Untuk menyatakan tanggal dan waktu
BLOB Untuk menyatakan data biner yang berguna untuk menyimpan gambar atau suara
AUTO-INCREMENT Untuk menyatakan data yang akan dinaikkan sebesar satu secara otomatis
BOOLEAN Untuk menyatakan tipe nalar yi benar atau salah
ENUM Untuk mendefinisikan data yang mempunyai kemungkinan nilai tetentu