Tecnología

Inicio

Cómo: PHP para mover datos de una tabla de MySQL a otro

En el desarrollo de aplicaciones PHP, puede que tenga que mover datos de una tabla de MySQL a otro, como cuando se desea instalar una actualización que requiere campos de datos adicionales. Para ello, puede utilizar los métodos incorporados en la extensión PHP MySQLi para consultar los datos de la tabla de origen y la inserta en la tabla de destino. Crear un solo estado preparado para insertar los datos en la tabla de destino, se unen a los resultados de la consulta que extrae datos forman la tabla de origen a la declaración preparada y ejecutar la instrucción preparada para cada registro de la tabla de origen.

Instrucciones

1 Utilice un editor HTML o el Bloc de notas para crear un nuevo archivo de programa PHP. Iniciar el programa mediante la apertura de una conexión con el servidor de base de datos y la selección de la base de datos que contiene las tablas para las que desea mover los datos. Verificar el estado de error después de conectar para asegurarse de que se ha realizado correctamente. Tipo:

<? Php

$ Db = new mysqli ( 'localhost', 'nombre de usuario', 'password', 'base de datos');

si (mysqli_connect_errno ()) die (mysqli_connect_error ());

2 Inicializar una matriz para contener los datos de la tabla de origen que desea pasar a la tabla de destino. Crear una cadena de consulta que va a utilizar para extraer los datos de la tabla de origen. Tipo:

$ Fila = array ();

$ Tabla1 = "SELECT ID, nombre, correo electrónico, teléfono de accesos ORDEN EN id";

3 Crear una nueva declaración preparada con el comando MySQL para insertar datos en la tabla de destino. Utilizar signos de interrogación para indicar los valores que se insertan y se unen a los miembros de la matriz que creó mediante el método "bind_param". Tipo:

$ Stmt = $ db-> prepare ( "INSERT INTO newusers (id, nombre, correo electrónico, teléfono) VALUES (,,,)????";

$ Stmt-> bind_param ( 'ISSS', $ fila [ 'id'], $ fila [ 'nombre'], $ fila [ 'email'], $ fila [ 'teléfono']);

4 Emitir la consulta para seleccionar datos de la tabla de origen. Almacenar los resultados en la matriz asociativa que declaró anteriormente y crear un bucle que recupera cada registro hasta el final de la tabla. Tipo:

$ Resultado = $ db-> query ($ tabla 1);

while ($ fila = $ result-> FETCH_ASSOC ()) {

5 Ejecutar la instrucción preparada para insertar los datos de la tabla de origen de la tabla de destino. Asegúrese de que la inserción tuvo éxito mediante la evaluación de la propiedad "affected_rows" de la declaración preparada. Cierre la declaración preparada antes de comenzar una nueva. Tipo:

$stmt->execute();

if ($ stmt-> affected_rows! = 1) {

echo "No hay datos insertados por el usuario con id = $ fila [ 'id']";

}

$ Stmt-> close ();

}

6 Cierre la base de datos cuando se completa el procedimiento. Guarde el programa PHP. Ejecutarlo correctamente para asegurarse de que mueve datos de una tabla a otra. Tipo:

$ Db-> close ();

?>