Récupère la place perdue dans une BDD MySQL

  Information

En supprimant des données dans une table MySQL on se retrouve avec de la place perdue.

Dans phpMyAdmin, la liste des tables contient la colonne "Perte" qui indique la taille perdue. Ce script permet donc d'optimiser toutes les tables d'une base de données et de gagner un peu de place.

  Voir en MySQLi un code identique : Récupère en MySQLi la place perdue dans une BDD SQL

A savoir

Ces fonctions sont utilisées dans ce code source:
mysql_close()   mysql_connect()   mysql_error()   mysql_fetch_assoc()   mysql_query()   mysql_select_db()   

Ces extensions étaient obsolètes en PHP 5.5.0, et ont été supprimées en PHP 7.0.0. À la place, vous pouvez utiliser l'extension MySQLi ou l'extension PDO_MySQL. Voir aussi MySQL : choisir une API du guide et ces entrées de la FAQ pour plus d'informations. Alternatives à cette fonction : mysqli_connect() et PDO::__construct()

  code source classé dans  MySQL

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
 21    
 22    
 23    
 24    
 25    
 26    
 27    
 28    
 29    
 30    
 31    
 32    
 33    
 34    
 35    
 36    
 37    
 38    
 39    
 40    
 41    
 42    
 43    
 44    
 45    
 46    
 47    
 48    
 49    
 50    
 51    
 52    
 53    
                               
<?php
/*---------------------------------------------------------------*/
/*
    Titre : Récupère la place perdue dans une BDD MySQL                                                                 
                                                                                                                          
    URL   : https://phpsources.net/code_s.php?id=720
    Auteur           : forty                                                                                              
    Website auteur   : http://www.toplien.fr/                                                                             
    Date édition     : 04 Nov 2008                                                                                        
    Date mise à jour : 14 Sept 2019                                                                                      
    Rapport de la maj:                                                                                                    
    - fonctionnement du code vérifié                                                                                    
*/
/*---------------------------------------------------------------*/

    $sql_serveur "à renseigner"// Serveur mySQL 
    $sql_base "à renseigner"// Base de données mySQL 
    $sql_login "à renseigner"// Login de connection a mySQL 
    $sql_password "à renseigner"// Mot de passe pour mySQL

    $lk = @mysql_connect($sql_serveur$sql_login$sql_password) or die(
mysql_error());
    @mysql_select_db($sql_base$lk) or die(mysql_error());
    ?> 
    <html>
    <head>
    <title>Récupère la place perdu dans une base de données MySQL</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <?php
    //on prépare la requête
    $sql "OPTIMIZE TABLE ";
    //on recherche toutes les données des tables
    $req mysql_query('SHOW TABLE STATUS'$lk);
    while($data mysql_fetch_assoc($req)) {
        //on regarde seulement les tables qui affichent des pertes
        if($data['Data_free'] > 0) {
            //et on l'inclut si elle comporte des pertes
            $sql .= '`'.$data['Name'].'`, ';
            echo $data['Name'] . "<br>\n";
        }
    }
    //on enlève le ', ' de trop
    $sql substr($sql, (strlen($sql)-2));
    //et on optimise
    mysql_query($sql$lk);
    mysql_close($lk);
    ?>
    </body>
    </html>

          Fonctions du code - Doc officielle PHP

   php.net   Description Versions PHP OUTIL
   die Alias de la fonction exit() PHP 4, PHP 5, PHP 7
   echo Affiche une chaîne de caractères PHP 4, PHP 5, PHP 7
   mysql_close Ferme la connexion MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_connect Ouvre une connexion à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_error Retourne le texte associé avec l'erreur générée - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_fetch_assoc Lit une ligne de résultat MySQL dans un tableau associatif - (PHP 4 >= 4.0.3, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_query Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   mysql_select_db Sélectionne une base de données MySQL - (PHP 4, PHP 5, PECL mysql:1.0)   !  OBSOLÈTE en PHP 5.5.0, et ont été supprimées en PHP 7.0.0
   strlen Calcule la taille d'une chaîne PHP 4, PHP 5, PHP 7
   substr Retourne un segment de chaîne PHP 4, PHP 5, PHP 7

   Dites merci aux auteurs pour leurs travail, ça ne coûte rien et ça fait toujours plaisir wink

     Codes qui pourraient vous intéresser

Récupère en MySQLi la place perdue dans une BDD SQL

Compatibilité : PHP 5, PHP 7

Optimise toutes les tables d'une base de données et gagne de la place en récupérant la place perdue dans une base de données SQL.

Récupérer le dernier ID inséré dans une table

Compatibilité : PHP 4, PHP 5

Retourne l'Identifiant généré par la dernière requête INSERT de MySQL. Code compatible php 4 et php 5

Déplacer un fichier dans un autre répertoire

Compatibilité : PHP 5, PHP 7

Déplace un fichier avec la source et la cible en paramètre. La fonction renvoie 3 états d'erreurs en cas d'échec.

Suivez PHP Sources sur Twitter !

PHP débutant et initié 50 Tutoriel

Présentation de PHP

    Derniers scripts PHP / MySQL

PrestaShop 1.7.6.1

logo PrestaShop
Langue langue fr
Date  aujourd'hui
Taille 59 Mo
Catégorie Ecommerce

EspoCRM 5.7.5

logo EspoCRM
Langue langue us
Date  hier
Taille 34 Mo
Catégorie CRM

PhpMyFAQ 2.9.13

logo phpMyFAQ
Langue langue fr
Date 22 Oct
Taille 8 Mo
Catégorie Divers

CSZ-CMS 1.2.3

logo CSZ-CMS
Langue langue fr
Date 22 Oct
Taille 6 Mo
Catégorie CMS
+ Listing des derniers scripts complets
avatar

Forty

  04 Nov 2008

  SOURCE   Télécharger

Information sur les mises à jour

Dernière mise à jour :

    14 Sept 2019
    fonctionnement du code vérifié

7 386 Vues
Compatibilité
PHP 5-

avatar