Home Database Mysql Tutorial Introduction to mysql views and why they are used and their rules and limitations

Introduction to mysql views and why they are used and their rules and limitations

May 17, 2017 pm 04:35 PM

View introduction

Requires MySQL 5 MySQL 5 adds support for views. Therefore, the contents of this chapter apply to MySQL 5 and later versions.

Views are virtual tables. Unlike tables that contain data, views only contain queries that dynamically retrieve the data when used.

The best way to understand the view is to look at an example:

Input:

select cust_name ,cust_contact from customers,orders,orderitems where customers.cust_id = orders.cust_id and orderutems.order_num = order.orders.order_num and prod_id = 'TNT2';
Copy after login

This query is used to retrieve customers who have ordered a specific product. Anyone who needs this data must understand the structure of the related tables and know how to create queries and join the tables. In order to retrieve the same data for other products (or products), the final WHERE clause must be modified. Now, if you can wrap the entire query into a virtual table called productcustomers, you can easily retrieve the same data as follows:

Enter:

select cust_name ,cust_contact from productcustomers where prod_id = 'TNT2';
Copy after login

This That's what the view is for. productcustomers is a view, and as a view, it does not contain any columns or data that should be in the table, it contains a SQL query (the same query used above to join the tables correctly).


Why use views

We have already seen an example of the application of views. Below are some common applications of views.

1. Reuse SQL statements.

2. Simplify complex SQL operations. After you write a query, you can easily reuse it without knowing its underlying query details.

3. Use parts of the table instead of the entire table.

4. Protect data. A user can be granted access to a specific portion of a table rather than the entire table.

5. Change data format and representation. Views can return data that is represented and formatted differently than the underlying table.

After views are created, they can be utilized in essentially the same way as tables. You can perform SELECT operations on views, filter and sort data, join views to other views or tables, and even add and update data (there are certain restrictions on adding and updating data. More on this later).

It is important to know that a view is simply a facility for viewing data stored elsewhere. Views themselves do not contain data, so the data they return is retrieved from other tables. When you add or change data in these tables, the view returns the changed data.

Performance Issues Because the view does not contain data, every time the view is used, any retrieval required for query execution must be processed. If you create complex views with multiple joins and filters or nested views, you may find that performance degrades significantly. Therefore, before deploying an application that uses a large number of views, you should test it.


Using Views

After understanding what views are (and the rules and constraints that govern them) , let’s take a look at the creation of views.

1. Views are created using the CREATE VIEW statement.

2. Use SHOW CREATE VIEW viewname; to view the statement that creates the view.

3. Use DROP to delete the view, the syntax is DROP VIEW viewname;.

4. When updating a view, you can use DROP first and then CREATE, or you can use CREATE ORREPLACE VIEW directly. If the view to be updated does not exist, the second update statement will create a view; if the view to be updated exists, the second update statement will replace the original view.

Rules and restrictions for views

The following are some of the most common rules and restrictions regarding the creation and use of views.

1. Like tables, views must be uniquely named (views cannot be given the same name as other views or tables).

2. There is no limit to the number of views that can be created.

3. In order to create a view, you must have sufficient access rights. These limits are usually granted by the database administrator.

4. Views can be nested, that is, you can construct a view using queries that retrieve data from other views.

5.ORDER BY can be used in a view, but if the SELECT to retrieve data from the view also contains ORDER BY, the ORDER BY in the view will be overwritten.

6. Views cannot be indexed and cannot have associated triggers or default values.

7. Views can be used together with tables. For example, write a SELECT statement that joins a table and a view.

The above is the detailed content of Introduction to mysql views and why they are used and their rules and limitations. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

MySQL: Simple Concepts for Easy Learning MySQL: Simple Concepts for Easy Learning Apr 10, 2025 am 09:29 AM

MySQL is an open source relational database management system. 1) Create database and tables: Use the CREATEDATABASE and CREATETABLE commands. 2) Basic operations: INSERT, UPDATE, DELETE and SELECT. 3) Advanced operations: JOIN, subquery and transaction processing. 4) Debugging skills: Check syntax, data type and permissions. 5) Optimization suggestions: Use indexes, avoid SELECT* and use transactions.

How to open phpmyadmin How to open phpmyadmin Apr 10, 2025 pm 10:51 PM

You can open phpMyAdmin through the following steps: 1. Log in to the website control panel; 2. Find and click the phpMyAdmin icon; 3. Enter MySQL credentials; 4. Click "Login".

MySQL: An Introduction to the World's Most Popular Database MySQL: An Introduction to the World's Most Popular Database Apr 12, 2025 am 12:18 AM

MySQL is an open source relational database management system, mainly used to store and retrieve data quickly and reliably. Its working principle includes client requests, query resolution, execution of queries and return results. Examples of usage include creating tables, inserting and querying data, and advanced features such as JOIN operations. Common errors involve SQL syntax, data types, and permissions, and optimization suggestions include the use of indexes, optimized queries, and partitioning of tables.

How to use single threaded redis How to use single threaded redis Apr 10, 2025 pm 07:12 PM

Redis uses a single threaded architecture to provide high performance, simplicity, and consistency. It utilizes I/O multiplexing, event loops, non-blocking I/O, and shared memory to improve concurrency, but with limitations of concurrency limitations, single point of failure, and unsuitable for write-intensive workloads.

Why Use MySQL? Benefits and Advantages Why Use MySQL? Benefits and Advantages Apr 12, 2025 am 12:17 AM

MySQL is chosen for its performance, reliability, ease of use, and community support. 1.MySQL provides efficient data storage and retrieval functions, supporting multiple data types and advanced query operations. 2. Adopt client-server architecture and multiple storage engines to support transaction and query optimization. 3. Easy to use, supports a variety of operating systems and programming languages. 4. Have strong community support and provide rich resources and solutions.

MySQL's Place: Databases and Programming MySQL's Place: Databases and Programming Apr 13, 2025 am 12:18 AM

MySQL's position in databases and programming is very important. It is an open source relational database management system that is widely used in various application scenarios. 1) MySQL provides efficient data storage, organization and retrieval functions, supporting Web, mobile and enterprise-level systems. 2) It uses a client-server architecture, supports multiple storage engines and index optimization. 3) Basic usages include creating tables and inserting data, and advanced usages involve multi-table JOINs and complex queries. 4) Frequently asked questions such as SQL syntax errors and performance issues can be debugged through the EXPLAIN command and slow query log. 5) Performance optimization methods include rational use of indexes, optimized query and use of caches. Best practices include using transactions and PreparedStatemen

MySQL and SQL: Essential Skills for Developers MySQL and SQL: Essential Skills for Developers Apr 10, 2025 am 09:30 AM

MySQL and SQL are essential skills for developers. 1.MySQL is an open source relational database management system, and SQL is the standard language used to manage and operate databases. 2.MySQL supports multiple storage engines through efficient data storage and retrieval functions, and SQL completes complex data operations through simple statements. 3. Examples of usage include basic queries and advanced queries, such as filtering and sorting by condition. 4. Common errors include syntax errors and performance issues, which can be optimized by checking SQL statements and using EXPLAIN commands. 5. Performance optimization techniques include using indexes, avoiding full table scanning, optimizing JOIN operations and improving code readability.

Monitor Redis Droplet with Redis Exporter Service Monitor Redis Droplet with Redis Exporter Service Apr 10, 2025 pm 01:36 PM

Effective monitoring of Redis databases is critical to maintaining optimal performance, identifying potential bottlenecks, and ensuring overall system reliability. Redis Exporter Service is a powerful utility designed to monitor Redis databases using Prometheus. This tutorial will guide you through the complete setup and configuration of Redis Exporter Service, ensuring you seamlessly build monitoring solutions. By studying this tutorial, you will achieve fully operational monitoring settings

See all articles