BAHASA PEMROGRAMAN SQL
1.
Apa SQL itu…???
SQL
( Structure Query Language )
adalah
Bahasa pemrograman yang digunakan untuk mengelola Relational
(
query ) System Database.
2. Apa saja Software
yang digunakan untuk menjalankan SQL??
Software
yang digunakan antara lain : MySQL, Xampp, Wampserver, Ms.Sqlserver, dll
3. Perintah SQL
terbagi menjadi :
a.
DDL
(Data Definition Language)
Adalah
Suatu Perintah SQL untuk Mendefinisikan Struktur Database.
·
Create: untuk membuat object didalam Database
( database,table,view,procedure,function, trigger, Package dll).
Contoh
: Create Database Pendidikan;
Create Table Siswa(NIS char(4)
not null primary key,
nama_siswa char(25) not
null,alamat varchar(30) not null );
mysql>create
table siswa
‘->
(
‘->
nis char(4),
‘->
nama_siswa char(25),
‘->
alamat varchar(30)
‘->
);
·
Alter:untuk mengubah struktur dari suatu
object dalam database
a. Add
: Untuk merubah dan menambah field atau kolom baru
Contoh : Alter table siswa add
jenis_kelamin char(1);
b. Change
: untuk merubah nama field/kolom
Contoh
: alter table siswa change alamat alm_siswa char(25);
c. Modify
: untuk merubah type data field/kolom tanpa menyebutkan field lama
contoh:alter
table siswa modify alamat varchar(25);
d. Drop
column : menghapus field/kolom tertentu.
Contoh:alter
table siswa drop column alamat;
·
Describe : untuk meliht struktur table yang
telah dibuat.
Contoh
: describe siswa;
·
Drop:Untuk menghapus object dalam suatu
Database.
Contoh
: Drop table Siswa;
·
Truncate:Untuk membersihkan isi table beserta
alokasi space didalamnya.
Contoh
: Truncate table Siswa;
·
Rename:Mengganti nama object dalam database.
Contoh:alter
table siswa rename data_siswa;
b.
DML(Data
Manipulation Language)
adalah
Suatu Perintah SQL yang digunakan untuk mengorganisir data dengan menggunakan
skema object.
·
Select :Untuk menyeleksi / menampilkan data
dari dalam database.
Contoh
: select * from Siswa
Select NIS,nama_siswa,alamat from Siswa
1. Order
by digunakan untuk mengurutkan hasil
asc
= ascending,mengurutkan kecil ke besar
desc
= descending mengurutkan besar ke kecil
Contoh:select
* from siswa order by NIS desc;
2. Operator
relational (perbandingan 2 buah nilai)
a. Select
* from siswa where jenis_kel=”P”;
b. Select
* from siswa where tgllahir between ’1995-01-01’ and ‘1997-12-31’
c. Select
* from siswa where nama like ‘a%’;
·
Insert : Untuk menginput record dalam suatu table
Contoh
: insert into Siswa(NIS,nama_siswa,Alamat) values(‘1234’,’Ikhwan’,’Jl. Sehat I
Pkl’)
·
Update:Untuk melakukan update record dari table
Contoh
: update Siswa set alamat=’Jl. Sakit pkl’
where nis=’1234’;
·
Delete : Untuk menghapus Record dari table
Contoh:delete
from Siswa where NIS=’1234’;
c.
DCL(Data
Control Language)
DCL DCL-adalah abstrak dari Bahasa Control Data. Bahasa
Control Data mencakup perintah seperti GRANT, dan kekhawatiran dengan hak, hak
akses dan kontrol lain dari sistem database. DCL digunakan untuk memberikan /
mencabut hak akses pada database dan isinya. DCL sederhana, tapi MySQL hak
akses yang sedikit rumit. DCL adalah tentang keamanan. DCL digunakan untuk
mengontrol pernyataan transaction.DCL database memungkinkan Anda untuk
mengontrol yang memiliki akses ke objek tertentu dalam database Anda.
1. GRANT
2. REVOKE
GRANT: ini menyediakan hak akses pengguna ke database. Dalam database MySQL menawarkan administrator dan pengguna sebagian besar dari opsi kontrol. Pada sisi administrasi proses mencakup kemungkinan untuk administrator untuk mengontrol hak pengguna tertentu atas server MySQL dengan membatasi akses mereka ke seluruh database atau ajib membatasi hak akses untuk table.It spesifik Membuat entri dalam sistem keamanan yang
memungkinkan pengguna dalam database saat ini untuk bekerja dengan data dalam database saat ini atau mengeksekusi pernyataan tertentu.
sintaks:
Pernyataan izin:
GRANT {SEMUA | Pernyataan [, ... n]}
UNTUK security_account [, ... n]
Biasanya, database administrator pertama menggunakan CREATE USER untuk membuat account, maka GRANT untuk mendefinisikan hak-hak istimewanya dan karakteristik.
Sebagai contoh:
CREATE USER 'arjun' @ 'localhost' IDENTIFIED BY 'mypass';
GRANT ALL ON * ATAS db1 'arjun' 'localhost' @.;
GRANT SELECT ON anak UNTUK 'arjun' @ 'localhost';
GRANT PEMAKAIAN ON * * ATAS 'arjun' 'localhost' @ DENGAN MAX_QUERIES_PER_HOUR 90.;
1. GRANT
2. REVOKE
GRANT: ini menyediakan hak akses pengguna ke database. Dalam database MySQL menawarkan administrator dan pengguna sebagian besar dari opsi kontrol. Pada sisi administrasi proses mencakup kemungkinan untuk administrator untuk mengontrol hak pengguna tertentu atas server MySQL dengan membatasi akses mereka ke seluruh database atau ajib membatasi hak akses untuk table.It spesifik Membuat entri dalam sistem keamanan yang
memungkinkan pengguna dalam database saat ini untuk bekerja dengan data dalam database saat ini atau mengeksekusi pernyataan tertentu.
sintaks:
Pernyataan izin:
GRANT {SEMUA | Pernyataan [, ... n]}
UNTUK security_account [, ... n]
Biasanya, database administrator pertama menggunakan CREATE USER untuk membuat account, maka GRANT untuk mendefinisikan hak-hak istimewanya dan karakteristik.
Sebagai contoh:
CREATE USER 'arjun' @ 'localhost' IDENTIFIED BY 'mypass';
GRANT ALL ON * ATAS db1 'arjun' 'localhost' @.;
GRANT SELECT ON anak UNTUK 'arjun' @ 'localhost';
GRANT PEMAKAIAN ON * * ATAS 'arjun' 'localhost' @ DENGAN MAX_QUERIES_PER_HOUR 90.;
REVOKE: The REVOKE pernyataan
memungkinkan administrator sistem dan mencabut hak istimewa dari account MySQL.
Sintaks: REVOKE
priv_type [(column_list)]
[, Priv_type [(column_list)]] ...
ON [object_type] priv_level
DARI pengguna [, user] ...
REVOKE ALL PRIVILEGES, GRANT OPTION
DARI pengguna [, user] ...
Sebagai contoh:
mysql> REVOKE INSERT ON * * FROM 'arjun' @ 'localhost'.;
Sintaks: REVOKE
priv_type [(column_list)]
[, Priv_type [(column_list)]] ...
ON [object_type] priv_level
DARI pengguna [, user] ...
REVOKE ALL PRIVILEGES, GRANT OPTION
DARI pengguna [, user] ...
Sebagai contoh:
mysql> REVOKE INSERT ON * * FROM 'arjun' @ 'localhost'.;
4.
Type
data dalam sql :
No.
|
Type Data
|
Jenis
|
Jangkauan
|
1
|
TINYINT(M)
|
Integer yang sangat kecil jangkauan
nilainya
|
-128 hingga 127
|
2
|
SMALLINT(M)
|
Integer yang kecil jangkauan nilainya
|
-32768 hingga 32767
|
3
|
MEDIUMINT(M)
|
Integer tingkat menengah
|
-8388608 hingga 8388607
|
4
|
INT(M)
|
Integer berukuran normal
|
-2147483648 hingga 2147485648
|
5
|
BIGINT(M)
|
Integer berukuran besar
|
-9223372036854775808 hingga
9223372036854775807
|
6
|
DECIMAL(M,D)
|
Jika D tdk diisi dianggap 0, jika M tidak
diisi maka dianggap 10
|
|
7
|
NUMERIC(M,D)
|
Sama dengan decimal
|
|
8
|
DATE
|
YYYY-MM-DD
|
|
9
|
DATETIME
|
YYYY-MM-DD HH:MM:SS
|
|
10
|
TIME
|
HH:MM:SS
|
|
11
|
YEAR(2/4)
|
YEAR(2)=12
YEAR(4)=2012
|
|
12
|
CHAR(M)
|
String dengan lebar tetap
|
1-255 karakter
|
13
|
VARCHAR(M)
|
String dengan lebar bervariasi sesuai isi
datanya
|
1-255 karakter
|