Sviluppa php, Marco Pilolli programmatore php

Information

This article was written on 14 Nov 2014, and is filled under Blog, Phpinfo.

Current post is tagged

, , , , ,

ORDER BY ignored as there is a user-defined clustered index in the table

Ogni tanto faccio manutenzione alle tabelle di MySql e oggi cercavo di fare una cosa che con il motore MyIsam, cioè fare un ALTER TABLE con ORDER BY a qualche campo.

Questa operazione consente alla tabella di riordinarsi per migliorare le performance.

Ma oggi al comando “ALTER TABLE soci ORDER BY cognome, nome” ho ricevuto il seguente errore :”ORDER BY ignored as there is a user-defined clustered index in the table ‘soci'”

Cercando in internet ho trovato la seguente spiegazione:

ORDER BY does not make sense for InnoDB tables because InnoDB always orders table rows according to the clustered index.

In pratica non serve fare un ALTER TABLE con ORDER BY perche le tabelle InnoDB, e la mia è una tabella InnoDB, sono sempre ordinate secondo l’indice.

Lascia un commento