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

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

2012/2/7
`` `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 eliminar la línea en un archivo plano PHP
Cómo seleccionar múltiple en MySQL
Cómo escribir números octales en PHP
Cómo permitir PHP para escribir en el archivo
Cómo habilitar SSL y PHP
Cómo leer archivos de MS Office en PHP
Información sobre Migración a Oracle MySQL
Cómo analizar PHP en HTML
Conocimiento de la computadora © http://www.ordenador.online