sql >> Database >  >> RDS >> Mysql

MySQL DROP-INDEX

Soms moet u de index in MySQL verwijderen als ze niet presteren zoals verwacht. Hier leest u hoe u de index in MySQL kunt laten vallen met behulp van de MySQL DROP INDEX-query.

Hoe de index in MySQL te laten vallen

Hier zijn de stappen om DROP INDEX in MySQL te laten vallen. We zullen de MySQL DROP INDEX-query gebruiken om de bestaande index uit een tabel te verwijderen.

Hier is de syntaxis van het MySQL DROP INDEX-commando

DROP INDEX index_name ON table_name
[algorithm_option | lock_option];

Vervang in de bovenstaande query index_name met naam van index, en table_name met de naam van uw databasetabel.

Bonus lezen:MySQL DROP BUITENLANDSE SLEUTEL

U kunt ook 2 optionele argumenten opgeven – algorithm_option en lock_option.

algorithm_option kan een van de drie waarden hebben:standaard, inplace, copy. Afhankelijk van je argument, zal MySQL verschillende algoritmen gebruiken om de index te laten vallen.

De syntaxis is

ALGORITHM [=] {DEFAULT|INPLACE|COPY}
  • standaard:dit heeft hetzelfde effect als het niet gebruiken van algorithm_option argument
  • copy – De tabel waar u de index moet verwijderen, wordt gekopieerd en de index wordt verwijderd uit de kopieertabel. Gedurende deze tijd zijn gelijktijdige bewerkingen zoals INSERT en UPDATE niet toegestaan.
  • inplace – In dit geval wordt de tabel opnieuw opgebouwd zonder index. Hoewel deze optie gelijktijdige bewerkingen toestaat, plaatst het een metadatavergrendeling tijdens de uitvoering.

Afhankelijk van lock_option MySQL vergrendelt wel/niet de lees-/schrijftoegang tot uw tabellen terwijl de index wordt verwijderd. lock_option heeft de volgende syntaxis

LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}

Er zijn 4 waarden nodig:

  • standaard - het staat maximale gelijktijdigheid toe voor uw keuze van algoritme. het staat zowel gelijktijdige lees- als schrijfbewerkingen toe, indien ondersteund. Als dat niet het geval is, staat het alleen gelijktijdige leesbewerkingen toe. Als dat ook niet wordt ondersteund, dwingt het exclusieve toegang af.
  • geen - indien ondersteund, kunt u gelijktijdig lezen en schrijven hebben. Anders geeft MySQL een foutmelding.
  • gedeeld – als de gedeelde optie wordt ondersteund, kunt u gelijktijdige leesbewerkingen hebben, maar geen gelijktijdige schrijfbewerkingen.
  • exclusief – deze optie dwingt exclusieve toegang af

Bonus lezen:MySQL DROP DATABASE

MySQL DROP INDEX voorbeeld

Stel dat u de volgende tabel met index heeft.

mysql> create table orders(order_id int primary key,
     order_date date,
     product varchar(255),
     sale int,
     index name(product)
     );

Hier is de SQL-query om de bestaande index naam te verwijderen van tafel bestellingen .

mysql> DROP INDEX name ON orders;

Bonus lezen:MySQL DROP COLUMN

MySQL DROP PRIMARY KEY Index

Hier is de syntaxis om de primaire sleutelindex op tafelorders te laten vallen.

mysql> DROP INDEX `PRIMARY` ON orders;

Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te controleren. Probeer het vandaag nog!

  1. Hoe PL/SQL SYS_REFCURSOR in Oracle Database aan te maken?

  2. SQL Pivot - Weet hoe u rijen naar kolommen converteert

  3. SQL NOT-operator voor beginners

  4. SQL-query voor voortschrijdend gemiddelde van 7 dagen in SQL Server