Structured Query Language digunakan untuk menangani data terstruktur. Data yang disimpan dalam bentuk tabel merupakan data terstruktur. Perintah SQL ini menyimpan catatan atau data dalam tabel dan juga digunakan untuk mengambil catatan dari tabel yang disimpan. Ada empat jenis Perintah Bahasa Query Terstruktur:
- Perintah Bahasa Definisi Data.
- Perintah Bahasa Manipulasi Data.
- Perintah Bahasa Kontrol Data.
- Perintah Bahasa Kontrol Transaksi.
Perintah Bahasa Definisi Data
DDL adalah singkatan dari Data Definition Language. Definisi Data Perintah bahasa digunakan untuk menangani struktur, yaitu tabel atau relasi tempat record atau data kita disimpan. Perintah Data Definition Language digunakan untuk membuat, menghapus, dan mengubah tabel. Perintah Bahasa Definisi Data adalah:
- BUAT Perintah.
- UBAH Perintah.
- JATUHKAN Perintah.
- Perintah TRUNCATE.
BUAT Perintah: Dalam Structured Query Language, kita menyimpan data dalam tabel, dan untuk membuat tabel atau Database baru, kita menggunakan Perintah CREATE dari Perintah Data Definition Language. Di bawah ini adalah sintaks untuk membuat Database:
CREATE DATABASE DATABASE_NAME;
Misalnya,
- Tulis kueri untuk membuat database baru diikuti dengan nama database Perusahaan.
CREATE DATABASE COMPANY;
Untuk memeriksa apakah database Perusahaan dibuat, kami akan menggunakan kueri berikut:
SHOW DATABASES;
Database |
perusahaan |
karyawan |
skema_informasi |
mysql |
kinerja_skema |
phpmyadmin |
Hasil di atas mengatakan kami berhasil membuat Perusahaan Basis Data.
- Tulis kueri untuk membuat tabel baru:
Kami akan membuat tabel Karyawan baru di dalam Perusahaan Basis data. Kita harus memilih Database Perusahaan.
CREATE TABLE TABLE_NAME(COLUMN_NAME1 DATATYPE(COLUMN SIZE), COLUMN_NAME2 DATATYPE (COLUMN SIZE),COLUMN_NAME3 DATATYPE (COLUMN SIZE));
Untuk memilih Database Perusahaan, kita akan menggunakan query berikut:
USE COMPANY;
Sekarang, kami memilih Perusahaan sebagai Database; kita akan mengeksekusi query CREATE TABLE untuk membuat tabel:
CREATE TABLE EMPLOYEES (EMPLOYEE INT PRIMARY KEY, FIRST_NAME VARCHAR (20), LAST_NAME VARCHAR (20), SALARY INT, CITY VARCHAR (20) );
Kami membuat nama tabel Karyawan menggunakan kueri CREATE TABLE.
Untuk memeriksa apakah tabel Karyawan dibuat, kami akan menggunakan kueri berikut:
SHOW TABLES;
Tables_in_company |
karyawan |
Hasil di atas menyatakan bahwa kita berhasil membuat Tabel 'Karyawan'.
Kami akan membuat tabel lain menggunakan CREATE TABLE.
CREATE TABLE DEPARTMENT (DEPARTMENT INT PRIMARY KEY, DEPARTMENT_NAME VARCHAR (20));
Kami membuat nama tabel 'Departemen' menggunakan kueri CREATE TABLE.
Untuk memeriksa apakah tabel Department dibuat, kita akan menggunakan query berikut:
SHOW TABLES;
Tables_in_company |
karyawan departemen |
Hasil di atas menyatakan bahwa kita berhasil membuat Tabel 'Karyawan'.
ALTER Perintah: Dalam Structured Query Language, setiap kali kita ingin mengubah skema atau struktur tabel, kita akan menggunakan perintah ALTER dari perintah Data Definition Language. Perintah ALTER digunakan untuk mengubah skema tabel dengan menambahkan kolom baru, menghapus kolom yang ada dari tabel, dll. Berikut adalah sintaks Perintah ALTER untuk menambahkan kolom baru:
ALTER TABLE TABLE_NAME ADD COLUMN_NAME DATATYPE (COLUMN SIZE);
Sintaks Perintah ALTER untuk menghapus kolom yang ada:
ALTER TABLE TABLE-NAME DROP COLUMN COLUMN_NAME;
Sintaks Perintah ALTER untuk mengganti nama kolom tabel yang ada:
ALTER TABLE TABLE_NAME RENAME COLUMN OLD_COLUMN-NAME TO NEW_COLUMN_NAME;
Misalnya,
- Tulis kueri untuk menambahkan kolom baru di tabel Karyawan:
ALTER TABLE EMPLOYEES ADD DEPARTMENT VARCHAR (20);
Di sini, kami telah menjalankan perintah ALTER TABLE pada tabel Karyawan diikuti dengan kata kunci ADD, yang berarti menambahkan kolom dengan nama kolom Departemen, tipe data VARCHAR dan ukuran kolom 20. Query di atas mengatakan kami menambahkan kolom baru bernama ' Department' dengan tipe data VARCHAR dan ukuran kolom adalah 20.
Untuk memeriksa apakah kolom baru ditambahkan ke tabel Employee, kita akan menggunakan perintah DESC pada tabel employee.
DESC EMPLOYEES;
Field | Ketik | Nol | Kunci | Bawaan | Ekstra |
KARYAWANID | int(11) | TIDAK | PRI | NULL | |
FIRST_NAME | varchar(20) | YA | NULL | ||
LAST_NAME | varchar(20) | YA | NULL | ||
GAJI | int(11) | YA | NULL | ||
KOTA | varchar(20) | YA | NULL | ||
DEPARTEMEN | varchar(20) | YA | NULL |
Hasil di atas memverifikasi bahwa kolom baru berhasil ditambahkan ke tabel karyawan.
Perintah DROP: Perintah DROP dalam Structured Query Language digunakan untuk menghapus Tabel dan skema tabel dari Database. Berikut adalah sintaks dari Perintah DROP;
DROP TABLE TABLE_NAME;
Tulis kueri untuk menghapus tabel Departemen dari Database Karyawan.
DROP TABLE DEPARTMENT;
Di sini, kita telah mengeksekusi query DROP TABLE pada tabel Department.
Untuk memeriksa apakah tabel Department dihapus, kita akan menggunakan query berikut:
SHOW TABLES;
Tables_in_company |
Karyawan |
Hasil di atas menyatakan bahwa kita berhasil menghapus tabel Departemen dari Database Perusahaan.
Perintah TRUNCATE: Perintah TRUNCATE dalam Structured Query Language menghapus semua data dari tabel tanpa mengganggu skema tabel di Database. Di bawah ini adalah sintaks dari Perintah TRUNCATE:
TRUNCATE TABLE TABLE_NAME
Tulis kueri untuk menghapus semua catatan dari tabel Karyawan.
Kami akan menggunakan kueri SELECT untuk mengambil data terlebih dahulu dari tabel Karyawan dan kemudian menjalankan kueri TRUNCATE.
SELECT * FROM EMPLOYEES;
KARYAWAN | FIRST_NAME | LAST_NAME | GAJI | KOTA | DEPARTEMEN |
1 | Vaibhav | Sharma | 65000 | Noida | Oracle |
2 | Shweta | Sharma | 55000 | Jaipur | Oracle |
3 | Sonali | Mali | 60000 | Nashik | FMW |
TRUNCATE TABLE EMPLOYEES;
Di sini, kami berhasil menghapus semua data dari tabel Karyawan. Sekarang, kita akan menggunakan kueri SELECT pada tabel Karyawan.
TRUNCATE TABLE EMPLOYEES;
Setelah menjalankan kueri SELECT pada tabel Karyawan, hasilnya akan menampilkan kumpulan kosong. Ini berarti kami berhasil menghapus seluruh tabel.
Perintah Bahasa Manipulasi Data
DML Singkatan dari Data Manipulation Language. Perintah Data Manipulation Language dalam Structured Query Language memanipulasi data dalam Database. Perintah Data Manipulation Language digunakan untuk mengambil data, menyimpan data, memodifikasi data, dan menghapus data dari tabel yang ada.
Perintah Data Manipulation Language dalam Structured Query Language adalah sebagai berikut:
- PILIH Perintah.
- MASUKKAN Perintah.
- Perintah PERBARUI.
- Perintah HAPUS.
Pertama, kita akan melihat perintah INSERT dari Bahasa Manipulasi Data dalam Bahasa Query Terstruktur. Setelah INSERT, kita akan bergerak menuju Perintah SELECT.
Perintah INSERT: Perintah INSERT menyimpan data atau record dalam tabel database. Perintah INSERT adalah Perintah penting dari Bahasa Manipulasi Data dalam Bahasa Kueri Terstruktur.
Sintaks perintah INSERT Data Manipulation Language:
INSERT INTO TABLE_NAME VALUES (VALUE1, VALUE2, VALUE3, VALUE);
Sintaks ini memungkinkan semua bidang tabel. Jika Anda ingin memasukkan nilai untuk bidang yang dipilih, gunakan Sintaks di bawah ini:
INSERT INTO TABLE_NAME (COLUMN_NAME1, COLUMN_NAME2) VALUES (VALUE1, VALUE2);
Sintaks di atas digunakan untuk menyimpan nilai untuk bidang tabel yang dipilih.
Misalnya,
Dalam contoh ini, kita akan menyisipkan record untuk semua field dalam tabel.
Mari kita ambil tabel Karyawan, yang kosong. Kami akan INSERT record di tabel stud.
Sekarang kita akan menyimpan record baru ke dalam tabel Employee. Untuk menyimpan record ke dalam tabel, kita akan menjalankan perintah INSERT Data Manipulation Language berikut:
INSERT INTO EMPLOYEES VALUES (1001, 'VAIBHAVI', 'MISHRA', 65000, 'PUNE', 'ORACLE');
INSERT INTO EMPLOYEES VALUES (1002, 'VAIBHAV', 'SHARMA', 60000, 'NOIDA', 'ORACLE');
INSERT INTO EMPLOYEES VALUES (1003, 'NIKHIL', 'VANI', 50000, 'JAIPUR', 'FMW');
INSERT INTO EMPLOYEES VALUES (1004, 'ANUJA', 'WANRE', 55000, 'DELHI', 'FMW');
INSERT INTO EMPLOYEES VALUES (2001, 'PRACHI', 'SHARMA', 55500, 'CHANDIGARH', 'ORACLE');
INSERT INTO EMPLOYEES VALUES (2002, 'BHAVESH', 'JAIN', 65500, 'PUNE', 'ORACLE');
Kami memasukkan enam catatan ke dalam tabel karyawan.
PILIH Perintah: Perintah Bahasa Manipulasi Data yang paling penting dalam SQL adalah Perintah SELECT. Perintah SELECT digunakan untuk mengambil data dari tabel yang ditentukan, dan Perintah SELECT juga digunakan untuk mengambil bidang tabel yang dipilih menggunakan klausa WHERE dalam kueri.
Sintaks Perintah Bahasa Manipulasi Data SELECT
SELECT * FROM TABLE_NAME;
Sintaks di atas digunakan untuk mengambil seluruh tabel.
SELECT COLUMN_NAME1, COLUMN_NAME2, COLUMN_NAMEN FROM TABLE_NAME;
Sintaks di atas adalah untuk mengambil semua catatan dari kolom yang dipilih.
SELECT * FROM TABLE_NAME WHERE COLUMN_NAME;
Sintaks di atas digunakan untuk mengambil catatan tunggal menggunakan Klausa WHERE yang ditentukan oleh nama Kolom.
Misalnya, misalkan Anda ingin mengambil semua data setiap kolom dari tabel:
SELECT * FROM EMPLOYEES;
Bahasa Kueri Terstruktur ini menampilkan data tabel EMPLOYEES berikut:
- Ambil satu baris semua data menggunakan klausa WHERE yang ditentukan oleh nama kolom dari tabel:
SELECT * FROM EMPLOYEES WHERE SALARY > 55000;
Kueri di atas akan mengambil semua catatan karyawan yang gajinya lebih besar dari 55000.
Bahasa Kueri Terstruktur ini menampilkan data tabel EMPLOYEES berikut:
Perintah PERBARUI: Perintah UPDATE adalah Perintah Bahasa Manipulasi Data lain yang berharga dalam SQL. Perintah UPDATE digunakan untuk mengubah record dalam tabel database.
Sintaks UPDATE Perintah Bahasa Manipulasi Data
UPDATE TABLE_NAME SET COLUMN_NAME1 = VALUES, COLUMN_NAME2 = VALUES WHERE CONDITION;
UPDATE, SET, AND WHERE Kata Kunci Bahasa Kueri Terstruktur.
Misalnya,
- Contoh ini menjelaskan cara mengubah nilai.
Mari kita perhatikan tabel EMPLOYEES:
KARYAWAN | FIRST_NAME | LAST_NAME | GAJI | KOTA | DEPARTEMEN |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50.000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | CHANDIGARH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
2003 | RUCHIKA | JAIN | 50.000 | MUMBAI | UJI |
3001 | PRANOTI | SHENDE | 55500 | PUNE | JAVA |
3002 | ANUJA | DIMANA | 50500 | JAIPUR | FMW |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA |
4001 | RAJESH | BAIK | 60500 | MUMBAI | UJI |
- Tulis kueri untuk mengubah catatan yang Nama Belakangnya 'Jain' dan tetapkan nilai Departemen sebagai 'FMW'.
UPDATE TABLE_NAME SET COLUMN_NAME1 = VALUES, COLUMN_NAME2 = VALUES WHERE CONDITION;
Kami akan menggunakan kueri SELECT pada tabel Karyawan di mana Nama Belakang adalah Jain untuk memverifikasi apakah nilainya diubah atau tidak.
SELECT * FROM EMPLOYEES WHERE LAST_NAME = ‘JAIN’;
Bahasa Kueri Terstruktur ini menampilkan data tabel EMPLOYEES berikut:
Perintah HAPUS: DELETE adalah perintah bahasa manipulasi data yang digunakan untuk menghapus record dari tabel. Kami menghapus catatan dari tabel menggunakan klausa WHERE dalam kueri.
Sintaks UPDATE Perintah Bahasa Manipulasi Data
DELETE FROM TABLE_NAME WHERE CONDITION;
Misalnya, mari kita lihat tabel EMPLOYEES:
KARYAWAN | FIRST_NAME | LAST_NAME | GAJI | KOTA | DEPARTEMEN |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50.000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | CHANDIGARH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
2003 | RUCHIKA | JAIN | 50.000 | MUMBAI | UJI |
3001 | PRANOTI | SHENDE | 55500 | PUNE | JAVA |
3002 | ANUJA | DIMANA | 50500 | JAIPUR | FMW |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA |
4001 | RAJESH | BAIK | 60500 | MUMBAI | UJI |
- Tulis kueri untuk menghapus data yang nama kotanya 'Mumbai';
DELETE FROM EMPLOYEES WHERE CITY = ‘MUMBAI’;
Kami akan menggunakan kueri SELECT pada tabel Karyawan untuk memverifikasi apakah nilainya diubah atau tidak.
SELECT * FROM EMPLOYEES;
Bahasa Kueri Terstruktur ini menampilkan data tabel EMPLOYEES berikut:
KARYAWAN | FIRST_NAME | LAST_NAME | GAJI | KOTA | DEPARTEMEN |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50.000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | CHANDIGARH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
3001 | PRANOTI | SHENDE | 55500 | PUNE | JAVA |
3002 | ANUJA | DIMANA | 50500 | JAIPUR | FMW |
Hasil di atas menunjukkan bahwa catatan dengan Kota Mumbai berhasil dihapus.
Perintah Bahasa Kontrol Data
DCL adalah singkatan dari Data Control Language. Kami menggunakan Perintah Bahasa Kontrol Data untuk mengontrol hak akses ke catatan di dalam tabel Bahasa Kueri Terstruktur. Dengan menggunakan perintah Bahasa Kontrol Data, kami dapat memberikan hak istimewa kepada pengguna yang berwenang hanya untuk mengakses data yang ditempatkan di tabel atau database.
Pengguna memiliki beberapa hak akses pra-bangun untuk mengakses data yang ditempatkan di tabel untuk pengguna tertentu saja. Menggunakan Perintah Bahasa Kontrol Data, kami dapat menetapkan hak istimewa kepada pengguna di Bahasa Kueri Terstruktur atau Basis Data atau mengambil kembali (Mencabut) hak istimewa dari pengguna. Ada dua Perintah Bahasa Kontrol Data:
- HIBAH: Perintah Hibah digunakan untuk menetapkan hak akses kepada pengguna untuk database atau tabel.
- CATATAN: Jika kami dapat MEMBERIKAN hak akses kepada pengguna. Dalam hal ini, kami ingin mengambil kembali hak istimewa yang diberikan dari pengguna untuk database. Kita dapat menggunakan Perintah REVOKE untuk mencabut semua hak istimewa yang diberikan dari pengguna.
Bahasa Kontrol Transaksi
Dalam Structured Query Language, kita memiliki perintah Data Definition Language (DDL) dan Data Manipulation Language (DML) dengan cara yang sama seperti kita memiliki perintah Transaction Control Language (TCL) dalam Structured Query Language. Perintah Bahasa Kontrol Transaksi dalam Bahasa Kueri Terstruktur adalah Commit dan Kembalikan .
Perintah apa pun yang kami jalankan terbungkus dalam satu unit kerja yang dikenal sebagai transaksi. Misalkan kita telah menjalankan satu operasi pembaruan atau penghapusan pada tabel yang dieksekusi dalam suatu transaksi. Semua operasi atau perintah DDL atau DML disimpan atau dieksekusi dalam suatu transaksi. Untuk menyimpan DDL atau DML yang dieksekusi seperti itu, kita harus menjalankan perintah komit dari Bahasa Kontrol Transaksi. Komit digunakan untuk menyimpan semua operasi yang kami lakukan di atas meja. Semua operasi disimpan. Semua ini tentang Komitmen.
Sekarang, pikirkan, bagaimana jika kita ingin membatalkan operasi yang kita simpan menggunakan perintah komit? Lalu bisakah kita membatalkan operasi dalam Bahasa Kueri Terstruktur? Ya, kami dapat membatalkan operasi yang dilakukan. Kami akan menggunakan perintah lain dari Bahasa Kontrol Transaksi untuk membatalkan operasi, dan Perintah itu adalah Rollback. Kami akan menggunakan perintah Rollback untuk membatalkan operasi komit dalam Bahasa Kueri Terstruktur. Perintah di bawah Bahasa Kontrol Transaksi adalah:
- Berkomitmen
- Kembalikan
Pertimbangkan tabel karyawan yang ada yang memiliki catatan berikut:
KARYAWAN | FIRST_NAME | LAST_NAME | GAJI | KOTA | DEPARTEMEN |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50.000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | CHANDIGARH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
2003 | RUCHIKA | JAIN | 50.000 | MUMBAI | UJI |
3001 | PRANOTI | SHENDE | 55500 | PUNE | JAVA |
3002 | ANUJA | DIMANA | 50500 | JAIPUR | FMW |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA |
4001 | RAJESH | BAIK | 60500 | MUMBAI | UJI |
Kita dapat menggunakan perintah commit dan Rollback tanpa memulai transaksi, tetapi kita akan memulai transaksi menggunakan Mulai Transaksi Perintah untuk latihan yang baik.
Mari kita mulai dan lihat setiap contoh operasi satu per satu.
Pertama, kita akan mematikan auto-commit dengan memberikan nilai auto-commit ke 0
SET AUTOCOMMIT = 0;
- Sisipkan Nilai baru ke karyawan tabel yang ada, lalu kita akan menggunakan Perintah Komit:
INSERT INTO EMPLOYEES VALUES (2003, ‘RUCHIKA’, ‘JAIN’, 50000, ‘MUMBAI’, ‘TESTING’);
Kami akan menggunakan kueri SELECT untuk memeriksa apakah data dimasukkan ke dalam tabel atau tidak:
SELECT * FROM EMPLOYEES WHERE EMPLOYEE = 2003;
Sekarang, untuk menyimpan transaksi ini, kita akan menggunakan perintah commit.
COMMIT;
Rincian id karyawan 2001 disimpan sekarang. Ini tidak akan Rollback kecuali kita menghapusnya menggunakan perintah Delete.
- Kami akan menghapus semua informasi id karyawan 2003, dan kemudian kami akan mengembalikan perintah penghapusan menggunakan Rollback.
DELETE FROM EMPLOYEES WHERE EMPLOYEE ID = 2003;
Kami akan menggunakan kueri SELECT untuk memeriksa apakah data dihapus dari tabel atau tidak:
SELECT * FROM EMPLOYEES;
ID karyawan 2003 dihapus dari tabel. Sekarang, kita akan menggunakan Perintah Rollback untuk membatalkan operasi penghapusan.
ROLLBACK;
Setelah menjalankan Perintah Rollback, kita akan menggunakan query SELECT lagi untuk memeriksa operasi penghapusan apakah Rollback atau tidak.
SELECT * FROM EMPLOYEES WHERE EMPLOYEE ID = 2003;