mysql虚拟字段

create table temp1(name varchar(50))

alter table temp1
add column name1 varchar(50) as (name) virtual,
add column name2 varchar(50) as (name) stored,
add column name3 varchar(50) as (name) ;

在MySQL 5.7中,支持两种Generated Column,即Virtual Generated Column和Stored Generated Column,前者只将Generated Column保存在数据字典中(表的元数据),并不会将这一列数据持久化到磁盘上;后者会将Generated Column持久化到磁盘上,而不是每次读取的时候计算所得。很明显,后者存放了可以通过已有数据计算而得的数据,需要更多的磁盘空间,与Virtual Column相比并没有优势,因此,MySQL 5.7中,不指定Generated Column的类型,默认是Virtual Column。

posted @ 2022-02-09 14:06  赵钱富贵  阅读(463)  评论(0编辑  收藏  举报