Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

จะเปลี่ยน Table Engine ใน MySQL ได้อย่างไร?


คุณสามารถเปลี่ยนกลไกจัดการตารางโดยใช้คำสั่ง alter ไวยากรณ์มีดังนี้ −

แก้ไขตาราง yourTableName ENGINE =yourEngineName;

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตารางด้วยเครื่องมือ MyISAM หลังจากนั้นคุณสามารถเปลี่ยนเครื่องยนต์อื่นได้ ต่อไปนี้เป็นแบบสอบถามเพื่อสร้างตาราง

mysql> สร้างตาราง ChangeEngineTableDemo−> ( −> MovieId int, −> MovieName varchar(100), −> IsPopular bool−> )ENGINE ='MyISAM'; Query OK, 0 แถวได้รับผลกระทบ (0.37 วินาที)

ดูการสืบค้นด้านบน เอ็นจิ้นตารางคือ MyISAM ตอนนี้คุณสามารถเปลี่ยนเป็นเอ็นจิ้นอื่นได้ ที่นี่เราจะเปลี่ยนประเภทเครื่องยนต์ InnoDB แบบสอบถามเพื่อเปลี่ยนประเภทเครื่องยนต์มีดังนี้ -

mysql> แก้ไขตาราง ChangeEngineTableDemo ENGINE =InnoDB ตกลง สืบค้น 0 แถว (2.21 วินาที) บันทึก:0 รายการซ้ำ:0 คำเตือน:0

หากต้องการตรวจสอบประเภทเครื่องยนต์ว่ามีการเปลี่ยนแปลงหรือไม่โดยใช้คำสั่ง show ต่อไปนี้คือคำถาม -

mysql> แสดงการสร้างตาราง ChangeEngineTableDemo;

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+-----------------------+---------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------+| ตาราง | สร้างตาราง |+------------------------------------------------------------ -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------+| ChangeEngineTableDemo | CREATE TABLE `changeenginetabledemo` (`MovieId` int (11) DEFAULT NULL, `MovieName` varchar (100) ค่าเริ่มต้น NULL,`IsPopular' tinyint(1) DEFAULT NULL) ENGINE =InnoDB DEFAULT CHARSET =utf8mb4 COLLATE =utf8mb4_0 | 900 ----------------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -+1 แถวในชุด (0.03 วินาที)