Ngôn ngữ truy vấn có cấu trúc được sử dụng để xử lý dữ liệu có cấu trúc. Dữ liệu được lưu trữ dưới dạng bảng là dữ liệu có cấu trúc. Các lệnh SQL này lưu trữ các bản ghi hoặc dữ liệu trong bảng và cũng được sử dụng để tìm nạp các bản ghi từ các bảng được lưu trữ. Có bốn loại Lệnh ngôn ngữ truy vấn có cấu trúc:
- Lệnh Ngôn ngữ Định nghĩa Dữ liệu.
- Lệnh ngôn ngữ thao tác dữ liệu.
- Lệnh ngôn ngữ kiểm soát dữ liệu.
- Lệnh ngôn ngữ điều khiển giao dịch.
Lệnh ngôn ngữ định nghĩa dữ liệu
DDL là tên viết tắt của Ngôn ngữ Định nghĩa Dữ liệu. Các lệnh của Ngôn ngữ Định nghĩa Dữ liệu được sử dụng để xử lý cấu trúc, tức là bảng hoặc quan hệ trong đó các bản ghi hoặc dữ liệu của chúng ta được lưu trữ. Định nghĩa dữ liệu Các lệnh của ngôn ngữ được sử dụng để tạo, xóa và thay đổi bảng. Các lệnh của Ngôn ngữ Định nghĩa Dữ liệu là:
- Lệnh CREATE.
- Lệnh ALTER.
- Lệnh DROP.
- Lệnh TRUNCATE.
TẠO Lệnh: Trong Ngôn ngữ truy vấn có cấu trúc, chúng tôi lưu trữ dữ liệu trong bảng và để tạo bảng hoặc Cơ sở dữ liệu mới, chúng tôi sử dụng Lệnh CREATE của Lệnh ngôn ngữ định nghĩa dữ liệu. Dưới đây là cú pháp để tạo Cơ sở dữ liệu:
CREATE DATABASE DATABASE_NAME;
Ví dụ,
- Viết truy vấn để tạo cơ sở dữ liệu mới, theo sau là tên cơ sở dữ liệu Công ty.
CREATE DATABASE COMPANY;
Để kiểm tra xem cơ sở dữ liệu Công ty có được tạo hay không, chúng tôi sẽ sử dụng truy vấn sau:
SHOW DATABASES;
Cơ sở dữ liệu |
công ty |
nhân viên |
information_schema |
mysql |
performance_schema |
phpmyadmin |
Kết quả trên cho biết chúng tôi đã tạo thành công Công ty Cơ sở dữ liệu.
- Viết truy vấn để tạo bảng mới:
Chúng tôi sẽ tạo một bảng Nhân viên mới trong Công ty Cơ sở dữ liệu. Chúng tôi phải chọn Cơ sở dữ liệu công ty.
CREATE TABLE TABLE_NAME(COLUMN_NAME1 DATATYPE(COLUMN SIZE), COLUMN_NAME2 DATATYPE (COLUMN SIZE),COLUMN_NAME3 DATATYPE (COLUMN SIZE));
Để chọn Cơ sở dữ liệu công ty, chúng tôi sẽ sử dụng truy vấn sau:
USE COMPANY;
Bây giờ, chúng tôi chọn Công ty làm Cơ sở dữ liệu; chúng tôi sẽ thực hiện truy vấn CREATE TABLE để tạo bảng:
CREATE TABLE EMPLOYEES (EMPLOYEE INT PRIMARY KEY, FIRST_NAME VARCHAR (20), LAST_NAME VARCHAR (20), SALARY INT, CITY VARCHAR (20) );
Chúng tôi đã tạo tên bảng Nhân viên sử dụng truy vấn CREATE TABLE.
Để kiểm tra xem bảng Nhân viên có được tạo hay không, chúng tôi sẽ sử dụng truy vấn sau:
SHOW TABLES;
Tables_in_company |
nhân viên |
Kết quả trên cho biết chúng tôi đã tạo thành công Bảng 'Nhân viên'.
Chúng tôi sẽ tạo một bảng khác bằng cách sử dụng TẠO BẢNG.
CREATE TABLE DEPARTMENT (DEPARTMENT INT PRIMARY KEY, DEPARTMENT_NAME VARCHAR (20));
Chúng tôi đã tạo tên bảng 'Phòng ban' bằng cách sử dụng truy vấn TẠO BẢNG.
Để kiểm tra xem bảng Cục có được tạo hay không, chúng tôi sẽ sử dụng truy vấn sau:
SHOW TABLES;
Tables_in_company |
nhân viên bộ phận |
Kết quả trên cho biết chúng tôi đã tạo thành công Bảng 'Nhân viên'.
Lệnh ALTER: Trong Ngôn ngữ truy vấn có cấu trúc, bất cứ khi nào chúng ta muốn sửa đổi lược đồ hoặc cấu trúc bảng, chúng ta sẽ sử dụng lệnh ALTER của lệnh Ngôn ngữ Định nghĩa Dữ liệu. Lệnh ALTER được sử dụng để sửa đổi lược đồ bảng bằng cách thêm cột mới, xóa cột hiện có khỏi bảng, v.v. Dưới đây là cú pháp của Lệnh ALTER để thêm cột mới:
ALTER TABLE TABLE_NAME ADD COLUMN_NAME DATATYPE (COLUMN SIZE);
Cú pháp của ALTER Lệnh để xóa một cột hiện có:
ALTER TABLE TABLE-NAME DROP COLUMN COLUMN_NAME;
Cú pháp của ALTER Lệnh để đổi tên cột của bảng hiện có:
ALTER TABLE TABLE_NAME RENAME COLUMN OLD_COLUMN-NAME TO NEW_COLUMN_NAME;
Ví dụ:
- Viết truy vấn để thêm cột mới trong bảng Nhân viên:
ALTER TABLE EMPLOYEES ADD DEPARTMENT VARCHAR (20);
Ở đây, chúng ta đã thực hiện lệnh ALTER TABLE trên bảng Nhân viên theo sau là từ khóa ADD, nghĩa là thêm một cột với tên cột Cục, kiểu dữ liệu VARCHAR và kích thước cột 20. Câu truy vấn trên cho biết chúng ta đã thêm một cột mới có tên là ' Cục 'với kiểu dữ liệu VARCHAR và kích thước cột là 20.
Để kiểm tra xem một cột mới có được thêm vào bảng Nhân viên hay không, chúng tôi sẽ sử dụng lệnh DESC trên bảng của nhân viên.
DESC EMPLOYEES;
Field | Loại | Không có | PhímMặc định | Thêm | |
NHÂN VIÊN | int (11) | KHÔNG | PRI | KHÔNG ĐẦY ĐỦ | |
FIRST_NAME | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ | ||
LAST_NAME | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ | ||
LƯƠNG | int (11) | CÓ | KHÔNG ĐẦY ĐỦ | ||
THÀNH PHỐ | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ | ||
PHÒNG | varchar (20) | CÓ | KHÔNG ĐẦY ĐỦ |
Kết quả trên xác minh rằng một cột mới đã được thêm thành công vào bảng của nhân viên.
Lệnh DROP: Lệnh DROP trong Ngôn ngữ truy vấn có cấu trúc được sử dụng để xóa Bảng và lược đồ bảng khỏi Cơ sở dữ liệu. Đây là cú pháp của DROP Command;
DROP TABLE TABLE_NAME;
Viết truy vấn để loại bỏ bảng Phòng ban khỏi Cơ sở dữ liệu nhân viên.
DROP TABLE DEPARTMENT;
Ở đây, chúng tôi đã thực hiện truy vấn DROP TABLE trên bảng.
Để kiểm tra xem bảng Cục có bị xóa hay không, chúng tôi sẽ sử dụng truy vấn sau:
SHOW TABLES;
Tables_in_company |
Nhân viên |
Kết quả trên cho biết chúng tôi đã xóa thành công bảng Phòng ban khỏi Cơ sở dữ liệu của Công ty.
Lệnh TRUNCATE: Lệnh TRUNCATE trong Ngôn ngữ truy vấn có cấu trúc loại bỏ tất cả dữ liệu khỏi bảng mà không làm ảnh hưởng đến lược đồ bảng trong Cơ sở dữ liệu. Dưới đây là cú pháp của Lệnh TRUNCATE:
TRUNCATE TABLE TABLE_NAME
Viết truy vấn để xóa tất cả các bản ghi khỏi bảng Nhân viên.
Chúng tôi sẽ sử dụng truy vấn CHỌN để tìm nạp dữ liệu trước tiên của bảng Nhân viên và sau đó thực hiện truy vấn TRUNCATE.
SELECT * FROM EMPLOYEES;
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA |
1 | Vaibhav | Sharma | 65000 | Noida | Oracle |
2 | Shweta | Sharma | 55000 | Jaipur | Oracle |
3 | Sonali | Mali | 60000 | Nashik | FMW |
TRUNCATE TABLE EMPLOYEES;
Tại đây, chúng tôi đã xóa thành công tất cả dữ liệu khỏi bảng Nhân viên. Bây giờ, chúng ta sẽ sử dụng truy vấn SELECT trên bảng Nhân viên.
TRUNCATE TABLE EMPLOYEES;
Sau khi thực hiện truy vấn SELECT trên bảng Nhân viên, kết quả sẽ hiển thị một tập hợp trống. Điều này có nghĩa là chúng tôi đã xóa thành công toàn bộ bảng.
Lệnh ngôn ngữ thao tác dữ liệu
DML là viết tắt của Ngôn ngữ thao tác dữ liệu. Ngôn ngữ thao tác dữ liệu Các lệnh trong Ngôn ngữ truy vấn có cấu trúc thao tác dữ liệu trong Cơ sở dữ liệu. Các lệnh trong ngôn ngữ thao tác dữ liệu được sử dụng để tìm nạp dữ liệu, lưu trữ dữ liệu, sửa đổi dữ liệu và xóa dữ liệu khỏi bảng hiện có.
Các lệnh của Ngôn ngữ thao tác dữ liệu trong Ngôn ngữ truy vấn có cấu trúc như sau:
- Lệnh SELECT.
- Lệnh INSERT.
- Lệnh UPDATE.
- Lệnh DELETE.
Đầu tiên, chúng ta sẽ xem xét các lệnh INSERT của Ngôn ngữ thao tác dữ liệu trong Ngôn ngữ truy vấn có cấu trúc. Sau khi CHÈN, chúng ta sẽ chuyển sang Lệnh CHỌN.
Lệnh INSERT: INSERT Command lưu trữ dữ liệu hoặc bản ghi trong bảng cơ sở dữ liệu. Lệnh INSERT là lệnh quan trọng của Ngôn ngữ thao tác dữ liệu trong Ngôn ngữ truy vấn có cấu trúc.
Cú pháp của lệnh INSERT Data Manipulation Language:
INSERT INTO TABLE_NAME VALUES (VALUE1, VALUE2, VALUE3, VALUE);
Cú pháp này cho phép tất cả các trường của bảng. Trong trường hợp nếu bạn muốn chèn giá trị cho các trường đã chọn, hãy sử dụng Cú pháp bên dưới:
INSERT INTO TABLE_NAME (COLUMN_NAME1, COLUMN_NAME2) VALUES (VALUE1, VALUE2);
Cú pháp trên được sử dụng để lưu trữ các giá trị cho các trường đã chọn của bảng.
Ví dụ:
Trong ví dụ này, chúng tôi sẽ chèn một bản ghi cho tất cả các trường trong bảng.
Hãy lấy bảng Nhân viên, bảng này trống. Chúng tôi sẽ CHÈN các bản ghi trong bảng stud.
Bây giờ chúng ta sẽ lưu trữ các bản ghi mới vào bảng Nhân viên. Để lưu trữ các bản ghi vào bảng, chúng ta sẽ thực hiện lệnh INSERT Ngôn ngữ Thao tác Dữ liệu sau:
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');
Chúng tôi đã chèn sáu bản ghi vào bảng nhân viên.
Lệnh CHỌN: Các lệnh ngôn ngữ thao tác dữ liệu quan trọng nhất trong SQL là lệnh SELECT. Lệnh SELECT được sử dụng để tìm nạp dữ liệu của bảng được chỉ định và Lệnh SELECT cũng được sử dụng để tìm nạp các trường đã chọn của bảng bằng mệnh đề WHERE trong truy vấn.
Cú pháp của lệnh ngôn ngữ thao tác dữ liệu SELECT
SELECT * FROM TABLE_NAME;
Cú pháp trên được sử dụng để tìm nạp toàn bộ bảng.
SELECT COLUMN_NAME1, COLUMN_NAME2, COLUMN_NAMEN FROM TABLE_NAME;
Cú pháp trên là để tìm nạp tất cả các bản ghi của cột đã chọn.
SELECT * FROM TABLE_NAME WHERE COLUMN_NAME;
Cú pháp trên được sử dụng để tìm nạp các bản ghi đơn lẻ bằng Mệnh đề WHERE được chỉ định bởi tên Cột.
Ví dụ: giả sử bạn muốn tìm nạp tất cả dữ liệu của từng cột từ bảng:
SELECT * FROM EMPLOYEES;
Ngôn ngữ truy vấn có cấu trúc này hiển thị dữ liệu sau của bảng NHÂN VIÊN:
- Tìm nạp tất cả dữ liệu hàng đơn lẻ bằng mệnh đề WHERE được chỉ định bởi tên cột từ bảng:
SELECT * FROM EMPLOYEES WHERE SALARY > 55000;
Truy vấn trên sẽ tìm nạp tất cả các bản ghi của những nhân viên có mức lương lớn hơn 55000.
Ngôn ngữ truy vấn có cấu trúc này hiển thị dữ liệu sau của bảng NHÂN VIÊN:
Lệnh CẬP NHẬT: Lệnh CẬP NHẬT là một lệnh ngôn ngữ thao tác dữ liệu có giá trị khác trong SQL. Các lệnh UPDATE được sử dụng để sửa đổi các bản ghi trong bảng cơ sở dữ liệu.
Cú pháp của lệnh ngôn ngữ thao tác dữ liệu UPDATE
UPDATE TABLE_NAME SET COLUMN_NAME1 = VALUES, COLUMN_NAME2 = VALUES WHERE CONDITION;
CẬP NHẬT, ĐẶT VÀ Ở ĐÂU là các Từ khoá Ngôn ngữ Truy vấn Có Cấu trúc.
Đối với các ví dụ,
- Ví dụ này mô tả cách sửa đổi giá trị.
Hãy xem xét bảng NHÂN VIÊN:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | ĐIỀU CHỈNH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
2003 | RUCHIKA | JAIN | 50000 | MUMBAI | KIỂM TRA |
3001 | PRANOTI | CHIA SẺ | 55500 | PUNE | JAVA |
3002 | ANUJA | Ở ĐÂU | 50500 | JAIPUR | FMW |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI | KIỂM TRA |
- Viết truy vấn để sửa đổi bản ghi có Họ là 'Jain' và đặt giá trị Bộ là 'FMW'.
UPDATE TABLE_NAME SET COLUMN_NAME1 = VALUES, COLUMN_NAME2 = VALUES WHERE CONDITION;
Chúng tôi sẽ sử dụng truy vấn SELECT trên bảng Nhân viên có Họ là Jain để xác minh xem giá trị có được sửa đổi hay không.
SELECT * FROM EMPLOYEES WHERE LAST_NAME = ‘JAIN’;
Ngôn ngữ truy vấn có cấu trúc này hiển thị dữ liệu sau của bảng NHÂN VIÊN:
Lệnh DELETE: DELETE là một lệnh ngôn ngữ thao tác dữ liệu được sử dụng để xóa các bản ghi khỏi bảng. Chúng tôi xóa các bản ghi khỏi bảng bằng mệnh đề WHERE trong truy vấn.
Cú pháp của lệnh ngôn ngữ thao tác dữ liệu UPDATE
DELETE FROM TABLE_NAME WHERE CONDITION;
Ví dụ: hãy xem xét bảng NHÂN VIÊN:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | ĐIỀU CHỈNH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
2003 | RUCHIKA | JAIN | 50000 | MUMBAI | KIỂM TRA |
3001 | PRANOTI | CHIA SẺ | 55500 | PUNE | JAVA |
3002 | ANUJA | Ở ĐÂU | 50500 | JAIPUR | FMW |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI | KIỂM TRA |
- Viết truy vấn để xóa dữ liệu có tên thành phố là 'Mumbai';
DELETE FROM EMPLOYEES WHERE CITY = ‘MUMBAI’;
Chúng tôi sẽ sử dụng truy vấn CHỌN trên bảng Nhân viên để xác minh xem giá trị có được sửa đổi hay không.
SELECT * FROM EMPLOYEES;
Ngôn ngữ truy vấn có cấu trúc này hiển thị dữ liệu sau của bảng NHÂN VIÊN:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | ĐIỀU CHỈNH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
3001 | PRANOTI | CHIA SẺ | 55500 | PUNE | JAVA |
3002 | ANUJA | Ở ĐÂU | 50500 | JAIPUR | FMW |
Kết quả trên cho thấy rằng bản ghi với City Mumbai đã được xóa thành công.
Lệnh ngôn ngữ điều khiển dữ liệu
DCL là tên viết tắt của Ngôn ngữ điều khiển dữ liệu. Chúng tôi sử dụng Lệnh ngôn ngữ điều khiển dữ liệu để kiểm soát đặc quyền truy cập vào các bản ghi bên trong bảng Ngôn ngữ truy vấn có cấu trúc. Bằng cách sử dụng các lệnh của Ngôn ngữ điều khiển dữ liệu, chúng tôi chỉ có thể cấp đặc quyền cho người dùng được ủy quyền để truy cập vào dữ liệu được đặt trong bảng hoặc cơ sở dữ liệu.
Người dùng có một số đặc quyền truy cập được tạo sẵn để truy cập dữ liệu được đặt trong bảng chỉ dành cho một người dùng cụ thể. Sử dụng Lệnh ngôn ngữ điều khiển dữ liệu, chúng tôi có thể chỉ định đặc quyền cho người dùng trên Cơ sở dữ liệu hoặc ngôn ngữ truy vấn có cấu trúc hoặc lấy lại (Thu hồi) đặc quyền từ người dùng. Có hai Lệnh ngôn ngữ điều khiển dữ liệu:
- CẤP: Lệnh Grant được sử dụng để gán đặc quyền truy cập cho người dùng đối với cơ sở dữ liệu hoặc bảng.
- HOÀN LẠI: Nếu chúng tôi có thể CẤP quyền truy cập cho người dùng. Trong trường hợp đó, chúng tôi muốn lấy lại các đặc quyền đã chỉ định từ người dùng cho cơ sở dữ liệu. Chúng tôi có thể sử dụng Lệnh REVOKE để thu hồi tất cả các đặc quyền được chỉ định từ người dùng.
Ngôn ngữ kiểm soát giao dịch
Trong Ngôn ngữ truy vấn có cấu trúc, chúng ta có các lệnh Ngôn ngữ định nghĩa dữ liệu (DDL) và Ngôn ngữ thao tác dữ liệu (DML) giống như cách chúng ta có các lệnh Ngôn ngữ điều khiển giao dịch (TCL) trong Ngôn ngữ truy vấn có cấu trúc. Các lệnh của Ngôn ngữ kiểm soát giao dịch trong Ngôn ngữ truy vấn có cấu trúc là Cam kết và Khôi phục .
Bất kỳ lệnh nào chúng ta thực hiện đều được gói gọn trong một đơn vị công việc được gọi là giao dịch. Giả sử chúng ta đã thực hiện một thao tác cập nhật hoặc xóa trên một bảng được thực hiện trong một giao dịch. Tất cả các hoạt động hoặc lệnh của DDL hoặc DML được lưu trữ hoặc thực hiện trong một giao dịch. Để lưu DDL hoặc DML đã thực thi như vậy, chúng ta phải thực hiện lệnh cam kết của một Ngôn ngữ điều khiển giao dịch. Cam kết được sử dụng để lưu tất cả các hoạt động chúng tôi đã thực hiện trên một bảng. Tất cả các hoạt động được lưu. Tất cả điều này là về Cam kết.
Bây giờ, hãy nghĩ xem, điều gì sẽ xảy ra nếu chúng ta muốn hoàn tác các hoạt động mà chúng ta đã lưu bằng cách sử dụng các lệnh cam kết? Sau đó, chúng ta có thể hoàn tác thao tác trong Ngôn ngữ truy vấn có cấu trúc không? Có, chúng tôi có thể hoàn tác các hoạt động đã cam kết. Chúng tôi sẽ sử dụng một lệnh khác của Ngôn ngữ điều khiển giao dịch để hoàn tác các hoạt động và Lệnh đó là Rollback. Chúng tôi sẽ sử dụng lệnh Rollback để hoàn tác hoạt động cam kết trong Ngôn ngữ truy vấn có cấu trúc. Các lệnh trong Ngôn ngữ điều khiển giao dịch là:
- Cam kết
- Khôi phục
Hãy xem xét các bảng của nhân viên hiện có có các bản ghi sau:
EMPLOYEEID | FIRST_NAME | LAST_NAME | TIỀN LƯƠNG | THÀNH PHỐ | KHOA |
1001 | VAIBHAVI | MISHRA | 65000 | PUNE | ORACLE |
1002 | VAIBHAV | SHARMA | 60000 | NOIDA | ORACLE |
1003 | NIKHIL | VANI | 50000 | JAIPUR | FMW |
2001 | PRACHI | SHARMA | 55500 | ĐIỀU CHỈNH | ORACLE |
2002 | BHAVESH | JAIN | 65500 | PUNE | FMW |
2003 | RUCHIKA | JAIN | 50000 | MUMBAI | KIỂM TRA |
3001 | PRANOTI | CHIA SẺ | 55500 | PUNE | JAVA |
3002 | ANUJA | Ở ĐÂU | 50500 | JAIPUR | FMW |
3003 | DEEPAM | JAUHARI | 58500 | MUMBAI | JAVA |
4001 | RAJESH | MỤC TIÊU | 60500 | MUMBAI | KIỂM TRA |
Chúng tôi có thể sử dụng lệnh cam kết và khôi phục mà không cần bắt đầu giao dịch, nhưng chúng tôi sẽ bắt đầu giao dịch của mình bằng cách sử dụng Bắt đầu giao dịch Lệnh để thực hành tốt.
Hãy bắt đầu và xem từng ví dụ hoạt động một.
Đầu tiên, chúng tôi sẽ tắt tự động cam kết bằng cách gán giá trị của tự động cam kết thành 0
SET AUTOCOMMIT = 0;
- Chèn Giá trị mới vào các nhân viên hiện có của bảng và sau đó chúng tôi sẽ sử dụng Lệnh cam kết:
INSERT INTO EMPLOYEES VALUES (2003, ‘RUCHIKA’, ‘JAIN’, 50000, ‘MUMBAI’, ‘TESTING’);
Chúng tôi sẽ sử dụng truy vấn SELECT để kiểm tra dữ liệu có được chèn vào bảng hay không:
SELECT * FROM EMPLOYEES WHERE EMPLOYEE = 2003;
Bây giờ, để lưu giao dịch này, chúng tôi sẽ sử dụng lệnh cam kết.
COMMIT;
Chi tiết id nhân viên 2001 được lưu ngay bây giờ. Nó sẽ không được Rollback trừ khi chúng tôi xóa nó bằng lệnh Delete.
- Chúng tôi sẽ xóa tất cả thông tin của id nhân viên 2003 và sau đó chúng tôi sẽ khôi phục lệnh xóa bằng cách sử dụng Rollback.
DELETE FROM EMPLOYEES WHERE EMPLOYEE ID = 2003;
Chúng tôi sẽ sử dụng truy vấn SELECT để kiểm tra dữ liệu có bị xóa khỏi bảng hay không:
SELECT * FROM EMPLOYEES;
Id nhân viên 2003 bị xóa khỏi bảng. Bây giờ, chúng tôi sẽ sử dụng Lệnh Rollback để hoàn tác thao tác xóa.
ROLLBACK;
Sau khi thực hiện lệnh Rollback, chúng ta sẽ sử dụng lại truy vấn SELECT để kiểm tra thao tác xóa có được Rollback hay không.
SELECT * FROM EMPLOYEES WHERE EMPLOYEE ID = 2003;