Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/08/2009, 23:02
th3r0rn
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 5 meses
Puntos: 2
mover datos a otra tabla.

Hola que tal, Miren mi problema es el siguiente, tengo 1 tabla que es la siguiente:
Tabla estables:
Código:
+--------+--------------+------+-----+---------+----------------+
| Field  | Type         | Null | Key | Default | Extra          |
+--------+--------------+------+-----+---------+----------------+
| cc_id  | int(11)      | NO   | PRI | NULL    | auto_increment | 
| ccv    | int(11)      | YES  |     | NULL    |                | 
| ccexp  | varchar(12)  | YES  |     | NULL    |                | 
| ccn    | varchar(100) | YES  |     | NULL    |                | 
| cctype | varchar(100) | YES  |     | NULL    |                | 
| ssid   | varchar(100) | YES  |     | NULL    |                | 
+--------+--------------+------+-----+---------+----------------+
6 rows in set (0.01 sec)
En dicha tabla tengo "muchos datos", alguno de esos datos que no pasaron cierta prueba los tengo que mover a otra tabla Exactamente igual a esta, es decir:

Tabla no_aprobados
Código:
+--------+--------------+------+-----+---------+----------------+
| Field  | Type         | Null | Key | Default | Extra          |
+--------+--------------+------+-----+---------+----------------+
| cc_id  | int(100)     | NO   | PRI | NULL    | auto_increment | 
| ccv    | int(11)      | YES  |     | NULL    |                | 
| ccexp  | varchar(12)  | YES  |     | NULL    |                | 
| ccn    | varchar(100) | YES  |     | NULL    |                | 
| cctype | varchar(100) | YES  |     | NULL    |                | 
| ssid   | varchar(100) | YES  |     | NULL    |                | 
+--------+--------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)
Como se ve es exactamente la misma estructura y con los mismos campos, ahora como lo que quiero es que desde el panel de administrador q esta en PHP el administrador mueva cierto dato a la otra tabla que se llama no aprobados en este caso moveria todos los datos de un trgistro, es decir: ccv, ccexp ccn, etc...

Mi pregunta es: ¿ Como puedo mover dicho registro sin la necesidad de hacer tantas consultas, es decir podria seleccionar todos los campos de un registro de la manera siguiente:
select * from stables where ccn ="blabla";
Esto me seleccionaria todos los registtos cuyo valor de ccn sea igual a "blabla" y dicho regidtro lo quiero eliminar de esta tabla y moverlo a la tabla no aprobado.

Lo que se me ocurre es mediante un textbox poner el valor del ccn del registo a mover y mandarlo a una pagina que lo procece que entonces seria:
Código PHP:
<?PHP
$_POST
[ccn]=$ccn  #obtengo dato ccn
mysql_query("select * from stables where ccn ='$ccn'") or die ("no seleccionado"); #selecciono todos los registros cuyo dato sea igual al que e obtenido
mysql_query("insert into no_aprobados"(ccv,ccexp,ccn,cctype,ssidvalues #inserto todos los datos seleccionados en la tabla NO APROBADOS
('$_POST[cc_id]',
  
'$_POST[ccv]',
  
'$_POST[ccexp]'
  '$_POST[cctype]'
);
mysql_query("DELETE FROM aprobados where cn =\"$ccn\""); # ELIMINO LOS DATOS QUE COPIE A LA NUEVA TABLA.
?>
Mi duda es, existe alguna otra forma de simplificar esto? alguna funccion de mysql qye mediante cierto dato a consultar de un registro mueva todos esos datos a otra tabla tal y como lo quiero hacer?.
Saludos