L'instruction INSERT est utilisée pour insérer de nouveaux enregistrements dans une table de base de données. L'insertion des données est terminée en spécifiant les noms et les valeurs des colonnes.
$sql = "INSERT INTO nom_table (colonne1, colonne2, ...) VALEURS (valeur1, valeur2, ...)";
L’utilisation de requêtes paramétrées peut empêcher efficacement les attaques par injection SQL. Évitez de fusionner les entrées de l'utilisateur directement dans la chaîne de requête en liant les paramètres à des espaces réservés.
$stmt = $conn->prepare("INSERT INTO nom_table (colonne1, colonne2) VALEURS (?, ?)");
$stmt->bind_param("ss", $value1, $value2);Utilisez l'instruction INSERT...SELECT pour insérer en bloc des données d'une autre table.
$sql = "INSERT INTO table1 (colonne1, colonne2) SELECT colonne1, colonne2 FROM table2";
L'ID généré automatiquement peut être obtenu via la fonction LAST_INSERT_ID() ou $conn->insert_id pour faciliter les opérations ultérieures.
$id = $conn->insert_id ;
Les transactions garantissent qu'un ensemble d'opérations de base de données réussissent toutes ou échouent toutes à être annulées. Les fonctions couramment utilisées incluent begin_transaction(), commit() et rollback().
Utilisez la fonction mysqli_error() pour capturer et gérer les erreurs qui se produisent lors des opérations de base de données.
si ($stmt->execute()) {
//Exécution réussie} else {
echo "Erreur : " . $stmt->erreur ;
}