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;