Jenis
Jenis Perintah SQL
Pengertian ,fungsi dan contoh - contoh
- Data Definisi Language (DDL)
DDL merupakan bahasa atau perintah pada SQL yang digunakan untuk mendefinisikan data seperti menulis, menghapus dan mengatur atau mengubah data.
Perintah – perintah yang ada pada komponen DDL yaitu CREATE, DROP, dan ALTER.
v
CREATE
digunakan untuk membuat database, membuat tabel, membuat view dan membuat index.
a. Membuat database
digunakan untuk membuat database, membuat tabel, membuat view dan membuat index.
a. Membuat database
CREATE DATABASE
Bentuk
Umum CREATE DATABASE:
CREATE
{DATABASE | SCHEMA} [IF NOT EXISTS] db_name
[create_specification]
...
create_specification:
[DEFAULT]
CHARACTER SET [=] charset_name
|
[DEFAULT] COLLATE [=] collation_name
Fungsi
statement CREATE DATABASE adalah
untuk menciptakan database baru. Perintah ini fungsinya sama dengan statement CREATE SCHEMA. Jalankan MySQL console
, ketikkan perintah SHOW DATABASE untuk melihat daftar database apa saja yang
ada dalam MySQL.
SHOW
DATABASES;
+--------------------+
|
Database |
+--------------------+
|
information_schema |
|
mysql
|
|
phpmyadmin |
|
test
|
+--------------------+
Maka
akan tampil semua database yang ada dalam MySQL. Untuk membuat database
ketikkan pada MySQL console CREATE
DATABASE nama_database;. Misalkan kita akan menciptakan database
baru dengan nama universitas.
CREATE DATABASE universitas;
Gunakan
perintah SHOW DATABASES untuk melihat database yang baru saja kita buat.
SHOW DATABASES;
+--------------------+
|
Database |
+--------------------+
| information_schema |
|
mysql
|
|
phpmyadmin |
|
test
|
|
universitas |
+--------------------+
Contoh sintak
Create database namadatabase
b.Membuat tabel lengkap dengan kolomnya
Contoh sintak)
CREATE TABLE Buku(
id INTEGER PRIMARY KEY,
kode_buku VARCHAR(20) NULL,
judul_buku VARCHAR(225) NOT NULL,
tanggal_terbit DATE NULL
);
id INTEGER PRIMARY KEY,
kode_buku VARCHAR(20) NULL,
judul_buku VARCHAR(225) NOT NULL,
tanggal_terbit DATE NULL
);
Type data dapat berupa char(), int, numerik dan sebagainya
sesuai denga nama kolom.
c.Membuat
view
view merupakan bentuk alternatif penyajian data dari satu tabel atau lebih, beberapa tujuan membuat view adalah meningkatkan keamanan data serta penyederhanaan bagi para pengguna.
Contoh sintak
Create view namaview (kolom1, kolom2, . . . .)
as select statement from namatabel
[with check option]
Keterangan :
Namaview : nama view yang dibuat
Column : nama atribut untuk view
Statement : atribut yang dipilih dari tabel database
Namatabel : nama tabel yang ada pada basis data
d.Membuat index
yaitu berfungsi untuk membuat index
Contoh sintak
create [unique] index namaindex
on namatabel (namakolom)
view merupakan bentuk alternatif penyajian data dari satu tabel atau lebih, beberapa tujuan membuat view adalah meningkatkan keamanan data serta penyederhanaan bagi para pengguna.
Contoh sintak
Create view namaview (kolom1, kolom2, . . . .)
as select statement from namatabel
[with check option]
Keterangan :
Namaview : nama view yang dibuat
Column : nama atribut untuk view
Statement : atribut yang dipilih dari tabel database
Namatabel : nama tabel yang ada pada basis data
d.Membuat index
yaitu berfungsi untuk membuat index
Contoh sintak
create [unique] index namaindex
on namatabel (namakolom)
v
DROP
Drop pada SQL adalah perintah yang di gunakan untuk menghapus data – data yang telah di simpan pada database.
a.Drop tabel
yaitu menghapus tabel
Contoh sintak
Drop table namatabel
b.Drop view
menghapus view yang telah di buat
Contoh sintak
Drop view namaview
c.Drop index
Menghapus index
Contoh sintak
Drop index namaindex
hal yang perlu di ingat adalah penghapusan atau penggunaan perintah view tidak dapat di urungkan.
Drop pada SQL adalah perintah yang di gunakan untuk menghapus data – data yang telah di simpan pada database.
a.Drop tabel
yaitu menghapus tabel
Contoh sintak
Drop table namatabel
b.Drop view
menghapus view yang telah di buat
Contoh sintak
Drop view namaview
c.Drop index
Menghapus index
Contoh sintak
Drop index namaindex
hal yang perlu di ingat adalah penghapusan atau penggunaan perintah view tidak dapat di urungkan.
v
ALTER
kegunaan dari perintah alter adalah untuk merubah atribut pada suatu tabel
Contoh sintak
Alter table namatabel
Modify (namakolom typekolom) untuk mengganti type kolom dan nama kolom.
alter table namatabel
add (namakolom type kolom[[before, namakolom]]) menambah kolom.
alter table namatabel
drop (namakolom typekolom) untuk menghapus kolom pada sebuah tabel.
kegunaan dari perintah alter adalah untuk merubah atribut pada suatu tabel
Contoh sintak
Alter table namatabel
Modify (namakolom typekolom) untuk mengganti type kolom dan nama kolom.
alter table namatabel
add (namakolom type kolom[[before, namakolom]]) menambah kolom.
alter table namatabel
drop (namakolom typekolom) untuk menghapus kolom pada sebuah tabel.
- Data Manipulation Language (DML)
- INSERT
insert berfungsi untuk menambah niali pada suatu tabel.
Contoh sintak
insert into namatabel values (‘value1’, ‘value2’,’ ...’)
keterangan : value adalah nilai yang ingin dimasukkan ke dalam kolom - UPDATE
Berfungsi untuk merubah record atau nilai didalam suatu kolom
Contoh sintak
Update namatabel SET namakolom = recordbaru where kondisi
keterangan recordbaru di ubah sesuai dengan nama nilai baru yang akan di ubah - DELETE
Menghapus record atau nilai didalam suatu kolom pada tabel tertentu
Contoh sintak
DELETE namakolom from namatabel where kondisi
- SELECT
select adalah perintah yang di gunakan untuk menampilkan nilai atau recor yang di pilih
Contoh sintak
select namakolom from namatabel
- Data Control Language (DCL)
Data Control
Language (DCL) merupakan perintah-perintah yang
dapat digunakan untuk menjaga keamanan basis data. Perintah tersebut dapat
dipakai untuk menentukan akses basis data hanya dapat dilakukan oleh
orang-orang tertentu dan
dengan macam akses
yang dibatasi pula.
a. GRANT
Grant berfungsi untuk
membuat user baru dan memberikan hak istimewa. Grant adalah salah
satu privilege untuk
tabel. Grant digunakan
untuk memberikan privilege kepada
tabel yang didefinisikan
kepada pemakai lain. Privilege
untuk pemakai dalam
perintah grant didefinisikan dengan menggunakan nama-nama
privilege. Nama privilege
memudahkan administrator
untuk dapat memberikan
priivilege tanpa harus
tahu apa nama field dan tabel
yang harus diisi. Perintah grant secara
otomatis akan menambah
data pemakai apabila data
nama pemakai yang
disertakan pada perintah
tersebut belum ada dalam
tabel user. Perintah
grant memudahkan administrator
untuk tidak perlu melakukan
perintah pendefinisian privilege
dengan menggunakan sql. Karena
dengan menggunakan sql, kita harus hafal nama tabel yang harus diisi,
field apa saja
yang harus diisi,
jumlah field yang
harus diisi. Kesalahan mudah
dilakukan dengan menggunakan
perintah sql karena ketidaktelitian atau ketidakhafalan
nama tabel dan nama field yang harus
diisi.
• Sintak Umum :
GRANT hak_akses ON nama_tabel TO
pemakai;
GRANT ALL
PRIVILEGES ON database_name.* TO
‘myuser’
IDENTIFIED BY ‘mypassword’;
Contoh Penggunaan :
1.
GRANT SELECT ON Point_Of_Sales.jenis TO Febe;
2.
GRANT SELECT ON Point_Of_Sales.jenisTO Winda;
3.
GRANT SELECT ON Point_Of_Sales.item TO Elfrida;
4.
GRANT ALL PRIVILEGES ON Point_Of_Sales.User TO Admin;
5.
GRANT ALL ON Point_Of_Sales.jualDetail TO Admin
6.
SHOW GRANTS FOR root@localhost;
7.
SHOW GRANTS FOR Admin;
8.
GRANT SELECT,INSERT ON Point_Of_Sales.jualDetailTO kasir;
9.
GRANT SELECT(Kode,Nama) ON Point_Of_Sales.jenis TO Elfrida;
10. GRANT
UPDATE(kodeItem,NmItem,kategori,Harga) ON
b.REVOKE
Untuk menghapus batasan hak akses yang telah diatur dengan menggunakan perintah GRANT, digunakan perintah REVOKE.
Untuk menghapus batasan hak akses yang telah diatur dengan menggunakan perintah GRANT, digunakan perintah REVOKE.
• Sintak umum
:
REVOKE hak_akses ON nama_tabel FROM
namaAccount@namaHost;
Atau menghapus batasan hak akses untuk database
& tabel :
REVOKE hak_akses ON nama_database.nama_tabel FROM
user;
Atau menghapus batasan hak akses untuk kolom
tertentu :
REVOKE hak_akses(field1,field2, field3,…) ON
nama_database.nama_tabel FROM user;
Penulisan perintah REVOKE :
HakAkses(field) :
kita harus memberikan
sedikitnya satu hak
akses.
Untuk setiap hak akses yang diberikan, dapat juga
diberikan daftar field
yang diletakkan dalam
kurung, dan dipisahkan
dengan tanda koma.
Contoh : REVOKE select (nim, nama), update,
insert(nim), …
NamaTabel
: merupakan nama
tabel yang dikenal
hak akses tersebut.
Harus
ada sedikitnya satu
nama tabel. Dapat menggunakan simbol
asterik
(*) untuk mewakili
semua tabel pada
database aktif. Penulisan
namaTabel dapat juga diikuti oleh nama database
diikuti nama tabel yang
dipisahkan
dengan tanda titik.
Menggunakan simbol *.*
berarti semua database dan semua
tabel yang dikenai hak akses tersebut.
namaAccount@namaHost : jika nama
account tidak ada,
tidak pernah diberikan hak
akses dengan perintah
GRANT sebelumnya maka
akan terjadi error.
• Contoh
Penggunaan :
1. REVOKE
SELECT ON Point_Of_Sales.jenis FROM Febe;
2. REVOKE
SELECT ON Point_Of_Sales.jenis FROM Winda;
3. REVOKE
SELECT ON Point_Of_Sales.item FROM Elfrida;
4. REVOKE ALL
PRIVILEGES ON Point_Of_Sales.user FROM Admin;
5. REVOKE ALL
ON Point_Of_Sales.jualDetail FROM Admin;
6. REVOKE
SELECT,INSERT ON Point_Of_Sales.jualDetail FROM kasir;
7.
REVOKE SELECT(Kode,Nama) ON
Point_Of_Sales.jenis FROM Elfrida;
8. REVOKE
UPDATE(kodeItem,NmItem,kategori,Harga) ONPoint_Of_Sales.item FROM Elfrida;
9. REVOKE
INSERT ON Point_Of_Sales.jenis FROM Winda;
10.
REVOKE ALL ON Point_Of_Sales.item FROM PUBLIC
c. DENY :
Untuk melarang
hak akses
Ø Contohnya
:
DENY SELECT On mahasiswa To
Public..Penerangan Deny : Membina kemasukan untuk sistem yang menafikan
kebenaran dari akaun keselamatan pengelakkan pengguna atau ahli kumpulan atau
peranan dari mewarisi kebenaran melalui kumpulannya dan peranan keahlian.
Secara lalai, hanya ahli sysadmin, dbcreator, db_Owner atau peranan
db_securitiadminton boleh larikan pernyaataan DCL..
4.TCL (Transaction Processing Language)
TCL merupakan singkatan dari Transaction
Processing Language, konsep ini digunakan untuk mekanisme dalam pemrosesan
sebuah transaksi dalam database. Dua perintah SQL yang paling populer untuk TCL
adalah Rollback dan Commit
Contoh TCL Dalam Basis Data
·
BEGIN TRAN
Delete From Buku Where id = 1124;
Rollback
//Commit
Penjelasan : Begin tran digunakan untuk perintah bahwa akan dimulai suatu
transaksi/query, pada bagian akhir terdapat perintah rollback dan Commit.
Rollback artinya query yang ada diantara begin tran tidak akan di eksekusi
dalam database secara langsung, dalam artian data sesungguhnya tidak berubah.
Penggunaan TCL ini untuk melihat apakah query yang dijalankan sudah benar atau
belum, jika masih salah makan programmer atau DBA dapat memperbaikinya lagi
sehingga tidak membahayakan data dalam tabel fisiknya. Jika sudah benar, maka
DBA dapat meremark TCL Rollback dan mengaktifkan perintah TCL Commit untuk
memberikan perubahan pada tabel fisik.Delete From Buku Where id = 1124;
Rollback
//Commit
Tidak ada komentar:
Posting Komentar