Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng chế độ xem MySQL

Bài viết này mô tả cách tạo và sử dụng chế độ xem MySQL trên tài khoản A2 Hosting của bạn. Chế độ xem không thực sự lưu trữ bất kỳ dữ liệu nào. Thay vào đó, chúng lưu trữ các truy vấn được xác định trước trả về một tập hợp kết quả. Vì các khung nhìn MySQL trông và hoạt động giống như các bảng thông thường, chúng đôi khi được gọi là bảng ảo .

Chế độ xem cung cấp một số lợi thế. Bạn có thể sử dụng dạng xem để ẩn các cột trong bảng khỏi người dùng bằng cách cấp cho họ quyền truy cập vào dạng xem chứ không phải chính bảng. Điều này giúp tăng cường bảo mật và tính toàn vẹn của cơ sở dữ liệu. Chế độ xem cũng có thể giúp bạn tạo giao diện đơn giản hóa, trừu tượng hóa cho cơ sở dữ liệu phức tạp.

Tạo và sử dụng các khung nhìn

Bạn có thể tạo và sử dụng các chế độ xem trên bất kỳ máy chủ A2 Hosting nào sử dụng MySQL.

Thiết lập cơ sở dữ liệu thử nghiệm

Để chứng minh một ví dụ cơ bản bằng cách sử dụng các khung nhìn, hãy bắt đầu bằng cách tạo một cơ sở dữ liệu cho mục đích thử nghiệm. Trong câu lệnh SQL sau, hãy thay thế tên người dùng với tên người dùng tài khoản của bạn:

CREATE DATABASE username_test;
Bạn có thể chạy lệnh SQL trước (và các lệnh SQL sau) từ dòng lệnh bằng công cụ MySQL hoặc trong trình duyệt web của bạn bằng phpMyAdmin.

Nếu bạn đang sử dụng phpMyAdmin, hãy nhấp vào tên tên người dùng _test để chọn cơ sở dữ liệu. Ngược lại, nếu bạn đang sử dụng chương trình dòng lệnh mysql, hãy nhập câu lệnh SQL sau:

USE username_test;

Tiếp theo, tạo một bảng trong tên người dùng _test cơ sở dữ liệu có tên sản phẩm . Để thực hiện việc này, hãy chạy câu lệnh SQL sau:

CREATE TABLE products (prod_id INT NOT NULL AUTO_INCREMENT, prod_name VARCHAR(20) NOT NULL, prod_cost FLOAT NOT NULL DEFAULT 0.0, prod_price FLOAT NOT NULL DEFAULT 0.0, PRIMARY KEY(prod_id));

Câu lệnh SQL sau thêm một số dữ liệu mẫu vào sản phẩm bảng:

INSERT INTO products (prod_name, prod_cost, prod_price) VALUES ('Basic Widget',5.95,8.35),('Micro Widget',0.95,1.35),('Mega Widget',99.95,140.00);
Tạo chế độ xem

Bây giờ chúng ta có một cơ sở dữ liệu và một bảng để làm việc, chúng ta đã sẵn sàng để tạo một dạng xem đơn giản. Hãy tạo một chế độ xem có tên MinimumPriceView . Chế độ xem này trả về tập dữ liệu của tất cả các sản phẩm có chi phí lớn hơn 1,00 (tính bằng đô la, Euro hoặc bất kỳ đơn vị tiền tệ nào mà chúng tôi đang làm việc).

Để tạo dạng xem này, hãy chạy câu lệnh MySQL sau:

CREATE VIEW minimumPriceView AS SELECT prod_name FROM products WHERE prod_cost > 1.00;

Như bạn có thể thấy, cú pháp cơ bản để tạo chế độ xem là TẠO CHẾ ĐỘ XEM tên AS truy vấn . Thay thế tên bằng tên của chế độ xem và thay thế truy vấn với truy vấn SQL mà bạn muốn sử dụng.

Nếu bạn nhìn vào danh sách các bảng trong cơ sở dữ liệu, bạn sẽ thấy MinimalPriceView xem được liệt kê cùng với các bảng khác. Tuy nhiên, hãy nhớ rằng các khung nhìn là các bảng ảo chứa các truy vấn. Chúng không chứa bất kỳ dữ liệu thực tế nào.
Sử dụng chế độ xem

Bây giờ bạn có thể sử dụng MinimalPriceView xem trong một truy vấn:

SELECT * FROM minimumPriceView;

Câu lệnh SQL này trả về các kết quả sau:

+--------------+
| prod_name    |
+--------------+
| Basic Widget |
| Mega Widget  |
+--------------+
2 rows in set (0.00 sec)

Chế độ xem giá tối thiểu chế độ xem đã thực hiện tất cả các công việc phía sau hậu trường, rút ​​ra các sản phẩm có chi phí vượt quá giá trị 1,00. Mặc dù đây là một ví dụ rất đơn giản về chế độ xem, nhưng bạn có thể sử dụng các kỹ thuật tương tự trong cơ sở dữ liệu của riêng mình để tạo các chế độ xem phức tạp hơn.

Thông tin khác

  • Để biết thêm thông tin về chế độ xem MySQL, vui lòng truy cập http://dev.mysql.com/doc/refman/5.0/en/views.html.
  • Để biết thêm thông tin về TẠO CHẾ ĐỘ XEM , vui lòng truy cập http://dev.mysql.com/doc/refman/5.0/en/create-view.html.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đặt lại con trỏ mảng trong kết quả PDO

  2. Gặp sự cố với các hàng khớp trong cơ sở dữ liệu bằng cách sử dụng PDO

  3. # 1055 - Biểu thức của danh sách SELECT không nằm trong mệnh đề GROUP BY và chứa cột không được tổng hợp, cột này không tương thích với sql_mode =only_full_group_by

  4. Làm cách nào để sửa đổi kích thước của cột trong bảng MySQL?

  5. MySQL - tôi có thể chèn bao nhiêu hàng trong một câu lệnh INSERT?