SQLite - Lượt xem

Một dạng xem chỉ là một câu lệnh SQLite được lưu trữ trong cơ sở dữ liệu với một tên liên quan. Nó thực sự là một thành phần của một bảng dưới dạng một truy vấn SQLite được xác định trước.

Một dạng xem có thể chứa tất cả các hàng của bảng hoặc các hàng được chọn từ một hoặc nhiều bảng. Một dạng xem có thể được tạo từ một hoặc nhiều bảng phụ thuộc vào truy vấn SQLite đã viết để tạo dạng xem.

Chế độ xem là một loại bảng ảo, cho phép người dùng -

  • Cấu trúc dữ liệu theo cách mà người dùng hoặc lớp người dùng thấy tự nhiên hoặc trực quan.

  • Hạn chế quyền truy cập vào dữ liệu để người dùng chỉ có thể xem dữ liệu hạn chế thay vì một bảng hoàn chỉnh.

  • Tổng hợp dữ liệu từ các bảng khác nhau, có thể được sử dụng để tạo báo cáo.

Dạng xem SQLite là dạng chỉ đọc và do đó bạn có thể không thực hiện được câu lệnh DELETE, INSERT hoặc UPDATE trên dạng xem. Tuy nhiên, bạn có thể tạo trình kích hoạt trên một dạng xem kích hoạt khi cố gắng XÓA, CHÈN hoặc CẬP NHẬT một dạng xem và thực hiện những gì bạn cần trong phần thân của trình kích hoạt.

Tạo chế độ xem

Dạng xem SQLite được tạo bằng cách sử dụng CREATE VIEWtuyên bố. Dạng xem SQLite có thể được tạo từ một bảng, nhiều bảng hoặc một dạng xem khác.

Sau đây là cú pháp CREATE VIEW cơ bản.

CREATE [TEMP | TEMPORARY] VIEW view_name AS
SELECT column1, column2.....
FROM table_name
WHERE [condition];

Bạn có thể bao gồm nhiều bảng trong câu lệnh SELECT của mình theo cách tương tự như khi bạn sử dụng chúng trong một truy vấn SQL SELECT thông thường. Nếu có từ khóa TEMP hoặc TEMPORARY tùy chọn, chế độ xem sẽ được tạo trong cơ sở dữ liệu tạm thời.

Thí dụ

Xem xét bảng COMPANY với các bản ghi sau:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Sau đây là một ví dụ để tạo một dạng xem từ bảng COMPANY. Chế độ xem này sẽ được sử dụng để chỉ có một vài cột từ bảng COMPANY.

sqlite> CREATE VIEW COMPANY_VIEW AS
SELECT ID, NAME, AGE
FROM  COMPANY;

Giờ đây, bạn có thể truy vấn COMPANY_VIEW theo cách tương tự như khi bạn truy vấn một bảng thực tế. Sau đây là một ví dụ -

sqlite> SELECT * FROM COMPANY_VIEW;

Điều này sẽ tạo ra kết quả sau.

ID          NAME        AGE
----------  ----------  ----------
1           Paul        32
2           Allen       25
3           Teddy       23
4           Mark        25
5           David       27
6           Kim         22
7           James       24

Giảm lượt xem

Để bỏ một chế độ xem, chỉ cần sử dụng câu lệnh DROP VIEW với view_name. Cú pháp DROP VIEW cơ bản như sau:

sqlite> DROP VIEW view_name;

Lệnh sau sẽ xóa chế độ xem COMPANY_VIEW, mà chúng ta đã tạo trong phần trước.

sqlite> DROP VIEW COMPANY_VIEW;