Rumah  >  Artikel  >  pangkalan data  >  Bagaimanakah lajur terjana yang disimpan MySQL berbeza daripada lajur terjana maya MySQL?

Bagaimanakah lajur terjana yang disimpan MySQL berbeza daripada lajur terjana maya MySQL?

王林
王林ke hadapan
2023-08-30 23:45:11946semak imbas

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

Berikut adalah beberapa perbezaan asas antara lajur janaan disimpan MySQL dan lajur jana maya MySQL:

Dari segi ruang cakera

Jika anda melihatnya dari perspektif ruang cakera, lajur terjana maya tidak akan mengambil sebarang ruang cakera. Sebaliknya, menyimpan lajur yang dijana mengambil ruang cakera.

Dari segi operasi

Jika anda melihatnya dari perspektif operasi, lajur terjana maya ialah operasi di tempat, yang bermaksud bahawa semua data tidak perlu disalin semula apabila definisi jadual diubah. Sebaliknya, menyimpan lajur yang dijana ialah operasi salinan dan kosnya adalah sama seperti menambah lajur baharu pada jadual.

Dari segi pengiraan

Dalam lajur terjana maya, nilai dikira secara dinamik semasa operasi baca dan SEBELUM pencetus. Sebaliknya, dalam lajur yang dijana yang disimpan, nilai dikemas kini dalam setiap pernyataan INSERT dan UPDATE.

Bila hendak menggunakan

Kita harus mempertimbangkan untuk menggunakan lajur maya dalam data di mana perubahan berlaku agak banyak. Kos lajur maya datang daripada sentiasa membaca jadual dan pelayan perlu mengira nilai lajur setiap kali. Sebaliknya, kita harus mempertimbangkan untuk menggunakan lajur yang disimpan dalam situasi di mana data tidak berubah dengan ketara atau sama sekali selepas penciptaan.

Atas ialah kandungan terperinci Bagaimanakah lajur terjana yang disimpan MySQL berbeza daripada lajur terjana maya MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam