Je zou kunnen gebruiken CREATE TEMPORARY TABLE temp_table LIKE regular_table
, maar dat maakt alle de indexen, dus wanneer u INSERT INTO temp_table SELECT * FROM regular_table
doet , zullen de indexen opnieuw worden opgebouwd - wat lang kan duren.
Of u kunt de tabel maken en daarna de index toevoegen:
CREATE TEMPORARY TABLE temp_table
ALTER TABLE temp_table ADD FULLTEXT INDEX (foo,bar,baz)
INSERT INTO temp_table SELECT * FROM regular_table
maar de index zal, opnieuw, bij elke invoeging worden bijgewerkt.
Waarschijnlijk de meest efficiënte manier zou zijn om de tijdelijke tabel te maken, alles in te voegen en daarna de index op te bouwen:
CREATE TEMPORARY TABLE temp_table
ALTER TABLE temp_table ADD FULLTEXT INDEX (foo,bar,baz)
ALTER TABLE temp_table DISABLE KEYS
INSERT INTO temp_table SELECT * FROM regular_table
ALTER TABLE temp_table ENABLE KEYS
Nogmaals, je zult moeten wachten tot de index is opgebouwd, behalve dat het in één stuk zal gebeuren, met de laatste ALTER-instructie.