Thứ Tư, 26 tháng 7, 2023

Lệnh Drop View trong MySQL

Trong bài viết này chúng ta sẽ tìm hiểu lệnh Drop View trong MySQL, đây là lệnh dùng để xóa một View bất kì ra khỏi database trong MySQL.

Mục lục

  • 1. Giới thiệu lệnh Drop View trong MySQL
  • 2. Cách dùng Drop View trong MySQL để xóa View
    • Vi dụ 1: Xóa một view
    • Ví dụ 2: Xóa nhiều view cùng một lệnh

1. Giới thiệu lệnh Drop View trong MySQL

Lệnh Drop View sẽ xóa một view ra khỏi database, sau khi thực hiện bạn sẽ không thể phục hồi lại view đó được.

Cú pháp như sau:

1
DROP VIEW [IF EXISTS] view_name;

Trong đó:

Bài viết này được đăng tại tranvanbinh.vn

  • Từ khóa DROP VIEW cho biết là bạn đang muốn xóa một view nào đó.
  • Từ khóa IF EXISTS có thể có hoặc không. Nếu có thì sẽ không bị lỗi khi view không tồn tai, ngược lại sẽ bị lỗi.

Để xóa nhiều view cùng một lúc thì ta sử dụng cú pháp sau:

1
DROP VIEW [IF EXISTS] view_name1 [,view_name2]...;

Trong lệnh này nếu bạn không sử dụng từ khóa IF EXISTS thì chỉ cần một view không tồn tại là kết quả lênh SQL không được thực hiện, đồng nghĩa với việc không có view nào được xóa.

* Lưu ý: Phiên bản MySQL 5.7 trở về trước thì lại khác, nó trả về lỗi các view không tồn tại nhưng vẫn xóa những view tồn tai.

2. Cách dùng Drop View trong MySQL để xóa View

Hãy làm một vài ví dụ về xóa view để hiểu rõ hơn câu lệnh này.

Vi dụ 1: Xóa một view

Giả sử mình dùng lệnh sau để tạo view customerPayments.

customers payments png

1
2
3
4
5
6
7
8
9
10
11
CREATE VIEW customerPayments
AS
    SELECT
        customerName,
        SUM(amount) payment
    FROM
        customers
    INNER JOIN payments
        USING (customerNumber)
    GROUP BY
        customerName;

Sau đó mình dùng lệnh Drop View để xóa view vừa tạo đó.

1
DROP VIEW IF EXISTS customerPayments;

Ví dụ 2: Xóa nhiều view cùng một lệnh

Cho hai table có cấu trúc như sau:

offices employees png

Bây giờ mình tạo mới một view có tên là employeeOffices.

1
2
3
4
5
6
7
CREATE VIEW employeeOffices AS
    SELECT
        firstName, lastName, addressLine1, city
    FROM
        employees
            INNER JOIN
        offices USING (officeCode);

Bạn hãy để ý nhé, mình chỉ mới tạo một view thôi, nên câu lệnh xóa 2 view dưới đây sẽ bị lỗi.

1
DROP VIEW employeeOffices, eOffices;

Lỗi thu được đó là:

1
Error Code: 1051. Unknown table 'classicmodels.eoffices'

Nhưng nếu ta thêm từ khóa IF EXISTS thì chuyện gì xảy ra?

1
DROP VIEW IF EXISTS employeeOffices, eOffices;

Kết quả thu được:

1
1 warning(s): 1051 Unknown table 'classicmodels.eoffices'

Như vậy câu lệnh vẫn chạy thành công, chỉ là xuất hiện một cảnh báo lỗi.

Giả sử ta tạo thêm một view nữa dựa trên hai bảng sau:

product productlines png

1
2
3
4
5
6
7
CREATE VIEW productCatalogs AS
    SELECT
        productLine, productName, msrp
    FROM
        products
            INNER JOIN
        productLines USING (productLine);

Bây giờ chạy lênh Drop View để xóa hai views: productCatalogs và employeeOffices quá đơn giản.

1
DROP VIEW employeeOffices, productCatalogs;

Kết quả trả về thành công!

Như vậy mình đã hướng dẫn xong cách sử dụng lệnh Drop View trong MySQL để xóa các view. Chúc bạn thực hiện thành công!

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
Lệnh Drop View trong MySQL, oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master