“Conocimiento Programación>Programación PHP /MySQL

¿Cómo se inserta 10000 filas a MySQL en PHP?

2011/9/24
`` `PHP

// Parámetros de conexión de base de datos

$ servername ="localhost";

$ username ="your_username";

$ contraseña ="your_password";

$ dbname ="your_database";

// Crear conexión

$ Conn =new MySQLI ($ ServerName, $ UserName, $ Password, $ dbname);

// verificar la conexión

if ($ conn-> Connect_error) {

die ("Conexión fallida:". $ conn-> Connect_error);

}

// Preparar la declaración SQL

$ sql ="inserte en su_table (columna1, columna2, ...) valores (?,?, ...)";

$ stmt =$ conn-> preparar ($ sql);

// Verifique si la preparación de la declaración fue exitosa

if ($ stmt ===false) {

die ("Error de preparación de la declaración:". $ conn-> error);

}

// recorrer filas

para ($ i =1; $ i <=10000; $ i ++) {

// Generar datos para cada fila

$ column1data ="value1_". $ i;

$ column2data ="value2_". $ i;

// ...

// vincule datos a parámetros

$ stmt-> bind_param ("SSS ...", $ column1data, $ column2data, ...); // Entra los tipos de datos en consecuencia (por ejemplo, "SSS" para tres cadenas)

// Ejecutar la declaración

if (! $ stmt-> ejecute ()) {

die ("Error en ejecución de ejecución:". $ stmt-> error);

}

}

// Cerrar la declaración y la conexión

$ STMT-> Close ();

$ Conn-> Close ();

?>

`` `` ``

Explicación:

1. Conexión de la base de datos: Establezca una conexión con su base de datos MySQL utilizando la biblioteca 'MySQLI`.

2. Prepare la declaración: Prepare la instrucción SQL Insertar usando `mysqli ::prepare ()`. Esto ayuda a prevenir las vulnerabilidades de inyección de SQL.

3. Parámetros de enlace: Ate los datos para cada columna a la declaración preparada usando `mysqli_stmt ::bind_param ()`. Especifique los tipos de datos de los parámetros (por ejemplo, `S` para String,` I` para Integer).

4. bucle y ejecutar: Iterar a través de 10000 filas, generar datos para cada fila y ejecutar la declaración preparada con `mysqli_stmt ::ejecutute ()`.

5. Manejo de errores: Incluya el manejo de errores para atrapar cualquier problema durante la preparación o ejecución de la declaración.

6. Cerrar conexiones: Cierre la declaración preparada y la conexión de la base de datos después de la finalización.

Notas importantes:

* Generación de datos: Reemplace los marcadores de posición para `column1data`,` column2data`, etc., con la lógica real de generación de datos en función de sus necesidades.

* Optimización de rendimiento: Considere el uso de transacciones para insertos a granel para mejorar la eficiencia, especialmente para conjuntos de datos grandes. Puede envolver el bucle en un bloque `Begen Transaction` y` Commit`.

* Mapeo de tipo de datos: Asegúrese de que los tipos de datos utilizados en `bind_param ()` coincidan con los tipos de datos de columna en su tabla MySQL.

* Error de registro: Implemente el registro de errores sólidos para rastrear cualquier problema durante el proceso de inserción.

Este código proporciona un marco básico. Adapte la generación de datos y el manejo de errores para adaptarse a su caso de uso específico. Recuerde probar y monitorear el rendimiento de su proceso de inserción, especialmente cuando se trata de grandes conjuntos de datos.

Programación PHP /MySQL
Cómo acceder a las variables de Dump Var con PHP
Múltiples inserta en MySQL
¿Cómo se crea una consulta usando el asistente?
Cómo insertar varios registros a la vez en MySQL
Cómo reemplazar Citas sobre MySQL en PHP
Tutorial de Nivel Row Locks en MySQL
Cómo construir un sitio Web PHP
Cómo actualizar una declaración con una subconsulta
Conocimiento de la computadora © http://www.ordenador.online