Foros del Web » Programando para Internet » PHP »

OPTIMIZE TABLE al borrar archivo

Estas en el tema de OPTIMIZE TABLE al borrar archivo en el foro de PHP en Foros del Web. Hola a todos: Como ven he jodido bastante hoy ... jijiji les pido mis disculpas.. es que tengo solo hoy libre para hacer esto con ...
  #1 (permalink)  
Antiguo 05/01/2007, 16:10
Avatar de BLAH !!  
Fecha de Ingreso: septiembre-2003
Ubicación: Región Metropolitana, Santiago, Chile
Mensajes: 706
Antigüedad: 20 años, 7 meses
Puntos: 16
De acuerdo OPTIMIZE TABLE al borrar archivo

Hola a todos:

Como ven he jodido bastante hoy ... jijiji les pido mis disculpas.. es que tengo solo hoy libre para hacer esto con un poco de su ayuda

tengo un php llamado borrar_archivo.php ... (que original) xD, en el cual (lógico) borro un un row de mi bd. Lo que quiero es que cuando este se borre automaticamente mi bd se OPTIMICE ...

... OPTIMIZE TABLE debe ser usado si ha borrado una gran parte de una tabla o si ha hecho muchos cambios a una tabla con filas de longitud variable (tablas que tienen columnas VARCHAR, BLOB o TEXT). Los registros borrados son mantenidos en una lista enlazada y las subsecuentes operaciones INSERT reusan las posiciones de los registros anteriores. Puede utilizar OPTIMIZE TABLE para reclamar ese espacio inutilizado y para desgragmentar el archivo con los datos...
Gracias a : http://www.yukei.net/2005/12/optimiz...base-de-datos/

... Las tablas con columnas BLOB o TEXT están sujetas a altos grados de fragmentación. Si se efectúan muchos borrados y actualizaciones, es recomendable ejecutar OPTIMIZE TABLE periódicamente para reducir la fragmentación...
Gracias a : http://www.stan.com.mx/index.php?id=124


Aca les dejo el código que me borra por lo menos .. ahora que me optimice la tabla no se... :

Código PHP:
<?
require("dbconnect.inc.php");

 
$qry "DELETE FROM archivos where id=$id";
 
$res mysql_query($qry);
 
$del "descargar_archivo.php?id=$id";
//esto lo agregue
 
$del mysql_db_query($base,$del,$SQLid); 
//hasta aca

function delfile($del){ 
   foreach(
glob($del) as $fn) { 
       
unlink($fn); 
   } 
}

//esto también lo agregue
while ($opt=mysql_fetch_array($del)) { 
    
$optimizar "OPTIMIZE TABLE".$opt[0];
    
mysql_db_query($base,$optimizar,$SQLid); 

//hasta aca

echo "<br><br>";

...
?>
Les cuento que en dbconnect.inc.php tengo esto (por la conexión)

<?
$servidor="localhost";
$usuario="my_usuario";
$password="my_pass";
$base="nombre_bd";
$SQLid = mysql_connect($servidor,$usuario,$password);
mysql_select_db($base,$SQLid);
?>

No será más fácil crear otro $qry ??? mmmm...

Muchas Gracias.-
Pablo Araya.-
__________________
Adios ...!!!!

Última edición por BLAH !!; 05/01/2007 a las 16:24
  #2 (permalink)  
Antiguo 05/01/2007, 16:18
Avatar de BLAH !!  
Fecha de Ingreso: septiembre-2003
Ubicación: Región Metropolitana, Santiago, Chile
Mensajes: 706
Antigüedad: 20 años, 7 meses
Puntos: 16
Re: OPTIMIZE TABLE al borrar archivo

PHP Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/.../.../.../...//borrar_archivo.php on line 29

Linea 29 :

while ($opt=mysql_fetch_array($del)) {
__________________
Adios ...!!!!

Última edición por BLAH !!; 05/01/2007 a las 16:25
  #3 (permalink)  
Antiguo 05/01/2007, 18:19
Avatar de BLAH !!  
Fecha de Ingreso: septiembre-2003
Ubicación: Región Metropolitana, Santiago, Chile
Mensajes: 706
Antigüedad: 20 años, 7 meses
Puntos: 16
Re: OPTIMIZE TABLE al borrar archivo

<?

require("dbconnect.inc.php");

$qry = "OPTIMIZE TABLE `archivos`";
$res = mysql_query($qry);

?>

era mas facil
__________________
Adios ...!!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:47.