Home  >  Article  >  Database  >  How do MySQL stored generated columns differ from MySQL virtual generated columns?

How do MySQL stored generated columns differ from MySQL virtual generated columns?

王林
王林forward
2023-08-30 23:45:11948browse

MySQL 存储的生成列与 MySQL 虚拟生成列有何不同?

The following are some basic differences between MySQL stored generated columns and MySQL virtual generated columns:

In terms of disk space

If From a disk space perspective, virtual generated columns do not take up any disk space. On the other hand, storing generated columns takes up disk space.

In terms of operations

If you look at it from an operational perspective, the virtual generated column is an in-place operation, which means that all data does not need to be re-copied when the table definition is changed. On the other hand, storing a generated column is a copy operation and its cost is the same as adding a new column to the table.

In terms of calculations

In virtual generated columns, values ​​are calculated dynamically during read operations and BEFORE triggers. On the other hand, in stored generated columns, the values ​​are updated in every INSERT and UPDATE statement.

When to use

We should consider using virtual columns in data where changes occur quite frequently. The cost of a virtual column comes from constantly reading the table and the server having to calculate the value of the column each time. On the other hand, we should consider using stored columns in situations where the data does not change significantly or at all after creation.

The above is the detailed content of How do MySQL stored generated columns differ from MySQL virtual generated columns?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete